Changeset 324 for Version-0.8


Ignore:
Timestamp:
08/28/14 11:29:21 (10 years ago)
Author:
frank.jaeger
Message:

Beginn der Umstellung von Datenbank-Schema und Views.
Noch nicht ausgetestet.
Programme noch nicht umgestellt.

Location:
Version-0.8
Files:
2 deleted
11 edited

Legend:

Unmodified
Added
Removed
  • Version-0.8/import/alkis-functions.sql

    r314 r324  
    1212--             statt dessen verwenden der "import_id" um alte Relationen zu identifizieren und zu löschen. 
    1313 
     14-- 2014-08-27: Angleichung des Datenbank-Schema an die NorBIT-Version. 
     15--             Die Trigger-Function "delete_feature_kill()" arbeitet falsch, wenn "gml_id" als "character varying" angelegt ist. 
     16--             Das Format war bisher charachter(16). 
     17--             Zugriff auf die Spalte gml_id umgestellt von "=" auf "like" um den individuellen Timestamp zu ignorieren. 
    1418 
    1519-- Table/View/Sequence löschen, wenn vorhanden 
     
    379383-- "delete" und "replace" verarbeiten (OHNE Historie). Historische Objekte werden sofort gelöscht. 
    380384-- Geaendert 2014-02-03 auf Vorschlag M.B. Krs. Unna 
     385 
     386/* 
     387 
     388-- Diese Version arbeitet nur korrekt, wenn die Spalte gml_id im Format "character(16)" angelegt ist. 
     389 
    381390CREATE OR REPLACE FUNCTION delete_feature_kill() RETURNS TRIGGER AS $$ 
    382391DECLARE 
     
    417426$$ LANGUAGE plpgsql; 
    418427 
     428*/ 
     429 
     430-- 2014-08-27: Anpassung an vereinheitlichtes Datenbank-Schema. 
     431-- Wenn die Spalte gml_id im Format "character varying" (ohne LÀngenbegrenzung) angelegt wird, 
     432-- muss gezielt der ID-Teil vor dem Timestamp angesprochen werden. 
     433-- Zugriff auf die Spalte gml_id umgestellt von "=" auf "like". 
     434CREATE OR REPLACE FUNCTION delete_feature_kill() RETURNS TRIGGER AS $$ 
     435DECLARE 
     436        query TEXT; 
     437        begsql TEXT; 
     438        aktbeg TEXT; 
     439        gml_id TEXT; 
     440        query_bez TEXT; 
     441BEGIN 
     442        NEW.typename := lower(NEW.typename); -- Objektart = Tabellen-Name 
     443        NEW.context := lower(NEW.context);   -- Operation 'delete', 'replace' oder 'update' 
     444        gml_id      := substr(NEW.featureid, 1, 16); -- ID-Teil der gml_id, ggf. anhÀngender Timestamp abgeschnitten 
     445 
     446        IF NEW.context IS NULL THEN 
     447                NEW.context := 'delete'; -- default 
     448        END IF; 
     449 
     450        IF NEW.context='delete' THEN -- ersatzloses Löschen des Objektes 
     451 
     452          -- In der Objekt-Tabelle 
     453                EXECUTE 'DELETE FROM ' || NEW.typename || ' WHERE gml_id like ''' || gml_id || '%'''; 
     454  
     455         -- Beziehungen von und zu dem Objekt sind hinfaellig (zukÃŒnftig entfallend) 
     456                EXECUTE 'DELETE FROM alkis_beziehungen WHERE beziehung_von = ''' || gml_id || ''' OR beziehung_zu = ''' || gml_id || ''''; 
     457 
     458                --RAISE NOTICE 'Lösche gml_id % in % und Beziehungen', gml_id, NEW.typename; 
     459 
     460        ELSE -- Ersetzen eines Objektes (Replace). In der Objekt-Tabelle sind jetzt bereits 2 Objekte vorhanden (alt und neu). 
     461 
     462                -- beginnt-Wert des aktuellen Objektes ermitteln 
     463                begsql := 'SELECT max(beginnt) FROM ' || NEW.typename || ' WHERE gml_id like ''' || substr(NEW.replacedBy, 1, 16) || '%'' AND endet IS NULL'; 
     464                EXECUTE begsql INTO aktbeg; 
     465 
     466                -- Alte Objekte entfernen 
     467                EXECUTE 'DELETE FROM ' || NEW.typename || ' WHERE gml_id like ''' || gml_id || '%'' AND beginnt < ''' || aktbeg || ''''; 
     468 
     469                -- Beziehungen des alten Objektes entfernen, die aus frÃŒheren Importen stammen 
     470                EXECUTE 'DELETE FROM alkis_beziehungen WHERE beziehung_von like ''' || gml_id || '%'' AND import_id < (SELECT max(id) FROM import)'; 
     471 
     472        END IF; 
     473 
     474        NEW.ignored := false; 
     475        RETURN NEW; 
     476END; 
     477$$ LANGUAGE plpgsql; 
     478 
    419479 
    420480-- BeziehungssÀtze aufrÀumen 
  • Version-0.8/import/alkis_PostNAS_schema.sql

    r321 r324  
    1111-- (cd /pfad/zu/postnas; psql -f alkis_PostNAS_0.7_schema.sql) 
    1212 
    13 -- Systemvariable vorher setzen fÃŒr das Koordinatensystem, z.B. 
    14 -- EPSG=25832 
     13-- Variable fÃŒr das Koordinatensystem ÃŒbergeben mit "psql .. -v alkis_epsg=25832" 
    1514 
    1615 
    1716-- Stand 
    1817-- ----- 
    19  
    20 -- 2012-04-23 FJ  Diff zum GDAL-Patch #4555 angewendet: 
    21 --                Siehe Mail J.E.Fischer in PostNAS-Liste vom 12.03.2012 
    22 --                - Alle Objekte bekommen "endet"-Feld. 
    23 --                - "beginnt" wird in die Unique-Constraint einbezogen. 
    24 --                - Feld 'identifier'. 
    25 --                - "character varying" durch "varchar" ersetzt. 
    26 --                - Keine direkten Änderungen an 'geometry_columns' (wegen PostGIS 2) 
    27 --                - DELETE:  Feld endet = aktuelle Zeit 
    28 --                - REPLACE: Feld endet = beginnt des ersetzenden Objektes 
    29 --                - "delete_feature()" ist nun ein Trigger 
    30  
    31 -- 2012-04-24 FJ  Datei alkis-funktions aus Diff zum GDAL-Patch #4555 hier integriert 
    32 --                Umschaltung mit/ohne Historie ÃŒber VerknÃŒpfung Trigger -> Function 
    33 --                Typ 'GEOMETRY' bei Tabellen: AX_WegPfadSteig, AX_UntergeordnetesGewaesser 
    34  
    35 -- 2012-10-31 FJ  Trigger fuer NAS-Replace-Saetze repariert: 
    36 --                siehe: FUNCTION delete_feature_kill() 
    37 --                ax_historischesflurstueck.buchungsart ist Text nicht integer. 
    38  
    39 -- 2012-10-31 AE  Tabellen löschen wurde auskommetiert, DB wird leer angelegt SELECT alkis_drop(); 
    40  
    41 -- ** zwischenzeitliche Änderungen: siehe Kommentare im SVN 
    42  
    43 -- 2013-01-15 FJ  Kommentare zu den letztlich hinzugekommenen Tabellen. 
    44 --                DarÃŒber können Tabellen aus diesem Script unterschieden werden  
    45 --                von Tabellen, die PostNAS selbst generiert hat. 
    46  
    47 -- 2013-04-22 FJ  Tabelle ax_wirtschaftlicheeinheit, Kommentare ergÀnzt, 
    48 --                Felad "ax_historischesflurstueck.buchungsart" varchar statt integer 
    4918 
    5019-- 2013-07-10 FJ  Erweiterung alkis_beziehungen nach Vorschlag Marvin Brandt (Kreis Unna) 
     
    5423-- 2014-01-24 FJ  Feld "ax_datenerhebung_punktort" in "Punktort/TA/AG/AU" nach Vorschlag Marvin Brandt (Kreis Unna) 
    5524 
    56 -- 2014-01-29 FJ  Spalte "zeitpunktderentstehung" an allen Vorkommen auf Format "varchar". 
     25-- 2014-01-29 FJ  Spalte "zeitpunktderentstehung" an allen Vorkommen auf Format "character varying". 
    5726--                Alte auskommentierte Varianten entrÃŒmpelt.  
    5827--                Tabs durch Space ersetzt und Code wieder hÃŒbsch ausgerichtet. 
     
    6029-- 2014-01-31 FJ  Erweiterungen Marvin Brand (Unna) fuer sauberes Entfernen alter Beziehungen bei "replace". 
    6130--                Lösung ÃŒber import_id. 
     31 
    6232-- 2014-07-31 AE  kommentar auf geometry_columns entfernt - ist in PostGIS 2 keine Tabelle mehr 
     33 
     34-- 2014-08-27 FJ  Relationen-Verbindungs-Spalten direkt in den Objekt-Tabellen statt ÃŒber Tabelle "alkis_relationen". 
     35--                Übergangsweise wird beides gefÃŒhrt bis alle Programme und Views umgestellt wurden. 
     36--                Spalten "advstandardmodell" und "sonstigesmodell" sind immer ein Array ( character varying[] ). 
     37--                Beginn der Angleichung an die jetzt freie norBIT-Version: 
     38--                Kommentar zur Tabelle systematischer aufbauen. 
     39--                Zielformat: '[Objektbereich /] [Objektartengruppe]: ([N]REO) "Name" ist ...' 
    6340 
    6441--  VERSIONS-NUMMER: 
     
    6643--  Dies Schema kann NICHT mehr mit der installierbaren gdal-Version 1.9 verwendet werden. 
    6744--  Derzeit muss ogr2ogr (gdal) aus den Quellen compiliert werden, die o.g. Patch #4555 enthalten. 
    68 --  WeiterfÃŒhrung dieses Zweiges als PostNAS 0.7 
    6945 
    7046-- ALKIS-Dokumentation (NRW): 
     
    8056 
    8157-- T u n i n g : 
    82 --   Die Tabelle 'spatial_ref_sys' einer PostGIS-Datenbank auf 
    83 --   die notwendigen Koordinatensysteme reduzieren. Das Loescht >3000 Eintraege. 
    84  
    85 --  DELETE FROM spatial_ref_sys 
    86 --  WHERE srid NOT 
    87 --  IN (2397, 2398, 2399, 4326,    25830, 25831, 25832, 25833, 25834,  31466, 31467, 31468, 31469); 
    88 --  --  Krassowski        lat/lon  UTM                                 GK 
     58--   Vorschlag: Die Tabelle 'spatial_ref_sys' einer PostGIS-Datenbank auf 
     59--   die notwendigen Koordinatensysteme reduzieren. Das löscht >3000 Eintraege. 
     60 
     61/* 
     62   DELETE FROM spatial_ref_sys 
     63   WHERE srid NOT 
     64   IN (2397, 2398, 2399, 4326,    25830, 25831, 25832, 25833, 25834,  31466, 31467, 31468, 31469); 
     65   --  Krassowski        lat/lon  UTM                                 GK 
     66*/ 
    8967 
    9068-- Stored Procedures laden 
    9169\i alkis-functions.sql 
    9270 
    93 -- Alle Tabellen löschen 
    94 --SELECT alkis_drop(); 
    95  
    96  
    97 -- Importtabelle fÃŒr Verarbeitungen 
     71-- Importtabelle fÃŒr Verarbeitungs-ZÀhler. 
     72-- Wird benötigt fÃŒr den Trigger zur Pflege der "alkis_beziehungen" (Version "Unna"). 
     73-- Kann mit "alkis_beziehungen" entfallen, wenn alle Views und Programm umgestellt sind auf interne Relationen. 
    9874CREATE TABLE import ( 
    99   id serial NOT NULL, 
    100   datum timestamp without time zone, 
    101   verzeichnis text, 
    102   importart text, 
    103   CONSTRAINT import_pk PRIMARY KEY (id) 
     75  id           serial NOT NULL, 
     76  datum        timestamp without time zone, 
     77  verzeichnis  text, 
     78  importart    text, 
     79  CONSTRAINT   import_pk PRIMARY KEY (id) 
    10480); 
    10581 
    10682CREATE UNIQUE INDEX import_id ON import USING btree (id); 
    10783 
    108 COMMENT ON TABLE  import             IS 'Verwaltung der Import-ProgrammlÀufe. Wird nicht vom Konverter gefÃŒllt sondern aus der Start-Prozedur (z.B. konv_batch.sh).'; 
     84COMMENT ON TABLE  import             IS 'PostNAS: Verwaltung der Import-ProgrammlÀufe. Wird nicht vom Konverter gefÃŒllt sondern aus der Start-Prozedur (z.B. konv_batch.sh).'; 
    10985COMMENT ON COLUMN import.id          IS 'Laufende Nummer der Konverter-Datei-Verarbeitung. Der Max-Wert von "id" wird als "alkis_beziehungen.import_id" verwendet, um ein vollstÀndiges Löschen alter Beziehungen zu ermöglichen.'; 
    11086COMMENT ON COLUMN import.datum       IS 'Zeitpunkt des Beginns des Konverter-Laufes fÃŒr einen Stapel von NAS-Dateien.'; 
     
    11288COMMENT ON COLUMN import.importart   IS 'Modus des Konverter-Laufes: e="Erstladen" oder a="NBA-Aktualisierung"'; 
    11389 
    114 -- Tabelle delete fÃŒr Lösch- und FortfÃŒhrungsdatensÀtze 
     90-- Tabelle "delete" fÃŒr Lösch- und FortfÃŒhrungsdatensÀtze 
    11591CREATE TABLE "delete" ( 
    11692     ogc_fid             serial NOT NULL, 
    117      typename            varchar, 
     93     typename            character varying, 
    11894     featureid           character(32), 
    119      context             varchar,       -- delete/replace 
    120      safetoignore        varchar,       -- replace.safetoignore 'true'/'false' 
    121      replacedBy          varchar,       -- gmlid 
     95     context             character varying,       -- delete/replace 
     96     safetoignore        character varying,       -- replace.safetoignore 'true'/'false' 
     97     replacedBy          character varying,       -- gmlid 
    12298     ignored             boolean DEFAULT false,   -- Satz wurde nicht verarbeitet 
    12399     CONSTRAINT delete_pk PRIMARY KEY (ogc_fid) 
    124100); 
    125101 
    126  
    127 -- Dummy-Eintrag in Metatabelle 
    128102SELECT AddGeometryColumn('delete','dummy',:alkis_epsg,'POINT',2); 
    129103 
    130104CREATE UNIQUE INDEX delete_fid ON "delete"(featureid); 
    131105 
    132 COMMENT ON TABLE "delete"             IS 'Hilfstabelle fÃŒr das Speichern von Löschinformationen.'; 
     106COMMENT ON TABLE "delete"             IS 'PostNAS: Hilfstabelle fÃŒr das Speichern von Löschinformationen.'; 
    133107COMMENT ON COLUMN delete.typename     IS 'Objektart, also Name der Tabelle, aus der das Objekt zu löschen ist.'; 
    134108COMMENT ON COLUMN delete.featureid    IS 'Zusammen gesetzt aus GML-ID (16) und Zeitstempel.'; 
     
    140114-- B e z i e h u n g e n 
    141115-- ---------------------------------------------- 
    142 -- Zentrale Tabelle fuer alle Relationen im Buchwerk. 
    143  
    144 -- Statt Relationen und FOREIGN-KEY-CONSTRAINTS zwischen Tabellen direkt zu legen, gehen 
    145 -- in der ALKIS-Datenstruktur alle Beziehungen zwischen zwei Tabellen ÃŒber diese Verbindungstabelle. 
     116-- Zentrale Tabelle fuer alle Relationen im Buchwerk. ZukÃŒnftig entfallend. 
     117-- Bevor diese Tabelle entfallen kann mÃŒssen alle Views und Anwendungen umgestellt werden auf die Nutzung der Beziehungen-Spalten in den Tabellen.  
    146118 
    147119-- Die FremdschlÃŒssel 'beziehung_von' und 'beziehung_zu' verweisen auf die ID des Objekte (gml_id). 
     
    152124CREATE TABLE alkis_beziehungen ( 
    153125   ogc_fid          serial NOT NULL, 
    154    beziehung_von    character(16),   --> gml_id 
    155    beziehungsart    varchar,         --  Liste siehe unten 
    156    beziehung_zu     character(16), 
    157    import_id        integer,         -- 2014-01-31  
     126   beziehung_von    character varying,   --> gml_id 
     127   beziehungsart    character varying, 
     128   beziehung_zu     character varying, 
     129   import_id        integer,             -- 2014-01-31 
    158130   CONSTRAINT alkis_beziehungen_pk PRIMARY KEY (ogc_fid) 
    159131); 
     
    163135CREATE INDEX alkis_beziehungen_art_idx ON alkis_beziehungen USING btree (beziehungsart); 
    164136 
    165  
    166 -- Dummy-Eintrag in Metatabelle 
    167137SELECT AddGeometryColumn('alkis_beziehungen','dummy',:alkis_epsg,'POINT',2); 
    168138 
    169 COMMENT ON TABLE  alkis_beziehungen               IS 'zentrale Multi-Verbindungstabelle'; 
     139COMMENT ON TABLE  alkis_beziehungen               IS 'PostNAS: zentrale Multi-Verbindungstabelle'; 
    170140COMMENT ON COLUMN alkis_beziehungen.beziehung_von IS 'Join auf Feld gml_id verschiedener Tabellen'; 
    171141COMMENT ON COLUMN alkis_beziehungen.beziehung_zu  IS 'Join auf Feld gml_id verschiedener Tabellen'; 
    172142COMMENT ON COLUMN alkis_beziehungen.beziehungsart IS 'Typ der Beziehung zwischen der von- und zu-Tabelle'; 
    173 --MMENT ON COLUMN alkis_beziehungen.beginnt       IS 'Mit Trigger kopiertes Beginnt-Datum des Datensatzes auf der Seite beziehung_von'; 
    174143COMMENT ON COLUMN alkis_beziehungen.import_id     IS 'laufende Nummer des Konverter-Laufes aus "import.id".'; 
    175  
    176  
    177  
    178 -- Beziehungsarten: 
    179 -- "an" "benennt" "bestehtAusRechtsverhaeltnissenZu" "beziehtSichAuchAuf" "dientZurDarstellungVon" 
    180 -- "durch" "gehoertAnteiligZu" "gehoertZu" "hat" "hatAuch" "istBestandteilVon" 
    181 -- "istGebucht" "istTeilVon" "weistAuf" "zeigtAuf" "zu" 
    182144 
    183145-- Hinweis: 
     
    185147-- Optimierung z.B. ÃŒber passende Indices ist wichtig. 
    186148 
    187 -- 
     149 
    188150-- Löschtrigger setzen 
    189 -- 
     151 
    190152-- Option (A) ohne Historie: 
    191 --  - Symlink von alkis-trigger-kill.sql auf alkis-trigger.sql setzen (Default; macht datenbank_anlegen.sh 
    192 --    ggf. automatisch) 
     153--  - Symlink von alkis-trigger-kill.sql auf alkis-trigger.sql setzen  
     154--    (Default; macht datenbank_anlegen.sh ggf. automatisch) 
    193155--  - Lösch- und ÄnderungssÀtze werden ausgefÃŒhrt und die alten Objekte werden sofort entfernt 
    194 -- 
     156 
    195157-- Option (B) mit Historie: 
    196158--  - Symlink von alkis-trigger-hist.sql auf alkis-trigger.sql setzen 
    197 --  - Bei Lösch- und ÄnderungssÀtzen werden die Objekte nicht gelöscht, sondern 
    198 --    im Feld 'endet' als ungegangen markiert (die den aktuellen gilt: WHERE endet 
    199 --    IS NULL) 
    200 -- 
     159--  - Bei Lösch- und ÄnderungssÀtzen werden die Objekte nicht gelöscht, sondern im Feld 'endet'  
     160--    als ungegangen markiert (FÃŒr aktuelle Objekte gilt: WHERE endet IS NULL) 
     161 
    201162\i alkis-trigger.sql 
    202163 
    203 -- COMMENT ON DATABASE *** IS 'ALKIS - PostNAS 0.7'; 
    204164 
    205165-- =========================================================== 
     
    212172CREATE TABLE ks_sonstigesbauwerk ( 
    213173     ogc_fid             serial NOT NULL, 
    214      gml_id              character(16), 
    215      identifier          character(44), 
    216      beginnt             character(20), 
    217      endet               character(20), 
    218      sonstigesmodell     varchar, 
    219      anlass              varchar, 
     174     gml_id              character varying NOT NULL, 
     175     identifier          character varying, 
     176     beginnt             character(20), 
     177     endet               character(20), 
     178     sonstigesmodell     character varying[], 
     179     anlass              character varying, 
    220180     bauwerksfunktion    integer, 
    221181     CONSTRAINT ks_sonstigesbauwerk_pk PRIMARY KEY (ogc_fid) 
     
    226186CREATE INDEX ks_sonstigesbauwerk_geom_idx ON ks_sonstigesbauwerk USING gist (wkb_geometry); 
    227187 
    228 COMMENT ON TABLE  ks_sonstigesbauwerk IS 'Sonstiges Bauwerk'; 
     188COMMENT ON TABLE  ks_sonstigesbauwerk IS '__: (REO) "Sonstiges Bauwerk" ist'; 
    229189 
    230190 
     
    233193CREATE TABLE ax_anderefestlegungnachwasserrecht ( 
    234194     ogc_fid             serial NOT NULL, 
    235      gml_id              character(16), 
    236      identifier          character(44), 
    237      beginnt             character(20), 
    238      endet               character(20), 
    239      advstandardmodell   varchar, 
    240      anlass              varchar, 
     195     gml_id              character varying NOT NULL, 
     196     identifier          character varying, 
     197     beginnt             character(20), 
     198     endet               character(20), 
     199     advstandardmodell   character varying[], 
     200     sonstigesmodell     character varying[], 
     201     anlass              character varying, 
    241202     artderfestlegung    integer, 
    242203     land                integer, 
    243      stelle              varchar, 
     204     stelle              character varying, 
    244205     CONSTRAINT ax_anderefestlegungnachwasserrecht_pk PRIMARY KEY (ogc_fid) 
    245206); 
     
    247208SELECT AddGeometryColumn('ax_anderefestlegungnachwasserrecht','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
    248209 
    249 CREATE INDEX ax_anderefestlegungnachwasserrecht_geom_idx ON ax_anderefestlegungnachwasserrecht USING gist (wkb_geometry); 
    250 CREATE UNIQUE INDEX ax_anderefestlegungnachwasserrecht_gml ON ax_anderefestlegungnachwasserrecht USING btree (gml_id,beginnt); 
    251 CREATE INDEX ax_anderefestlegungnachwasserrecht_afs ON ax_anderefestlegungnachwasserrecht(land,stelle); 
    252  
    253 COMMENT ON TABLE  ax_anderefestlegungnachwasserrecht        IS 'Andere Festlegung nach  W a s s e r r e c h t'; 
     210CREATE        INDEX ax_anderefestlegungnachwasserrecht_geom_idx ON ax_anderefestlegungnachwasserrecht USING gist (wkb_geometry); 
     211CREATE UNIQUE INDEX ax_anderefestlegungnachwasserrecht_gml      ON ax_anderefestlegungnachwasserrecht USING btree (gml_id, beginnt); 
     212CREATE        INDEX ax_anderefestlegungnachwasserrecht_afs      ON ax_anderefestlegungnachwasserrecht(land, stelle); 
     213 
     214COMMENT ON TABLE  ax_anderefestlegungnachwasserrecht        IS '__: (REO) "Andere Festlegung nach  Wasserrecht" ist ..'; 
    254215COMMENT ON COLUMN ax_anderefestlegungnachwasserrecht.gml_id IS 'Identifikator, global eindeutig'; 
    255  
    256  
    257 -- B a u b l o c k 
    258 -- ---------------------------------------------- Objektartengruppe: Administrative Gebietseinheiten 
    259 CREATE TABLE ax_baublock ( 
    260      ogc_fid             serial NOT NULL, 
    261      gml_id              character(16), 
    262      identifier          character(44), 
    263      beginnt             character(20), 
    264      endet               character(20), 
    265      advstandardmodell   character(9), 
    266      anlass              varchar, 
    267      baublockbezeichnung integer, 
    268      CONSTRAINT ax_baublock_pk PRIMARY KEY (ogc_fid) 
    269 ); 
    270 SELECT AddGeometryColumn('ax_baublock','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
    271  
    272 CREATE INDEX ax_baublock_geom_idx ON ax_baublock USING gist (wkb_geometry); 
    273 CREATE UNIQUE INDEX ax_baublock_gml ON ax_baublock USING btree (gml_id,beginnt); 
    274  
    275 COMMENT ON TABLE  ax_baublock        IS 'B a u b l o c k'; 
    276 COMMENT ON COLUMN ax_baublock.gml_id IS 'Identifikator, global eindeutig'; 
    277216 
    278217 
     
    281220CREATE TABLE ax_besonderertopographischerpunkt ( 
    282221     ogc_fid             serial NOT NULL, 
    283      gml_id              character(16), 
    284      identifier          character(44), 
    285      beginnt             character(20), 
    286      endet               character(20), 
    287      advstandardmodell   varchar, 
    288      anlass              varchar, 
     222     gml_id              character varying NOT NULL, 
     223     identifier          character varying, 
     224     beginnt             character(20), 
     225     endet               character(20), 
     226     advstandardmodell   character varying[], 
     227     sonstigesmodell     character varying[], 
     228     anlass              character varying, 
    289229     land                integer, 
    290230     stelle              integer, 
    291      punktkennung        varchar, 
    292      sonstigeeigenschaft varchar[], 
     231     punktkennung        character varying, 
     232     sonstigeeigenschaft character varying[], 
    293233     CONSTRAINT ax_besonderertopographischerpunkt_pk PRIMARY KEY (ogc_fid) 
    294234); 
     
    296236SELECT AddGeometryColumn('ax_besonderertopographischerpunkt','dummy',:alkis_epsg,'POINT',2); 
    297237 
    298 CREATE UNIQUE INDEX ax_besonderertopographischerpunkt_gml ON ax_besonderertopographischerpunkt USING btree (gml_id,beginnt); 
    299  
    300 COMMENT ON TABLE  ax_besonderertopographischerpunkt        IS 'B e s o n d e r e r   T o p o g r a f i s c h e r   P u n k t'; 
     238CREATE UNIQUE INDEX ax_besonderertopographischerpunkt_gml ON ax_besonderertopographischerpunkt USING btree (gml_id, beginnt); 
     239 
     240COMMENT ON TABLE  ax_besonderertopographischerpunkt        IS '__: (NREO) "Besonderer Topografischer Punkt" ist ..'; 
    301241COMMENT ON COLUMN ax_besonderertopographischerpunkt.gml_id IS 'Identifikator, global eindeutig'; 
    302242 
     
    305245-- ------- 
    306246CREATE TABLE ax_soll ( 
    307      ogc_fid             serial NOT NULL, 
    308      gml_id              character(16), 
    309      identifier          character(44), 
    310      beginnt             character(20), 
    311      endet               character(20), 
    312      advstandardmodell   varchar, 
    313      anlass              varchar, 
    314      name                varchar, 
     247     ogc_fid               serial NOT NULL, 
     248     gml_id                character varying NOT NULL, 
     249     identifier            character varying, 
     250     beginnt               character(20), 
     251     endet                 character(20), 
     252     advstandardmodell     character varying[], 
     253     sonstigesmodell       character varying[], 
     254     anlass                character varying, 
     255     name                  character varying, 
    315256     CONSTRAINT ax_soll_pk PRIMARY KEY (ogc_fid) 
    316257); 
     
    319260 
    320261CREATE INDEX ax_soll_geom_idx ON ax_soll USING gist (wkb_geometry); 
    321 CREATE UNIQUE INDEX ax_soll_gml ON ax_soll USING btree (gml_id,beginnt); 
    322  
    323 COMMENT ON TABLE  ax_soll        IS 'S o l l'; 
     262CREATE UNIQUE INDEX ax_soll_gml ON ax_soll USING btree (gml_id, beginnt); 
     263 
     264COMMENT ON TABLE  ax_soll        IS '__: (REO) "Soll" ist ..'; 
    324265COMMENT ON COLUMN ax_soll.gml_id IS 'Identifikator, global eindeutig'; 
    325266 
     
    328269-- ------------------ 
    329270CREATE TABLE ax_bewertung ( 
    330      ogc_fid                  serial NOT NULL, 
    331      gml_id                   character(16), 
    332      identifier               character(44), 
    333      beginnt                  character(20), 
    334      endet                    character(20), 
    335      advstandardmodell        varchar, 
    336      anlass                   varchar, 
    337      klassifizierung          integer, 
     271     ogc_fid                    serial NOT NULL, 
     272     gml_id                     character varying NOT NULL, 
     273     identifier                 character varying, 
     274     beginnt                    character(20), 
     275     endet                      character(20), 
     276     advstandardmodell          character varying[], 
     277     sonstigesmodell            character varying[], 
     278     anlass                     character varying, 
     279     klassifizierung            integer, 
    338280     CONSTRAINT ax_bewertung_pk PRIMARY KEY (ogc_fid) 
    339281); 
     
    342284 
    343285CREATE INDEX ax_bewertung_geom_idx   ON ax_bewertung USING gist  (wkb_geometry); 
    344 CREATE UNIQUE INDEX ax_bewertung_gml ON ax_bewertung USING btree (gml_id,beginnt); 
    345  
    346 COMMENT ON TABLE  ax_bewertung        IS '"B e w e r t u n g" ist die Klassifizierung einer FlÀche nach dem Bewertungsgesetz (BewertungsflÀche).'; 
     286CREATE UNIQUE INDEX ax_bewertung_gml ON ax_bewertung USING btree (gml_id, beginnt); 
     287 
     288COMMENT ON TABLE  ax_bewertung        IS '__: (REO) "Bewertung" ist die Klassifizierung einer FlÀche nach dem Bewertungsgesetz (BewertungsflÀche).'; 
    347289COMMENT ON COLUMN ax_bewertung.gml_id IS 'Identifikator, global eindeutig'; 
    348290 
    349291COMMENT ON COLUMN ax_bewertung.klassifizierung IS '"Klassifizierung" ist die gesetzliche Klassifizierung nach dem Bewertungsgesetz.'; 
    350  
    351292 
    352293 
     
    355296CREATE TABLE ax_tagesabschnitt ( 
    356297     ogc_fid                  serial NOT NULL, 
    357      gml_id                   character(16), 
    358      identifier               character(44), 
     298     gml_id                   character varying NOT NULL, 
     299     identifier               character varying, 
    359300     beginnt                  character(20), 
    360301     endet                    character(20), 
    361      advstandardmodell        varchar, 
    362      anlass                   varchar, 
    363      tagesabschnittsnummer    varchar, 
     302     advstandardmodell        character varying[], 
     303     sonstigesmodell          character varying[], 
     304     anlass                   character varying, 
     305     tagesabschnittsnummer    character varying, 
    364306     CONSTRAINT ax_tagesabschnitt_pk PRIMARY KEY (ogc_fid) 
    365307); 
     
    368310 
    369311CREATE INDEX ax_tagesabschnitt_geom_idx   ON ax_tagesabschnitt USING gist  (wkb_geometry); 
    370 CREATE UNIQUE INDEX ax_tagesabschnitt_gml ON ax_tagesabschnitt USING btree (gml_id,beginnt); 
    371  
    372 COMMENT ON TABLE  ax_tagesabschnitt        IS 'T a g e s a b s c h n i t t  der BodenschÀtzung.'; 
     312CREATE UNIQUE INDEX ax_tagesabschnitt_gml ON ax_tagesabschnitt USING btree (gml_id, beginnt); 
     313 
     314COMMENT ON TABLE ax_tagesabschnitt         IS '__: (REO)  "Tagesabschnitt" ist ein Ordnungskriterium der SchÀtzungsarbeiten fÃŒr eine BewertungsflÀche. Innerhalb der Tagesabschnitte sind die Grablöcher eindeutig zugeordnet.'; 
    373315COMMENT ON COLUMN ax_tagesabschnitt.gml_id IS 'Identifikator, global eindeutig'; 
    374316 
     
    378320CREATE TABLE ax_denkmalschutzrecht ( 
    379321     ogc_fid             serial NOT NULL, 
    380      gml_id              character(16), 
    381      identifier          character(44), 
    382      beginnt             character(20), 
    383      endet               character(20), 
    384      advstandardmodell   varchar, 
    385      anlass              varchar, 
     322     gml_id              character varying NOT NULL, 
     323     identifier          character varying, 
     324     beginnt             character(20), 
     325     endet               character(20), 
     326     advstandardmodell   character varying[], 
     327     sonstigesmodell     character varying[], 
     328     anlass              character varying, 
    386329     artderfestlegung    integer, 
    387330     land                integer, 
    388      stelle              varchar, 
    389      art                 varchar, 
    390      name                varchar, 
     331     stelle              character varying, 
     332     art                 character varying, 
     333     name                character varying, 
    391334     CONSTRAINT ax_denkmalschutzrecht_pk PRIMARY KEY (ogc_fid) 
    392335); 
     
    395338 
    396339CREATE INDEX ax_denkmalschutzrecht_geom_idx   ON ax_denkmalschutzrecht USING gist  (wkb_geometry); 
    397 CREATE UNIQUE INDEX ax_denkmalschutzrecht_gml ON ax_denkmalschutzrecht USING btree (gml_id,beginnt); 
    398 CREATE INDEX ax_denkmalschutzrecht_afs ON ax_denkmalschutzrecht(land,stelle); 
    399  
    400 COMMENT ON TABLE  ax_denkmalschutzrecht        IS 'D e n k m a l s c h u t z r e c h t'; 
     340CREATE UNIQUE INDEX ax_denkmalschutzrecht_gml ON ax_denkmalschutzrecht USING btree (gml_id, beginnt); 
     341CREATE INDEX ax_denkmalschutzrecht_afs        ON ax_denkmalschutzrecht(land, stelle); 
     342 
     343COMMENT ON TABLE  ax_denkmalschutzrecht        IS '__: (REO)  "Denkmalschutzrecht" ist ..'; 
    401344COMMENT ON COLUMN ax_denkmalschutzrecht.gml_id IS 'Identifikator, global eindeutig'; 
    402345 
     
    406349CREATE TABLE ax_forstrecht ( 
    407350     ogc_fid             serial NOT NULL, 
    408      gml_id              character(16), 
    409      identifier          character(44), 
    410      beginnt             character(20), 
    411      endet               character(20), 
    412      advstandardmodell   varchar, 
    413      anlass              varchar, 
     351     gml_id              character varying NOT NULL, 
     352     identifier          character varying, 
     353     beginnt             character(20), 
     354     endet               character(20), 
     355     advstandardmodell   character varying[], 
     356     sonstigesmodell     character varying[], 
     357     anlass              character varying, 
    414358     artderfestlegung    integer, 
    415359     besonderefunktion   integer, 
    416360     land                integer, 
    417      stelle              varchar, 
     361     stelle              character varying, 
    418362     CONSTRAINT ax_forstrecht_pk PRIMARY KEY (ogc_fid) 
    419363); 
     
    422366 
    423367CREATE INDEX ax_forstrecht_geom_idx   ON ax_forstrecht USING gist  (wkb_geometry); 
    424 CREATE UNIQUE INDEX ax_forstrecht_gml ON ax_forstrecht USING btree (gml_id,beginnt); 
     368CREATE UNIQUE INDEX ax_forstrecht_gml ON ax_forstrecht USING btree (gml_id, beginnt); 
    425369CREATE INDEX ax_forstrecht_afs ON ax_forstrecht(land,stelle); 
    426370 
    427 COMMENT ON TABLE  ax_forstrecht        IS 'F o r s t r e c h t'; 
     371COMMENT ON TABLE  ax_forstrecht        IS '__: (REO) "Forstrecht" ist ..'; 
    428372COMMENT ON COLUMN ax_forstrecht.gml_id IS 'Identifikator, global eindeutig'; 
    429373 
     
    433377CREATE TABLE ax_gebaeudeausgestaltung ( 
    434378     ogc_fid             serial NOT NULL, 
    435      gml_id              character(16), 
    436      identifier          character(44), 
    437      beginnt             character(20), 
    438      endet               character(20), 
    439      advstandardmodell   character(4), 
    440      anlass              varchar, 
     379     gml_id              character varying NOT NULL, 
     380     identifier          character varying, 
     381     beginnt             character(20), 
     382     endet               character(20), 
     383     advstandardmodell   character varying[], 
     384     sonstigesmodell     character varying[], 
     385     anlass              character varying, 
    441386     darstellung         integer, 
    442    --zeigtauf            varchar,  -- alkis_beziehungen ? 
     387     zeigtauf            character varying, --> ax_gebaeude 
    443388     CONSTRAINT ax_gebaeudeausgestaltung_pk PRIMARY KEY (ogc_fid) 
    444389); 
     
    446391SELECT AddGeometryColumn('ax_gebaeudeausgestaltung','wkb_geometry',:alkis_epsg,'GEOMETRY',2);  -- LINESTRING/MULTILINESTRING 
    447392 
    448 CREATE INDEX ax_gebaeudeausgestaltung_geom_idx ON ax_gebaeudeausgestaltung USING gist (wkb_geometry); 
    449 CREATE UNIQUE INDEX ax_gebaeudeausgestaltung_gml ON ax_gebaeudeausgestaltung USING btree (gml_id,beginnt); 
    450  
    451 COMMENT ON TABLE  ax_gebaeudeausgestaltung        IS 'G e b À u d e a u s g e s t a l t u n g'; 
    452 COMMENT ON COLUMN ax_gebaeudeausgestaltung.gml_id IS 'Identifikator, global eindeutig'; 
     393CREATE INDEX ax_gebaeudeausgestaltung_geom_idx   ON ax_gebaeudeausgestaltung USING gist (wkb_geometry); 
     394CREATE UNIQUE INDEX ax_gebaeudeausgestaltung_gml ON ax_gebaeudeausgestaltung USING btree (gml_id, beginnt); 
     395 
     396COMMENT ON TABLE  ax_gebaeudeausgestaltung          IS '__: (REO) "GebÀudeausgestaltung" ist ..'; 
     397COMMENT ON COLUMN ax_gebaeudeausgestaltung.gml_id   IS 'Identifikator, global eindeutig'; 
     398COMMENT ON COLUMN ax_gebaeudeausgestaltung.zeigtauf IS '-> Beziehung zu ax_gebaeude (1): ''GebÀudeausgestaltung'' zeigt auf die zugehörige Objektart ''GebÀude''.'; 
    453399 
    454400 
     
    457403CREATE TABLE ax_georeferenziertegebaeudeadresse ( 
    458404     ogc_fid             serial NOT NULL, 
    459      gml_id              character(16), 
    460      identifier          character(44), 
     405     gml_id              character varying NOT NULL, 
     406     identifier          character varying, 
    461407     beginnt             character(20), -- Inhalt z.B. "2008-06-10T15:19:17Z" 
    462408     endet               character(20), -- Inhalt z.B. "2008-06-10T15:19:17Z" 
    463409     -- ISO: waere  "2008-06-10 15:19:17-00", timestamp-Format wird nicht geladen, bleibt leer 
    464      advstandardmodell   varchar, 
    465      anlass              varchar, 
     410     advstandardmodell   character varying[], 
     411     sonstigesmodell     character varying[], 
     412     anlass              character varying, 
    466413     qualitaetsangaben   integer,  -- zb: "1000" (= Massstab) 
    467414     --             --             -- Gemeindeschluessel, bestehend aus: 
    468415     land                integer,  -- 05 = NRW 
    469      regierungsbezirk    integer,  --   7 
    470      kreis               integer,  --    66 
    471      gemeinde            integer,  --      020 
    472      ortsteil            integer,  --         0 
     416     regierungsbezirk    integer, 
     417     kreis               integer, 
     418     gemeinde            integer, 
     419     ortsteil            integer, 
    473420     -- 
    474      postleitzahl        varchar,  -- mit fuehrenden Nullen 
    475      ortsnamepost        varchar,  -- 
    476      zusatzortsname      varchar,  -- 
    477      strassenname        varchar,  -- 
    478      strassenschluessel  integer,  -- max.  5 Stellen 
    479      hausnummer          varchar,  -- meist 3 Stellen 
    480      adressierungszusatz varchar,  -- Hausnummernzusatz-Buchstabe 
     421     postleitzahl        character varying,  -- mit fuehrenden Nullen 
     422     ortsnamepost        character varying,  -- 
     423     zusatzortsname      character varying,  -- 
     424     strassenname        character varying,  -- 
     425     strassenschluessel  integer,            -- max.  5 Stellen 
     426     hausnummer          character varying,  -- meist 3 Stellen 
     427     adressierungszusatz character varying,  -- Hausnummernzusatz-Buchstabe 
     428     -- Beziehungen: 
     429     hatauch             character varying,  --> ax_lagebezeichnungmithausnummer 
    481430     CONSTRAINT ax_georeferenziertegebaeudeadresse_pk PRIMARY KEY (ogc_fid) 
    482431); 
     
    485434 
    486435CREATE INDEX ax_georeferenziertegebaeudeadresse_geom_idx ON ax_georeferenziertegebaeudeadresse USING gist (wkb_geometry); 
    487  
    488 -- Index fÃŒr alkis_beziehungen 
    489 CREATE UNIQUE INDEX ax_georeferenziertegebaeudeadresse_gml ON ax_georeferenziertegebaeudeadresse USING btree (gml_id,beginnt); 
    490  
    491 -- Suchindex Adresse 
     436CREATE UNIQUE INDEX ax_georeferenziertegebaeudeadresse_gml ON ax_georeferenziertegebaeudeadresse USING btree (gml_id, beginnt); 
    492437CREATE INDEX ax_georeferenziertegebaeudeadresse_adr ON ax_georeferenziertegebaeudeadresse USING btree (strassenschluessel, hausnummer, adressierungszusatz); 
    493438 
    494 COMMENT ON TABLE  ax_georeferenziertegebaeudeadresse        IS 'Georeferenzierte  G e b À u d e a d r e s s e'; 
     439COMMENT ON TABLE  ax_georeferenziertegebaeudeadresse        IS '__: (REO) "Georeferenzierte GebÀudeadresse" ist ..'; 
    495440COMMENT ON COLUMN ax_georeferenziertegebaeudeadresse.gml_id IS 'Identifikator, global eindeutig'; 
    496441 
     442COMMENT ON COLUMN ax_georeferenziertegebaeudeadresse.hatauch IS '-> Beziehung zu ax_lagebezeichnungmithausnummer (1): Die inverse Relation wird optional belegt, damit keine Implementierung unmittelbar zur Umstellung auf das neue Verfahren zur Ableitung der Hauskoordinate gezwungen wird.'; 
    497443 
    498444-- G r a b l o c h   d e r   B o d e n s c h À t z u n g 
     
    500446CREATE TABLE ax_grablochderbodenschaetzung ( 
    501447     ogc_fid             serial NOT NULL, 
    502      gml_id              character(16), 
    503      identifier          character(44), 
    504      beginnt             character(20), 
    505      endet               character(20), 
    506      advstandardmodell   varchar, 
    507      anlass              varchar, 
    508      art                 varchar, 
    509      name                varchar, 
     448     gml_id              character varying NOT NULL, 
     449     identifier          character varying, 
     450     beginnt             character(20), 
     451     endet               character(20), 
     452     advstandardmodell   character varying[], 
     453     sonstigesmodell     character varying[], 
     454     anlass              character varying, 
     455     art                 character varying, 
     456     name                character varying, 
    510457     bedeutung           integer[], 
    511458     land                integer, 
    512      nummerierungsbezirk varchar, 
     459     nummerierungsbezirk character varying, 
    513460     gemarkungsnummer    integer, 
    514      nummerdesgrablochs  varchar, 
     461     nummerdesgrablochs  character varying, 
     462     bodenzahlodergruenlandgrundzahl integer, 
     463     -- Beziehungen: 
     464     gehoertzu           character varying, --> ax_tagesabschnitt 
    515465     CONSTRAINT ax_grablochderbodenschaetzung_pk PRIMARY KEY (ogc_fid) 
    516466); 
     
    519469 
    520470CREATE INDEX ax_grablochderbodenschaetzung_geom_idx   ON ax_grablochderbodenschaetzung USING gist  (wkb_geometry); 
    521 CREATE UNIQUE INDEX ax_grablochderbodenschaetzung_gml ON ax_grablochderbodenschaetzung USING btree (gml_id,beginnt); 
    522  
    523 COMMENT ON TABLE  ax_grablochderbodenschaetzung        IS 'G r a b l o c h   d e r   B o d e n s c h À t z u n g'; 
     471CREATE UNIQUE INDEX ax_grablochderbodenschaetzung_gml ON ax_grablochderbodenschaetzung USING btree (gml_id, beginnt); 
     472 
     473COMMENT ON TABLE  ax_grablochderbodenschaetzung        IS '__: (REO) "Grabloch der BodenschÀtzung" ist ..'; 
    524474COMMENT ON COLUMN ax_grablochderbodenschaetzung.gml_id IS 'Identifikator, global eindeutig'; 
     475 
     476COMMENT ON COLUMN ax_grablochderbodenschaetzung.gehoertzu IS '-> Beziehung zu ax_tagesabschnitt (0..1): Jedes Grabloch einer BodenschÀtzung liegt in einem Tagesabschnitt.'; 
    525477 
    526478 
     
    533485 
    534486CREATE TABLE ax_historischesflurstueckalb ( 
    535      ogc_fid                            serial NOT NULL, 
    536      gml_id                             character(16), 
     487     ogc_fid                         serial NOT NULL, 
     488     gml_id                          character varying NOT NULL, 
     489     identifier                      character varying, 
     490     beginnt                         character(20), 
     491     endet                           character(20), 
     492     advstandardmodell               character varying[], 
     493     sonstigesmodell                 character varying[], 
     494     anlass                          character varying, 
     495     name                            character varying[], 
    537496 
    538497     -- GID: AX_Flurstueck_Kerndaten 
    539498     -- 'FlurstÃŒck_Kerndaten' enthÀlt Eigenschaften des FlurstÃŒcks, die auch fÃŒr andere FlurstÃŒcksobjektarten gelten (z.B. Historisches FlurstÃŒck). 
    540      land                               integer,         -- 
    541      gemarkungsnummer                   integer,            -- 
    542      flurnummer                         integer,               -- Teile des FlurstÃŒckskennzeichens 
    543      zaehler                            integer,            --    (redundant zu flurstueckskennzeichen) 
    544      nenner                             integer,         -- 
     499     land                             integer,         -- 
     500     gemarkungsnummer                 integer,            -- 
     501     flurnummer                       integer,               -- Teile des FlurstÃŒckskennzeichens 
     502     zaehler                          integer,            --    (redundant zu flurstueckskennzeichen) 
     503     nenner                           integer,         -- 
     504     flurstuecksfolge                 character varying, 
    545505     -- daraus abgeleitet: 
    546      flurstueckskennzeichen             character(20),         -- Inhalt rechts mit __ auf 20 aufgefÃŒllt 
    547  
    548      amtlicheflaeche                    double precision,      -- AFL 
    549      abweichenderrechtszustand          varchar default 'false', -- ARZ 
    550      zweifelhafterFlurstuecksnachweis   varchar default 'false', -- ZFM Boolean 
    551      rechtsbehelfsverfahren             varchar default 'false', -- RBV 
    552      zeitpunktderentstehung             varchar,         -- ZDE  Inhalt jjjj-mm-tt  besser Format date ? 
    553      gemeinde                           integer, 
     506     flurstueckskennzeichen           character(20),         -- Inhalt rechts mit __ auf 20 aufgefÃŒllt 
     507 
     508     amtlicheflaeche                  double precision,                  -- AFL 
     509     abweichenderrechtszustand        character varying DEFAULT 'false', -- ARZ 
     510     zweifelhafterFlurstuecksnachweis character varying DEFAULT 'false', -- ZFM Boolean 
     511     rechtsbehelfsverfahren           character varying DEFAULT 'false', -- RBV 
     512     zeitpunktderentstehung           character(10),                     -- ZDE  jjjj-mm-tt 
     513     gemeinde                         integer, 
    554514     -- GID: ENDE AX_Flurstueck_Kerndaten 
    555515 
    556      identifier                         character(44), 
    557      beginnt                            character(20), 
    558      endet                              character(20), 
    559      advstandardmodell                  varchar, 
    560      anlass                             varchar, 
    561      name                               varchar[], 
    562      blattart                           integer, 
    563      buchungsart                        varchar[], 
    564      buchungsblattkennzeichen           varchar[], 
    565      bezirk                             integer, 
    566      buchungsblattnummermitbuchstabenerweiterung  varchar[], 
    567      laufendenummerderbuchungsstelle              varchar[], 
    568      zeitpunktderentstehungdesbezugsflurstuecks   varchar, 
    569      laufendenummerderfortfuehrung      varchar, 
    570      fortfuehrungsart                   varchar, 
    571      vorgaengerflurstueckskennzeichen   varchar[], 
    572      nachfolgerflurstueckskennzeichen   varchar[], 
     516     blattart                         integer, 
     517     buchungsart                      character varying[], 
     518     buchungsblattkennzeichen         character varying[], 
     519     bezirk                           integer, 
     520     buchungsblattnummermitbuchstabenerweiterung  character varying[], 
     521     laufendenummerderbuchungsstelle  character varying[], 
     522     zeitpunktderentstehungdesbezugsflurstuecks   character varying, 
     523     laufendenummerderfortfuehrung    character varying, 
     524     fortfuehrungsart                 character varying, 
     525     vorgaengerflurstueckskennzeichen character varying[], 
     526     nachfolgerflurstueckskennzeichen character varying[], 
    573527     CONSTRAINT ax_historischesflurstueckalb_pk PRIMARY KEY (ogc_fid) 
    574528); 
     
    576530SELECT AddGeometryColumn('ax_historischesflurstueckalb','dummy',:alkis_epsg,'POINT',2); 
    577531 
    578 CREATE UNIQUE INDEX ax_historischesflurstueckalb_gml ON ax_historischesflurstueckalb USING btree (gml_id,beginnt); 
    579  
    580 COMMENT ON TABLE  ax_historischesflurstueckalb        IS 'Historisches FlurstÃŒck ALB'; 
    581 COMMENT ON COLUMN ax_historischesflurstueckalb.gml_id IS 'Identifikator, global eindeutig'; 
    582 CREATE INDEX idx_histfsalb_vor 
    583    ON ax_historischesflurstueckalb USING btree (vorgaengerflurstueckskennzeichen /* ASC */); 
    584   COMMENT ON INDEX idx_histfsalb_vor IS 'Suchen nach VorgÀnger-FlurstÃŒck'; 
    585  
    586 CREATE INDEX idx_histfsalb_nach 
    587    ON ax_historischesflurstueckalb USING btree (vorgaengerflurstueckskennzeichen /* ASC */); 
    588   COMMENT ON INDEX idx_histfsalb_vor IS 'Suchen nach Nachfolger-FlurstÃŒck'; 
    589   COMMENT ON TABLE  ax_historischesflurstueckalb        IS 'Historisches FlurstÃŒck ALB'; 
     532CREATE UNIQUE INDEX ax_historischesflurstueckalb_gml ON ax_historischesflurstueckalb USING btree (gml_id, beginnt); 
     533CREATE INDEX idx_histfsalb_vor   ON ax_historischesflurstueckalb USING btree (vorgaengerflurstueckskennzeichen); 
     534CREATE INDEX idx_histfsalb_nach  ON ax_historischesflurstueckalb USING btree (vorgaengerflurstueckskennzeichen /* ASC */); 
     535 
     536  COMMENT ON TABLE  ax_historischesflurstueckalb        IS '__: (NREO) "Historisches FlurstÃŒck ALB" ist ..'; 
    590537  COMMENT ON COLUMN ax_historischesflurstueckalb.gml_id IS 'Identifikator, global eindeutig'; 
    591538  COMMENT ON COLUMN ax_historischesflurstueckalb.flurnummer                IS 'FLN "Flurnummer" ist die von der Katasterbehörde zur eindeutigen Bezeichnung vergebene Nummer einer Flur, die eine Gruppe von zusammenhÀngenden FlurstÃŒcken innerhalb einer Gemarkung umfasst.'; 
     
    611558  COMMENT ON COLUMN ax_historischesflurstueckalb.gemeinde                  IS 'Gemeindekennzeichen zur Zuordnung der FlustÃŒcksdaten zu einer Gemeinde.'; 
    612559 
     560  COMMENT ON INDEX idx_histfsalb_vor IS 'Suchen nach VorgÀnger-FlurstÃŒck'; 
     561  COMMENT ON INDEX idx_histfsalb_vor IS 'Suchen nach Nachfolger-FlurstÃŒck'; 
    613562 
    614563-- Historisches FlurstÃŒck (ALKIS) 
     
    617566CREATE TABLE ax_historischesflurstueck ( 
    618567     ogc_fid                       serial NOT NULL, 
    619      gml_id                        character(16), 
     568     gml_id                        character varying NOT NULL, 
     569     identifier                    character varying, 
     570     beginnt                       character(20), 
     571     endet                         character(20), 
     572     advstandardmodell             character varying[], 
     573     sonstigesmodell               character varying[], 
     574     anlass                        character varying, 
     575     art                           character varying[], 
     576     name                          character varying[], 
     577 
    620578     -- GID: AX_Flurstueck_Kerndaten 
    621579     -- 'FlurstÃŒck_Kerndaten' enthÀlt Eigenschaften des FlurstÃŒcks, die auch fÃŒr andere FlurstÃŒcksobjektarten gelten (z.B. Historisches FlurstÃŒck). 
     
    627585     -- daraus abgeleitet: 
    628586     flurstueckskennzeichen        character(20),           -- Inhalt rechts mit __ auf 20 aufgefÃŒllt 
    629      amtlicheflaeche               double precision,        -- AFL 
    630      abweichenderrechtszustand     varchar default 'false', -- ARZ 
    631      zweifelhafterFlurstuecksnachweis varchar default 'false',   -- ZFM Boolean 
    632      rechtsbehelfsverfahren        varchar default 'false', -- RBV 
    633      zeitpunktderentstehung        varchar,           -- ZDE  Inhalt jjjj-mm-tt  besser Format date ? 
     587     amtlicheflaeche               double precision,                  -- AFL 
     588     abweichenderrechtszustand     character varying DEFAULT 'false', -- ARZ 
     589  zweifelhafterflurstuecksnachweis character varying DEFAULT 'false', -- ZFM Boolean 
     590     rechtsbehelfsverfahren        character varying DEFAULT 'false', -- RBV 
     591     zeitpunktderentstehung        character(10),                     -- ZDE  Inhalt jjjj-mm-tt  besser Format date ? 
     592     zeitpunktderhistorisierung    character varying,  -- oder (10) ? 
    634593     gemeinde                      integer, 
    635594     -- GID: ENDE AX_Flurstueck_Kerndaten 
    636      identifier                    character(44), 
    637      beginnt                       character(20), 
    638      endet                         character(20), 
    639      advstandardmodell             varchar, 
    640      anlass                        varchar, 
    641      art                           varchar[], 
    642      name                          varchar[], 
     595 
    643596     regierungsbezirk              integer, 
    644597     kreis                         integer, 
    645      vorgaengerflurstueckskennzeichen   varchar[], 
    646      nachfolgerflurstueckskennzeichen   varchar[], 
     598     vorgaengerflurstueckskennzeichen   character varying[], 
     599     nachfolgerflurstueckskennzeichen   character varying[], 
    647600     blattart                      integer, 
    648      buchungsart                   varchar, 
    649      buchungsblattkennzeichen      varchar[], 
     601     buchungsart                   character varying, 
     602     buchungsblattkennzeichen      character varying[], 
    650603     bezirk                        integer, 
    651      buchungsblattnummermitbuchstabenerweiterung  varchar[], 
     604     buchungsblattnummermitbuchstabenerweiterung  character varying[], 
    652605     laufendenummerderbuchungsstelle    integer, 
    653606     CONSTRAINT ax_historischesflurstueck_pk PRIMARY KEY (ogc_fid) 
     
    656609SELECT AddGeometryColumn('ax_historischesflurstueck','wkb_geometry',:alkis_epsg,'GEOMETRY',2); -- POLYGON/MULTIPOLYGON 
    657610 
    658 CREATE INDEX ax_historischesflurstueck_geom_idx   ON ax_historischesflurstueck USING gist (wkb_geometry); 
    659 CREATE UNIQUE INDEX ax_historischesflurstueck_gml ON ax_historischesflurstueck USING btree (gml_id,beginnt); 
    660  
    661 -- Suche nach VorgÀnger / Nachfolger 
    662 -- ++ Welche Methode fÃŒr ein Array? 
     611CREATE INDEX ax_historischesflurstueck_geom_idx   ON ax_historischesflurstueck USING gist  (wkb_geometry); 
     612CREATE UNIQUE INDEX ax_historischesflurstueck_gml ON ax_historischesflurstueck USING btree (gml_id, beginnt); 
     613CREATE INDEX ax_historischesflurstueck_kennz      ON ax_historischesflurstueck USING btree (flurstueckskennzeichen); 
     614 
     615 
     616-- Suche nach VorgÀnger / Nachfolger  ++ Welche Methode fÃŒr ein Array? 
    663617-- Wirkt das ÃŒberhaupt bei der Suche nach einem einzelnen Wert aus dem Array? 
    664 CREATE INDEX idx_histfs_vor ON ax_historischesflurstueck (vorgaengerflurstueckskennzeichen /* ASC */); 
    665 CREATE INDEX idx_histfs_nach ON ax_historischesflurstueck (vorgaengerflurstueckskennzeichen /* ASC */); 
    666  
    667 -- COMMENT ON INDEX idx_histfsalb_vor IS 'Suchen nach VorgÀnger-FlurstÃŒck'; 
    668 -- COMMENT ON INDEX idx_histfsalb_vor IS 'Suchen nach Nachfolger-FlurstÃŒck'; 
     618CREATE INDEX idx_histfs_vor  ON ax_historischesflurstueck USING btree (vorgaengerflurstueckskennzeichen); 
     619CREATE INDEX idx_histfs_nach ON ax_historischesflurstueck USING btree (vorgaengerflurstueckskennzeichen); 
    669620 
    670621-- Die postgresql-Doku sagt dazu (http://www.postgresql.org/docs/9.1/static/arrays.html): 
     
    674625--   This will be easier to search, and is likely to scale better for a large number of elements." 
    675626 
    676  
    677   COMMENT ON TABLE  ax_historischesflurstueck        IS 'Historisches FlurstÃŒck, ALKIS, MIT Geometrie'; 
     627  COMMENT ON TABLE  ax_historischesflurstueck        IS '__: (REO) "Historisches FlurstÃŒck" ist .. ALKIS, MIT Geometrie'; 
    678628  COMMENT ON COLUMN ax_historischesflurstueck.gml_id IS 'Identifikator, global eindeutig'; 
    679629  COMMENT ON COLUMN ax_historischesflurstueck.flurnummer                IS 'FLN "Flurnummer" ist die von der Katasterbehörde zur eindeutigen Bezeichnung vergebene Nummer einer Flur, die eine Gruppe von zusammenhÀngenden FlurstÃŒcken innerhalb einer Gemarkung umfasst.'; 
     
    699649  COMMENT ON COLUMN ax_historischesflurstueck.gemeinde                  IS 'GDZ "Gemeindekennzeichen zur Zuordnung der FlustÃŒcksdaten zu einer Gemeinde.'; 
    700650 
    701  
    702 -- Kennzeichen indizieren, z.B. fuer Suche aus der Historie 
    703 CREATE INDEX ax_historischesflurstueck_kennz 
    704    ON ax_historischesflurstueck(flurstueckskennzeichen /* ASC NULLS LAST */); 
    705 COMMENT ON INDEX ax_historischesflurstueck_kennz IS 'Suche nach FlurstÃŒckskennzeichen'; 
    706  
    707  
     651  COMMENT ON INDEX ax_historischesflurstueck_kennz IS 'Suche nach FlurstÃŒckskennzeichen'; 
     652  COMMENT ON INDEX idx_histfs_vor                  IS 'Suchen nach VorgÀnger-FlurstÃŒck'; 
     653  COMMENT ON INDEX idx_histfs_nach                 IS 'Suchen nach Nachfolger-FlurstÃŒck'; 
    708654 
    709655-- N  a t u r -,  U m w e l t -   o d e r   B o d e n s c h u t z r e c h t 
     
    711657CREATE TABLE ax_naturumweltoderbodenschutzrecht ( 
    712658     ogc_fid             serial NOT NULL, 
    713      gml_id              character(16), 
    714      identifier          character(44), 
    715      beginnt             character(20), 
    716      endet               character(20), 
    717      advstandardmodell   varchar, 
    718      anlass              varchar, 
     659     gml_id              character varying NOT NULL, 
     660     identifier          character varying, 
     661     beginnt             character(20), 
     662     endet               character(20), 
     663     advstandardmodell   character varying[], 
     664     sonstigesmodell     character varying[], 
     665     anlass              character varying, 
    719666     artderfestlegung    integer, 
    720667     land                integer, 
    721      stelle              varchar, 
    722      name                varchar, 
     668     stelle              character varying, 
     669     name                character varying, 
    723670     CONSTRAINT ax_naturumweltoderbodenschutzrecht_pk PRIMARY KEY (ogc_fid) 
    724671); 
     
    726673SELECT AddGeometryColumn('ax_naturumweltoderbodenschutzrecht','wkb_geometry',:alkis_epsg,'GEOMETRY',2); -- POLYGON/MULTIPOLYGON 
    727674 
    728 CREATE INDEX ax_naturumweltoderbodenschutzrecht_geom_idx   ON ax_naturumweltoderbodenschutzrecht USING gist (wkb_geometry); 
    729 CREATE UNIQUE INDEX ax_naturumweltoderbodenschutzrecht_gml ON ax_naturumweltoderbodenschutzrecht USING btree (gml_id,beginnt); 
    730 CREATE INDEX ax_naturumweltoderbodenschutzrecht_afs ON ax_naturumweltoderbodenschutzrecht(land,stelle); 
    731  
    732 COMMENT ON TABLE  ax_naturumweltoderbodenschutzrecht        IS 'N  a t u r -,  U m w e l t -   o d e r   B o d e n s c h u t z r e c h t'; 
     675CREATE        INDEX ax_naturumweltoderbodenschutzrecht_geom_idx ON ax_naturumweltoderbodenschutzrecht USING gist (wkb_geometry); 
     676CREATE UNIQUE INDEX ax_naturumweltoderbodenschutzrecht_gml      ON ax_naturumweltoderbodenschutzrecht USING btree (gml_id, beginnt); 
     677CREATE        INDEX ax_naturumweltoderbodenschutzrecht_afs      ON ax_naturumweltoderbodenschutzrecht USING btree (land, stelle); 
     678 
     679COMMENT ON TABLE  ax_naturumweltoderbodenschutzrecht        IS '__: (REO) "Natur-, Umwelt- oder Bodenschutzrecht" ist ..'; 
    733680COMMENT ON COLUMN ax_naturumweltoderbodenschutzrecht.gml_id IS 'Identifikator, global eindeutig'; 
    734681 
     
    738685CREATE TABLE ax_schutzgebietnachwasserrecht ( 
    739686     ogc_fid             serial NOT NULL, 
    740      gml_id              character(16), 
    741      identifier          character(44), 
    742      beginnt             character(20), 
    743      endet               character(20), 
    744      advstandardmodell   varchar, 
    745      anlass              varchar, 
     687     gml_id              character varying NOT NULL, 
     688     identifier          character varying, 
     689     beginnt             character(20), 
     690     endet               character(20), 
     691     advstandardmodell   character varying[], 
     692     sonstigesmodell     character varying[], 
     693     anlass              character varying, 
    746694     artderfestlegung    integer, 
    747695     land                integer, 
    748      stelle              varchar, 
    749      art                 varchar[], 
    750      name                varchar[], 
    751      nummerdesschutzgebietes  varchar, 
     696     stelle              character varying, 
     697     art                 character varying[], 
     698     name                character varying[], 
     699     nummerdesschutzgebietes  character varying, 
    752700     CONSTRAINT ax_schutzgebietnachwasserrecht_pk PRIMARY KEY (ogc_fid) 
    753701); 
     
    755703SELECT AddGeometryColumn('ax_schutzgebietnachwasserrecht','dummy',:alkis_epsg,'POINT',2); 
    756704 
    757 CREATE UNIQUE INDEX ax_schutzgebietnachwasserrecht_gml ON ax_schutzgebietnachwasserrecht USING btree (gml_id,beginnt); 
    758 CREATE INDEX ax_schutzgebietnachwasserrecht_afs ON ax_schutzgebietnachwasserrecht(land,stelle); 
    759  
    760 COMMENT ON TABLE  ax_schutzgebietnachwasserrecht        IS 'S c h u t z g e b i e t   n a c h   W a s s s e r r e c h t'; 
     705CREATE UNIQUE INDEX ax_schutzgebietnachwasserrecht_gml ON ax_schutzgebietnachwasserrecht USING btree (gml_id, beginnt); 
     706CREATE        INDEX ax_schutzgebietnachwasserrecht_afs ON ax_schutzgebietnachwasserrecht USING btree (land, stelle); 
     707 
     708COMMENT ON TABLE  ax_schutzgebietnachwasserrecht        IS '__: (NREO) "Schutzgebiet nach Wassserrecht" ist ..'; 
    761709COMMENT ON COLUMN ax_schutzgebietnachwasserrecht.gml_id IS 'Identifikator, global eindeutig'; 
     710 
    762711 
    763712-- S c h u t z g e b i e t   n a c h   N a t u r,  U m w e l t  o d e r  B o d e n s c h u t z r e c h t 
     
    765714CREATE TABLE ax_schutzgebietnachnaturumweltoderbodenschutzrecht ( 
    766715     ogc_fid             serial NOT NULL, 
    767      gml_id              character(16), 
    768      identifier          character(44), 
    769      beginnt             character(20), 
    770      endet               character(20), 
    771      advstandardmodell   varchar, 
    772      anlass              varchar, 
     716     gml_id              character varying NOT NULL, 
     717     identifier          character varying, 
     718     beginnt             character(20), 
     719     endet               character(20), 
     720     advstandardmodell   character varying[], 
     721     sonstigesmodell     character varying[], 
     722     anlass              character varying, 
    773723     artderfestlegung    integer, 
    774724     land                integer, 
    775      stelle              varchar, 
     725     stelle              character varying, 
    776726     CONSTRAINT ax_schutzgebietnachnaturumweltoderbodenschutzrecht_pk PRIMARY KEY (ogc_fid) 
    777727); 
     
    779729SELECT AddGeometryColumn('ax_schutzgebietnachnaturumweltoderbodenschutzrecht','dummy',:alkis_epsg,'POINT',2); 
    780730 
    781 CREATE UNIQUE INDEX ax_schutzgebietnachnaturumweltoderbodenschutzrecht_gml ON ax_schutzgebietnachnaturumweltoderbodenschutzrecht USING btree (gml_id,beginnt); 
    782 CREATE INDEX ax_schutzgebietnachnaturumweltoderbodenschutzrecht_afs ON ax_schutzgebietnachnaturumweltoderbodenschutzrecht(land,stelle); 
    783  
    784 COMMENT ON TABLE  ax_schutzgebietnachnaturumweltoderbodenschutzrecht IS 'S c h u t z g e b i e t   n a c h   N a t u r,  U m w e l t  o d e r  B o d e n s c h u t z r e c h t'; 
     731CREATE UNIQUE INDEX ax_schutzgebietnachnaturumweltoderbodenschutzrecht_gml ON ax_schutzgebietnachnaturumweltoderbodenschutzrecht USING btree (gml_id, beginnt); 
     732CREATE        INDEX ax_schutzgebietnachnaturumweltoderbodenschutzrecht_afs ON ax_schutzgebietnachnaturumweltoderbodenschutzrecht USING btree (land, stelle); 
     733 
     734COMMENT ON TABLE  ax_schutzgebietnachnaturumweltoderbodenschutzrecht IS '__: (NREO) "Schutzgebiet nach Natur, Umwelt oder Bodenschutzrecht" ist ..'; 
    785735COMMENT ON COLUMN ax_schutzgebietnachnaturumweltoderbodenschutzrecht.gml_id IS 'Identifikator, global eindeutig'; 
    786736 
     
    790740CREATE TABLE ax_schutzzone ( 
    791741     ogc_fid             serial NOT NULL, 
    792      gml_id              character(16), 
    793      identifier          character(44), 
    794      beginnt             character(20), 
    795      endet               character(20), 
    796      advstandardmodell   varchar, 
    797      anlass              varchar, 
     742     gml_id              character varying NOT NULL, 
     743     identifier          character varying, 
     744     beginnt             character(20), 
     745     endet               character(20), 
     746     advstandardmodell   character varying[], 
     747     sonstigesmodell     character varying[], 
     748     anlass              character varying, 
    798749     "zone"              integer, 
    799      art                 varchar[], 
     750     art                 character varying[], 
     751     -- Beziehungen: 
     752     istteilvon character varying, --> AX_SchutzgebietNachWasserrecht 
    800753     CONSTRAINT ax_schutzzone_pk PRIMARY KEY (ogc_fid) 
    801754); 
     
    803756SELECT AddGeometryColumn('ax_schutzzone','wkb_geometry',:alkis_epsg,'GEOMETRY',2); -- POLYGON/MULTIPOLYGON 
    804757 
    805 CREATE INDEX ax_schutzzone_geom_idx   ON ax_schutzzone USING gist (wkb_geometry); 
    806 CREATE UNIQUE INDEX ax_schutzzone_gml ON ax_schutzzone USING btree (gml_id,beginnt); 
    807  
    808 COMMENT ON TABLE  ax_schutzzone        IS 'S c h u t z z o n e'; 
     758CREATE        INDEX ax_schutzzone_geom_idx ON ax_schutzzone USING gist  (wkb_geometry); 
     759CREATE UNIQUE INDEX ax_schutzzone_gml      ON ax_schutzzone USING btree (gml_id, beginnt); 
     760CREATE        INDEX ax_schutzzone_itv      ON ax_schutzzone USING btree (istteilvon); 
     761 
     762COMMENT ON TABLE  ax_schutzzone        IS '__: (REO) "Schutzzone" ist ..'; 
    809763COMMENT ON COLUMN ax_schutzzone.gml_id IS 'Identifikator, global eindeutig'; 
     764 
     765COMMENT ON COLUMN ax_schutzzone.istteilvon IS '-> Beziehung zu AX_SchutzgebietNachWasserrecht (1)'; 
    810766 
    811767 
     
    814770CREATE TABLE ax_topographischelinie ( 
    815771     ogc_fid             serial NOT NULL, 
    816      gml_id              character(16), 
    817      identifier          character(44), 
    818      beginnt             character(20), 
    819      endet               character(20), 
    820      advstandardmodell   varchar, 
    821      anlass              varchar, 
     772     gml_id              character varying NOT NULL, 
     773     identifier          character varying, 
     774     beginnt             character(20), 
     775     endet               character(20), 
     776     advstandardmodell   character varying[], 
     777     sonstigesmodell     character varying[], 
     778     anlass              character varying, 
    822779     liniendarstellung   integer, 
    823      sonstigeeigenschaft varchar, 
     780     sonstigeeigenschaft character varying, 
    824781     CONSTRAINT ax_topographischelinie_pk PRIMARY KEY (ogc_fid) 
    825782); 
     
    827784SELECT AddGeometryColumn('ax_topographischelinie','wkb_geometry',:alkis_epsg,'LINESTRING',2); 
    828785 
    829 CREATE INDEX ax_topographischelinie_geom_idx   ON ax_topographischelinie USING gist(wkb_geometry); 
    830 CREATE UNIQUE INDEX ax_topographischelinie_gml ON ax_topographischelinie USING btree (gml_id,beginnt); 
    831  
    832 COMMENT ON TABLE  ax_topographischelinie        IS 'T o p o g r a p h i s c h e   L i n i e'; 
     786CREATE INDEX ax_topographischelinie_geom_idx   ON ax_topographischelinie USING gist  (wkb_geometry); 
     787CREATE UNIQUE INDEX ax_topographischelinie_gml ON ax_topographischelinie USING btree (gml_id, beginnt); 
     788 
     789COMMENT ON TABLE  ax_topographischelinie        IS '__: (REO) "Topographische Linie" ist ..'; 
    833790COMMENT ON COLUMN ax_topographischelinie.gml_id IS 'Identifikator, global eindeutig'; 
    834791 
     
    846803CREATE TABLE ap_ppo ( 
    847804     ogc_fid                  serial NOT NULL, 
    848      gml_id                   character(16), 
    849      identifier               character(44), 
     805     gml_id                   character varying NOT NULL, 
     806     identifier               character varying, 
    850807     beginnt                  character(20), 
    851808     endet                    character(20), 
    852      advstandardmodell        varchar[], 
    853      sonstigesmodell          varchar, 
    854      anlass                   varchar, 
    855      signaturnummer           varchar, 
     809     advstandardmodell        character varying[], 
     810     sonstigesmodell          character varying[], 
     811     anlass                   character varying, 
     812     signaturnummer           character varying, 
    856813     darstellungsprioritaet   integer, 
    857      art                      varchar, 
     814     art                      character varying, 
    858815     drehwinkel               double precision, 
     816     -- Beziehungen: 
     817     dientzurdarstellungvon   character varying[], --> aa_objekt 
    859818     CONSTRAINT ap_ppo_pk PRIMARY KEY (ogc_fid) 
    860819); 
     
    862821SELECT AddGeometryColumn('ap_ppo','wkb_geometry',:alkis_epsg,'GEOMETRY',2); -- POINT/MULTIPOLYGON 
    863822 
    864 CREATE INDEX ap_ppo_geom_idx   ON ap_ppo USING gist (wkb_geometry); 
    865 CREATE UNIQUE INDEX ap_ppo_gml ON ap_ppo USING btree (gml_id,beginnt); 
    866 CREATE INDEX ap_ppo_endet      ON ap_ppo USING btree (endet); 
    867  
    868 COMMENT ON TABLE  ap_ppo        IS 'PPO: Punktförmiges PrÀsentationsobjekt'; 
     823CREATE        INDEX ap_ppo_geom_idx   ON ap_ppo USING gist  (wkb_geometry); 
     824CREATE UNIQUE INDEX ap_ppo_gml        ON ap_ppo USING btree (gml_id, beginnt); 
     825CREATE        INDEX ap_ppo_endet      ON ap_ppo USING btree (endet); 
     826CREATE        INDEX ap_ppo_dzdv       ON ap_ppo USING gin   (dientzurdarstellungvon); 
     827 
     828COMMENT ON TABLE  ap_ppo        IS 'AAA-Basisschema / AAA-PrÀsentationsobjekte: "PPO" Punktförmiges PrÀsentationsobjekt'; 
    869829COMMENT ON COLUMN ap_ppo.gml_id IS 'Identifikator, global eindeutig'; 
     830 
     831COMMENT ON COLUMN ap_ppo.dientzurdarstellungvon IS '-> Beziehung zu aa_objekt (0..*): Durch den Verweis auf einen Set beliebiger AFIS-ALKIS-ATKIS-Objekte gibt das PrÀsentationsobjekt an, zu wessen PrÀsentation es dient. Dieser Verweis kann fÃŒr FortfÃŒhrungen ausgenutzt werden oder zur UnterdrÃŒckung von StandardprÀsentationen der zugrundeliegenden ALKIS-ATKIS-Objekte. 
     832Ein Verweis auf ein AA_Objekt vom Typ AP_GPO ist nicht zugelassen.'; 
    870833 
    871834 
     
    874837CREATE TABLE ap_lpo ( 
    875838     ogc_fid                  serial NOT NULL, 
    876      gml_id                   character(16), 
    877      identifier               character(44), 
     839     gml_id                   character varying NOT NULL, 
     840     identifier               character varying, 
    878841     beginnt                  character(20), 
    879842     endet                    character(20), 
    880      advstandardmodell        varchar[], 
    881      anlass                   varchar, 
    882      signaturnummer           varchar, 
     843     advstandardmodell        character varying[], 
     844     sonstigesmodell          character varying[], 
     845     anlass                   character varying, 
     846     signaturnummer           character varying, 
    883847     darstellungsprioritaet   integer, 
    884      art                      varchar, 
    885      CONSTRAINT ap_lpo_pk PRIMARY KEY (ogc_fid) 
    886 ); 
     848     art                      character varying, 
     849     -- Beziehungen: 
     850     dientzurdarstellungvon   character varying[], --> aa_objekt 
     851     CONSTRAINT ap_lpo_pk     PRIMARY KEY (ogc_fid) 
     852); 
     853 
    887854SELECT AddGeometryColumn('ap_lpo','wkb_geometry',:alkis_epsg,'GEOMETRY',2); -- LINESTRING/MULTILINESTRING 
    888855 
    889 CREATE INDEX ap_lpo_geom_idx   ON ap_lpo USING gist (wkb_geometry); 
    890 CREATE UNIQUE INDEX ap_lpo_gml ON ap_lpo USING btree (gml_id,beginnt); 
     856CREATE INDEX ap_lpo_geom_idx   ON ap_lpo USING gist  (wkb_geometry); 
     857CREATE UNIQUE INDEX ap_lpo_gml ON ap_lpo USING btree (gml_id, beginnt); 
    891858CREATE INDEX ap_lpo_endet      ON ap_lpo USING btree (endet); 
    892  
    893 COMMENT ON TABLE  ap_lpo        IS 'LPO: Linienförmiges PrÀsentationsobjekt'; 
     859CREATE INDEX ap_lpo_dzdv       ON ap_lpo USING gin   (dientzurdarstellungvon); 
     860 
     861COMMENT ON TABLE  ap_lpo        IS 'AAA-Basisschema / AAA-PrÀsentationsobjekte: "LPO" Linienförmiges PrÀsentationsobjekt'; 
    894862COMMENT ON COLUMN ap_lpo.gml_id IS 'Identifikator, global eindeutig'; 
     863 
     864COMMENT ON COLUMN ap_lpo.dientzurdarstellungvon IS '-> Beziehung zu aa_objekt (0..*): Durch den Verweis auf einen Set beliebiger AFIS-ALKIS-ATKIS-Objekte gibt das PrÀsentationsobjekt an, zu wessen PrÀsentation es dient. Dieser Verweis kann fÃŒr FortfÃŒhrungen ausgenutzt werden oder zur UnterdrÃŒckung von StandardprÀsentationen der zugrundeliegenden ALKIS-ATKIS-Objekte. 
     865Ein Verweis auf ein AA_Objekt vom Typ AP_GPO ist nicht zugelassen.'; 
    895866 
    896867 
     
    899870CREATE TABLE ap_pto ( 
    900871     ogc_fid                  serial NOT NULL, 
    901      gml_id                   character(16), 
    902      identifier               character(44), 
     872     gml_id                   character varying NOT NULL, 
     873     identifier               character varying, 
    903874     beginnt                  character(20), 
    904875     endet                    character(20), 
    905      advstandardmodell        varchar[], 
    906      anlass                   varchar, 
    907      schriftinhalt            varchar, 
     876     advstandardmodell        character varying[], 
     877     sonstigesmodell          character varying[], 
     878     anlass                   character varying, 
     879     schriftinhalt            character varying,  -- Label: anzuzeigender Text 
    908880     fontsperrung             double precision, 
    909881     skalierung               double precision, 
    910      horizontaleausrichtung   varchar, 
    911      vertikaleausrichtung     varchar, 
    912      signaturnummer           varchar, 
     882     horizontaleausrichtung   character varying, 
     883     vertikaleausrichtung     character varying, 
     884     signaturnummer           character varying, 
    913885     darstellungsprioritaet   integer, 
    914      art                      varchar,            -- Inhalte z.B. "ZAE_NEN" siehe unten 
    915      drehwinkel               double precision,   -- falsche Masseinheit fÃŒr Mapserver, im View umrechnen 
     886     art                      character varying,   -- Inhalte z.B. "ZAE_NEN" siehe unten 
     887     drehwinkel               double precision,    -- falsche Masseinheit fÃŒr Mapserver, im View umrechnen 
     888     -- Beziehungen: 
     889     dientzurdarstellungvon   character varying[], --> aa_objekt 
     890     hat                      character varying,   --> ap_lpo 
    916891     CONSTRAINT ap_pto_pk PRIMARY KEY (ogc_fid) 
    917892); 
     
    919894SELECT AddGeometryColumn('ap_pto','wkb_geometry',:alkis_epsg,'POINT',2); 
    920895 
    921 CREATE INDEX ap_pto_geom_idx   ON ap_pto USING gist (wkb_geometry); 
    922 CREATE UNIQUE INDEX ap_pto_gml ON ap_pto USING btree (gml_id,beginnt); 
    923 CREATE INDEX art_idx           ON ap_pto USING btree (art); 
     896CREATE INDEX ap_pto_geom_idx   ON ap_pto USING gist  (wkb_geometry); 
     897CREATE UNIQUE INDEX ap_pto_gml ON ap_pto USING btree (gml_id, beginnt); 
     898CREATE INDEX ap_pto_art_idx    ON ap_pto USING btree (art); 
    924899CREATE INDEX ap_pto_endet_idx  ON ap_pto USING btree (endet); 
    925900CREATE INDEX ap_pto_sn_idx     ON ap_pto USING btree (signaturnummer); 
    926  
    927 COMMENT ON TABLE  ap_pto               IS 'PTO: Textförmiges PrÀsentationsobjekt mit punktförmiger Textgeometrie '; 
     901CREATE INDEX ap_pto_dzdv       ON ap_pto USING gin   (dientzurdarstellungvon); 
     902CREATE INDEX ap_pto_hat        ON ap_pto USING btree (hat); 
     903 
     904COMMENT ON TABLE  ap_pto               IS 'AAA-Basisschema / AAA-PrÀsentationsobjekte: "PTO" Textförmiges PrÀsentationsobjekt mit punktförmiger Textgeometrie '; 
    928905COMMENT ON COLUMN ap_pto.gml_id        IS 'Identifikator, global eindeutig'; 
    929906COMMENT ON COLUMN ap_pto.schriftinhalt IS 'Label: anzuzeigender Text'; 
    930 COMMENT ON INDEX  art_idx              IS 'Suchindex auf hÀufig benutztem Filterkriterium'; 
    931  
    932  
    933 -- Die Abfrage "select distinct art from ap_pto" liefert folgende Werte: 
    934 -- "ART""BezKlassifizierungStrasse""BSA""BWF""FKT""Fliessgewaesser""FreierText""Friedhof""Gewanne" 
    935 -- "GFK""GKN""Halde_LGT""HNR""MDB""NAM""PKN""Platz""PNR""SPO""Strasse" 
    936 -- "urn:adv:fachdatenverbindung:AA_Antrag""WE1_TEXT""Weg""ZAE_NEN""ZNM""<NULL>" 
    937  
     907 
     908COMMENT ON COLUMN ap_pto.dientzurdarstellungvon IS '-> Beziehung zu aa_objekt (0..*): Durch den Verweis auf einen Set beliebiger AFIS-ALKIS-ATKIS-Objekte gibt das PrÀsentationsobjekt an, zu wessen PrÀsentation es dient. Dieser Verweis kann fÃŒr FortfÃŒhrungen ausgenutzt werden oder zur UnterdrÃŒckung von StandardprÀsentationen der zugrundeliegenden ALKIS-ATKIS-Objekte. 
     909Ein Verweis auf ein AA_Objekt vom Typ AP_GPO ist nicht zugelassen.'; 
     910COMMENT ON COLUMN ap_pto.hat           IS '-> Beziehung zu ap_lpo (0..1): Die Relation ermöglicht es, einem textförmigen PrÀsentationsobjekt ein linienförmiges PrÀsentationsobjekt zuzuweisen. Einziger bekannter Anwendungsfall ist der Zuordnungspfeil. 
     911Die Anwendung dieser Relation ist nur zugelassen, wenn sie im entsprechenden Signaturenkatalog beschrieben ist.'; 
     912 
     913COMMENT ON INDEX ap_pto_art_idx        IS 'Suchindex auf hÀufig benutztem Filterkriterium'; 
    938914 
    939915 
     
    942918CREATE TABLE ap_lto ( 
    943919     ogc_fid                  serial NOT NULL, 
    944      gml_id                   character(16), 
    945      identifier               character(44), 
     920     gml_id                   character varying NOT NULL, 
     921     identifier               character varying, 
    946922     beginnt                  character(20), 
    947923     endet                    character(20), 
    948      advstandardmodell        varchar, 
    949      sonstigesmodell          varchar, 
    950      anlass                   varchar, 
    951      art                      varchar, 
    952      schriftinhalt            varchar, 
     924     advstandardmodell        character varying[], 
     925     sonstigesmodell          character varying[], 
     926     anlass                   character varying, 
     927     art                      character varying, 
     928     schriftinhalt            character varying, 
    953929     fontsperrung             double precision, 
    954930     skalierung               double precision, 
    955      horizontaleausrichtung   varchar, 
    956      vertikaleausrichtung     varchar, 
    957      signaturnummer           varchar, 
     931     horizontaleausrichtung   character varying, 
     932     vertikaleausrichtung     character varying, 
     933     signaturnummer           character varying, 
    958934     darstellungsprioritaet   integer, 
     935     -- Beziehungen: 
     936     dientzurdarstellungvon   character varying[], --> aa_objekt  
     937     hat                      character varying, --> ap_lpo 
    959938     CONSTRAINT ap_lto_pk PRIMARY KEY (ogc_fid) 
    960939); 
     
    962941SELECT AddGeometryColumn('ap_lto','wkb_geometry',:alkis_epsg,'LINESTRING',2); 
    963942 
    964 CREATE INDEX ap_lto_geom_idx   ON ap_lto USING gist (wkb_geometry); 
    965 CREATE UNIQUE INDEX ap_lto_gml ON ap_lto USING btree (gml_id,beginnt); 
     943CREATE INDEX ap_lto_geom_idx   ON ap_lto USING gist  (wkb_geometry); 
     944CREATE UNIQUE INDEX ap_lto_gml ON ap_lto USING btree (gml_id, beginnt); 
     945CREATE INDEX ap_lto_dzdv       ON ap_lto USING gin   (dientzurdarstellungvon); 
    966946CREATE INDEX ap_lto_endet_idx  ON ap_lto USING btree (endet); 
    967  
    968 COMMENT ON TABLE  ap_lto        IS 'LTO: Textförmiges PrÀsentationsobjekt mit linienförmiger Textgeometrie'; 
     947CREATE INDEX ap_lto_hat        ON ap_lto USING btree (hat); 
     948 
     949COMMENT ON TABLE  ap_lto        IS 'AAA-Basisschema / AAA-PrÀsentationsobjekte: "LTO" Textförmiges PrÀsentationsobjekt mit linienförmiger Textgeometrie'; 
    969950COMMENT ON COLUMN ap_lto.gml_id IS 'Identifikator, global eindeutig'; 
     951 
     952COMMENT ON COLUMN ap_lto.dientzurdarstellungvon IS '-> Beziehung zu aa_objekt (0..*): Durch den Verweis auf einen Set beliebiger AFIS-ALKIS-ATKIS-Objekte gibt das PrÀsentationsobjekt an, zu wessen PrÀsentation es dient. Dieser Verweis kann fÃŒr FortfÃŒhrungen ausgenutzt werden oder zur UnterdrÃŒckung von StandardprÀsentationen der zugrundeliegenden ALKIS-ATKIS-Objekte. 
     953Ein Verweis auf ein AA_Objekt vom Typ AP_GPO ist nicht zugelassen.'; 
     954COMMENT ON COLUMN ap_lto.hat    IS '-> Beziehung zu ap_lpo (0..1): Die Relation ermöglicht es, einem textförmigen PrÀsentationsobjekt ein linienförmiges PrÀsentationsobjekt zuzuweisen. Einziger bekannter Anwendungsfall ist der Zuordnungspfeil. 
     955Die Anwendung dieser Relation ist nur zugelassen, wenn sie im entsprechenden Signaturenkatalog beschrieben ist. '; 
    970956 
    971957 
     
    974960CREATE TABLE ap_darstellung ( 
    975961     ogc_fid                  serial NOT NULL, 
    976      gml_id                   character(16), 
    977      identifier               character(44), 
     962     gml_id                   character varying NOT NULL, 
     963     identifier               character varying, 
    978964     beginnt                  character(20), -- Datumsformat 
    979965     endet                    character(20), -- Datumsformat 
    980      advstandardmodell        varchar[], 
    981      anlass                   varchar, 
    982      art                      varchar, 
     966     advstandardmodell        character varying[], 
     967     sonstigesmodell          character varying[], 
     968     anlass                   character varying, 
     969     art                      character varying, 
    983970     darstellungsprioritaet   integer, 
    984      signaturnummer           varchar, 
     971     signaturnummer           character varying, 
    985972     positionierungsregel     integer, 
     973     -- Beziehungen: 
     974     dientzurdarstellungvon   character varying[], --> aa_objekt 
    986975     CONSTRAINT ap_darstellung_pk PRIMARY KEY (ogc_fid) 
    987976); 
    988977 
    989 -- Dummy-Eintrag in Metatabelle 
    990978SELECT AddGeometryColumn('ap_darstellung','dummy',:alkis_epsg,'POINT',2); 
    991979 
    992 CREATE UNIQUE INDEX ap_darstellung_gml ON ap_darstellung USING btree (gml_id,beginnt); 
     980CREATE UNIQUE INDEX ap_darstellung_gml ON ap_darstellung USING btree (gml_id, beginnt); 
    993981CREATE INDEX ap_darstellung_endet_idx  ON ap_darstellung USING btree (endet); 
    994  
    995 COMMENT ON TABLE  ap_darstellung        IS 'A P  D a r s t e l l u n g'; 
     982CREATE INDEX ap_darstellung_dzdv       ON ap_darstellung  USING gin  (dientzurdarstellungvon); 
     983 
     984COMMENT ON TABLE  ap_darstellung        IS 'AAA-Basisschema / AAA-PrÀsentationsobjekte: "AP-Darstellung"'; 
    996985COMMENT ON COLUMN ap_darstellung.gml_id IS 'Identifikator, global eindeutig'; 
     986 
     987COMMENT ON COLUMN ap_darstellung.dientzurdarstellungvon IS '-> Beziehung zu aa_objekt (0..*): Durch den Verweis auf einen Set beliebiger AFIS-ALKIS-ATKIS-Objekte gibt das PrÀsentationsobjekt an, zu wessen PrÀsentation es dient. Dieser Verweis kann fÃŒr FortfÃŒhrungen ausgenutzt werden oder zur UnterdrÃŒckung von StandardprÀsentationen der zugrundeliegenden ALKIS-ATKIS-Objekte. 
     988Ein Verweis auf ein AA_Objekt vom Typ AP_GPO ist nicht zugelassen.'; 
    997989 
    998990 
     
    10081000-- Kennung 11001 
    10091001CREATE TABLE ax_flurstueck ( 
    1010      ogc_fid                       serial NOT NULL, 
    1011      gml_id                        character(16),         -- Datenbank-Tabelle interner SchlÃŒssel 
     1002     ogc_fid                          serial NOT NULL, 
     1003     gml_id                           character varying NOT NULL,  -- Datenbank-Tabelle interner SchlÃŒssel 
    10121004 
    10131005     -- GID: AX_Flurstueck_Kerndaten 
    10141006     -- 'FlurstÃŒck_Kerndaten' enthÀlt Eigenschaften des FlurstÃŒcks, die auch fÃŒr andere FlurstÃŒcksobjektarten gelten (z.B. Historisches FlurstÃŒck). 
    1015      land                          integer,         -- 
    1016      gemarkungsnummer              integer,            -- 
    1017      flurnummer                    integer,               -- Teile des FlurstÃŒckskennzeichens 
    1018      zaehler                       integer,            --    (redundant zu flurstueckskennzeichen) 
    1019      nenner                        integer,         -- 
     1007     land                             integer,            -- 
     1008     gemarkungsnummer                 integer,               -- 
     1009     flurnummer                       integer,                  -- Teile des FlurstÃŒckskennzeichens 
     1010     zaehler                          integer,               --    (redundant zu flurstueckskennzeichen) 
     1011     nenner                           integer,            -- 
     1012     flurstuecksfolge                 character varying, 
    10201013     -- daraus abgeleitet: 
    1021      flurstueckskennzeichen        character(20),         -- Inhalt rechts mit __ auf 20 aufgefÃŒllt 
    1022      amtlicheflaeche               double precision,             -- AFL 
    1023      abweichenderrechtszustand     varchar default 'false',      -- ARZ 
    1024      zweifelhafterFlurstuecksnachweis varchar default 'false',   -- ZFM Boolean 
    1025      rechtsbehelfsverfahren        varchar default 'false',      -- RBV 
    1026      zeitpunktderentstehung        varchar,                      -- ZDE  Inhalt jjjj-mm-tt  besser Format date ? 
    1027      gemeinde                      integer, 
     1014     flurstueckskennzeichen           character(20),      -- Inhalt rechts mit __ auf 20 aufgefÃŒllt 
     1015     amtlicheflaeche                  double precision,                   -- AFL 
     1016     abweichenderrechtszustand        character varying DEFAULT 'false',  -- ARZ 
     1017     rechtsbehelfsverfahren           character varying DEFAULT 'false',  -- RBV 
     1018     zweifelhafterFlurstuecksnachweis character varying DEFAULT 'false',  -- ZFM Boolean 
     1019     zeitpunktderentstehung           character varying,                  -- ZDE  Inhalt jjjj-mm-tt  besser Format date ? 
     1020     gemeinde                         integer, 
    10281021     -- GID: ENDE AX_Flurstueck_Kerndaten 
    10291022 
    1030      identifier                    character(44), 
    1031      beginnt                       character(20),         -- Timestamp der Entstehung 
    1032      endet                         character(20),         -- Timestamp des Untergangs 
    1033      advstandardmodell             varchar,               -- steuert die Darstellung nach Kartentyp 
    1034      anlass                        varchar, 
    1035      name                          varchar[], 
    1036      regierungsbezirk              integer, 
    1037      kreis                         integer, 
    1038      stelle                        varchar[], 
    1039      angabenzumabschnittflurstueck varchar[], 
    1040      kennungschluessel             varchar[], 
    1041      flaechedesabschnitts          double precision[], 
     1023     identifier                       character varying, 
     1024     beginnt                          character(20),         -- Timestamp der Entstehung 
     1025     endet                            character(20),         -- Timestamp des Untergangs 
     1026     advstandardmodell                character varying[],   -- steuert die Darstellung nach Kartentyp 
     1027     sonstigesmodell                  character varying[], 
     1028     anlass                           character varying, 
     1029     name                             character varying[], 
     1030     regierungsbezirk                 integer, 
     1031     kreis                            integer, 
     1032     stelle                           character varying[], 
     1033     angabenzumabschnittflurstueck    character varying[], 
     1034     kennungschluessel                character varying[], 
     1035     flaechedesabschnitts             double precision[], 
    10421036     angabenzumabschnittnummeraktenzeichen integer[], 
    1043      angabenzumabschnittbemerkung  varchar[], 
     1037     angabenzumabschnittbemerkung     character varying[], 
     1038     -- Beziehungen: 
     1039     beziehtsichaufflurstueck         character varying[], --> ax_flurstueck (invers) 
     1040     zeigtauf                         character varying[], --> ax_lagebezeichnungohnehausnummer  
     1041     istgebucht                       character varying,   --> ax_buchungsstelle  
     1042     weistauf                         character varying[], --> ax_lagebezeichnungmithausnummer  
     1043     gehoertanteiligzu                character varying[], --> ax_flurstueck 
    10441044     CONSTRAINT ax_flurstueck_pk PRIMARY KEY (ogc_fid) 
    10451045); 
     
    10471047SELECT AddGeometryColumn('ax_flurstueck','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
    10481048 
    1049 CREATE INDEX ax_flurstueck_geom_idx   ON ax_flurstueck USING gist (wkb_geometry); 
    1050 CREATE UNIQUE INDEX ax_flurstueck_gml ON ax_flurstueck USING btree (gml_id,beginnt); 
    1051 CREATE INDEX ax_flurstueck_lgfzn ON ax_flurstueck USING btree (land,gemarkungsnummer,flurnummer,zaehler,nenner); 
    1052 CREATE INDEX ax_flurstueck_arz ON ax_flurstueck USING btree (abweichenderrechtszustand); 
    1053  
    1054   COMMENT ON TABLE  ax_flurstueck                           IS '"F l u r s t u e c k" ist ein Teil der ErdoberflÀche, der von einer im Liegenschaftskataster festgelegten Grenzlinie umschlossen und mit einer Nummer bezeichnet ist. Es ist die Buchungseinheit des Liegenschaftskatasters.'; 
    1055   COMMENT ON COLUMN ax_flurstueck.gml_id                    IS 'Identifikator, global eindeutig'; 
    1056   COMMENT ON COLUMN ax_flurstueck.flurnummer                IS 'FLN "Flurnummer" ist die von der Katasterbehörde zur eindeutigen Bezeichnung vergebene Nummer einer Flur, die eine Gruppe von zusammenhÀngenden FlurstÃŒcken innerhalb einer Gemarkung umfasst.'; 
    1057   COMMENT ON COLUMN ax_flurstueck.zaehler                   IS 'ZAE  Dieses Attribut enthÀlt den ZÀhler der FlurstÃŒcknummer'; 
    1058   COMMENT ON COLUMN ax_flurstueck.nenner                    IS 'NEN  Dieses Attribut enthÀlt den Nenner der FlurstÃŒcknummer'; 
    1059   COMMENT ON COLUMN ax_flurstueck.flurstueckskennzeichen    IS '"FlurstÃŒckskennzeichen" ist ein von der Katasterbehörde zur eindeutigen Bezeichnung des FlurstÃŒcks vergebenes Ordnungsmerkmal. 
     1049CREATE INDEX ax_flurstueck_geom_idx   ON ax_flurstueck USING gist  (wkb_geometry); 
     1050CREATE UNIQUE INDEX ax_flurstueck_gml ON ax_flurstueck USING btree (gml_id, beginnt); 
     1051CREATE INDEX ax_flurstueck_lgfzn      ON ax_flurstueck USING btree (land, gemarkungsnummer, flurnummer, zaehler, nenner); 
     1052CREATE INDEX ax_flurstueck_arz        ON ax_flurstueck USING btree (abweichenderrechtszustand); 
     1053CREATE INDEX ax_flurstueck_bsaf       ON ax_flurstueck USING gin (beziehtsichaufflurstueck); 
     1054CREATE INDEX ax_flurstueck_gaz        ON ax_flurstueck USING gin (gehoertanteiligzu); 
     1055CREATE INDEX ax_flurstueck_ig         ON ax_flurstueck USING btree (istgebucht); 
     1056CREATE INDEX ax_flurstueck_kennz      ON ax_flurstueck USING btree (flurstueckskennzeichen); 
     1057CREATE INDEX ax_flurstueck_wa         ON ax_flurstueck USING gin (weistauf); 
     1058CREATE INDEX ax_flurstueck_za         ON ax_flurstueck USING gin (zeigtauf); 
     1059 
     1060COMMENT ON TABLE  ax_flurstueck               IS 'FlurstÃŒcke, Lage, Punkte / Angaben zum FlurstÃŒck: (REO) "FlurstÃŒck" ist ein Teil der ErdoberflÀche, der von einer im Liegenschaftskataster festgelegten Grenzlinie umschlossen und mit einer Nummer bezeichnet ist. Es ist die Buchungseinheit des Liegenschaftskatasters.'; 
     1061COMMENT ON COLUMN ax_flurstueck.gml_id        IS 'Identifikator, global eindeutig'; 
     1062COMMENT ON COLUMN ax_flurstueck.flurnummer    IS 'FLN "Flurnummer" ist die von der Katasterbehörde zur eindeutigen Bezeichnung vergebene Nummer einer Flur, die eine Gruppe von zusammenhÀngenden FlurstÃŒcken innerhalb einer Gemarkung umfasst.'; 
     1063COMMENT ON COLUMN ax_flurstueck.zaehler       IS 'ZAE  Dieses Attribut enthÀlt den ZÀhler der FlurstÃŒcknummer'; 
     1064COMMENT ON COLUMN ax_flurstueck.nenner        IS 'NEN  Dieses Attribut enthÀlt den Nenner der FlurstÃŒcknummer'; 
     1065COMMENT ON COLUMN ax_flurstueck.flurstueckskennzeichen IS '"FlurstÃŒckskennzeichen" ist ein von der Katasterbehörde zur eindeutigen Bezeichnung des FlurstÃŒcks vergebenes Ordnungsmerkmal. 
    10601066Die Attributart setzt sich aus den nachfolgenden expliziten Attributarten in der angegebenen Reihenfolge zusammen: 
    10611067 1.  Land (2 Stellen) 
     
    10691075Da die Flurnummer und die FlurstÃŒcksfolge optional sind, sind aufgrund der bundeseinheitlichen Definition im FlurstÃŒckskennzeichen die entsprechenden Stellen, sofern sie nicht belegt sind, durch Unterstrich "_" ersetzt. 
    10701076Gleiches gilt fÃŒr FlurstÃŒcksnummern ohne Nenner, hier ist der fehlende Nenner im FlurstÃŒckskennzeichen durch Unterstriche zu ersetzen.'; 
    1071   COMMENT ON COLUMN ax_flurstueck.amtlicheflaeche           IS 'AFL "Amtliche FlÀche" ist der im Liegenschaftskataster festgelegte FlÀcheninhalt des FlurstÃŒcks in [qm]. FlurstÃŒcksflÀchen kleiner 0,5 qm können mit bis zu zwei Nachkommastellen gefÃŒhrt werden, ansonsten ohne Nachkommastellen.'; 
    1072   COMMENT ON COLUMN ax_flurstueck.abweichenderrechtszustand IS 'ARZ "Abweichender Rechtszustand" ist ein Hinweis darauf, dass außerhalb des Grundbuches in einem durch Gesetz geregelten Verfahren der Bodenordnung (siehe Objektart "Bau-, Raum- oder Bodenordnungsrecht", AA "Art der Festlegung", Werte 1750, 1770, 2100 bis 2340) ein neuer Rechtszustand eingetreten ist und das amtliche Verzeichnis der jeweiligen ausfÃŒhrenden Stelle maßgebend ist.'; 
    1073   COMMENT ON COLUMN ax_flurstueck.zweifelhafterFlurstuecksnachweis IS 'ZFM "Zweifelhafter FlurstÃŒcksnachweis" ist eine Kennzeichnung eines FlurstÃŒcks, dessen Angaben nicht zweifelsfrei berichtigt werden können.'; 
    1074   COMMENT ON COLUMN ax_flurstueck.rechtsbehelfsverfahren    IS 'RBV "Rechtsbehelfsverfahren" ist der Hinweis darauf, dass bei dem FlurstÃŒck ein laufendes Rechtsbehelfsverfahren anhÀngig ist.'; 
    1075   COMMENT ON COLUMN ax_flurstueck.zeitpunktderentstehung    IS 'ZDE "Zeitpunkt der Entstehung" ist der Zeitpunkt, zu dem das FlurstÃŒck fachlich entstanden ist.'; 
    1076   COMMENT ON COLUMN ax_flurstueck.gemeinde                  IS 'Gemeindekennzeichen zur Zuordnung der FlustÃŒcksdaten zu einer Gemeinde.'; 
    1077   COMMENT ON COLUMN ax_flurstueck.name                      IS 'Array mit FortfÃŒhrungsjahr und -Nummer'; 
    1078   COMMENT ON COLUMN ax_flurstueck.regierungsbezirk          IS 'Regierungsbezirk'; 
    1079   COMMENT ON COLUMN ax_flurstueck.kreis                     IS 'Kreis'; 
    1080  
    1081  
    1082 -- Kennzeichen indizieren, z.B. fuer Suche aus der Historie 
    1083 CREATE INDEX ax_flurstueck_kennz 
    1084    ON ax_flurstueck USING btree (flurstueckskennzeichen /* ASC NULLS LAST*/ ); 
    1085 COMMENT ON INDEX ax_flurstueck_kennz IS 'Suche nach FlurstÃŒckskennzeichen'; 
    1086  
    1087 -- Relationen: 
    1088 --  istGebucht                --> AX_Buchungsstelle 
    1089 --  zeigtAuf                  --> AX_LagebezeichnungOhneHausnummer 
    1090 --  weistAuf                  --> AX_LagebezeichnungMitHausnummer 
    1091 --  gehoertAnteiligZu         --> AX_Flurstueck 
    1092 --  beziehtSichAufFlurstueck  --> AX_Flurstueck 
     1077COMMENT ON COLUMN ax_flurstueck.amtlicheflaeche           IS 'AFL "Amtliche FlÀche" ist der im Liegenschaftskataster festgelegte FlÀcheninhalt des FlurstÃŒcks in [qm]. FlurstÃŒcksflÀchen kleiner 0,5 qm können mit bis zu zwei Nachkommastellen gefÃŒhrt werden, ansonsten ohne Nachkommastellen.'; 
     1078COMMENT ON COLUMN ax_flurstueck.abweichenderrechtszustand IS 'ARZ "Abweichender Rechtszustand" ist ein Hinweis darauf, dass außerhalb des Grundbuches in einem durch Gesetz geregelten Verfahren der Bodenordnung (siehe Objektart "Bau-, Raum- oder Bodenordnungsrecht", AA "Art der Festlegung", Werte 1750, 1770, 2100 bis 2340) ein neuer Rechtszustand eingetreten ist und das amtliche Verzeichnis der jeweiligen ausfÃŒhrenden Stelle maßgebend ist.'; 
     1079COMMENT ON COLUMN ax_flurstueck.zweifelhafterFlurstuecksnachweis IS 'ZFM "Zweifelhafter FlurstÃŒcksnachweis" ist eine Kennzeichnung eines FlurstÃŒcks, dessen Angaben nicht zweifelsfrei berichtigt werden können.'; 
     1080COMMENT ON COLUMN ax_flurstueck.rechtsbehelfsverfahren    IS 'RBV "Rechtsbehelfsverfahren" ist der Hinweis darauf, dass bei dem FlurstÃŒck ein laufendes Rechtsbehelfsverfahren anhÀngig ist.'; 
     1081COMMENT ON COLUMN ax_flurstueck.zeitpunktderentstehung    IS 'ZDE "Zeitpunkt der Entstehung" ist der Zeitpunkt, zu dem das FlurstÃŒck fachlich entstanden ist.'; 
     1082COMMENT ON COLUMN ax_flurstueck.gemeinde                  IS 'Gemeindekennzeichen zur Zuordnung der FlustÃŒcksdaten zu einer Gemeinde.'; 
     1083COMMENT ON COLUMN ax_flurstueck.name                      IS 'Array mit FortfÃŒhrungsjahr und -Nummer'; 
     1084COMMENT ON COLUMN ax_flurstueck.regierungsbezirk          IS 'Regierungsbezirk'; 
     1085COMMENT ON COLUMN ax_flurstueck.kreis                     IS 'Kreis'; 
     1086 
     1087COMMENT ON COLUMN ax_flurstueck.beziehtsichaufflurstueck  IS '<- Beziehung zu ax_flurstueck (0..*): 
     1088Es handelt sich um die inverse Relationsrichtung.'; 
     1089COMMENT ON COLUMN ax_flurstueck.zeigtauf                  IS '-> Beziehung zu ax_lagebezeichnungohnehausnummer (0..*): ''FlurstÃŒck'' zeigt auf ''Lagebezeichnung ohne Hausnummer''.'; 
     1090COMMENT ON COLUMN ax_flurstueck.istgebucht                IS '-> Beziehung zu ax_buchungsstelle (1): Ein (oder mehrere) FlurstÃŒck(e) ist (sind) unter genau einer Buchungsstelle gebucht. Bei Anteilsbuchungen ist dies nur dann möglich, wenn ein fiktives Buchungsblatt angelegt wird. Wird ein fiktives Buchunsblatt verwendet, ist die KardinalitÀt dieser Attributart 1..1.'; 
     1091COMMENT ON COLUMN ax_flurstueck.weistauf                  IS '-> Beziehung zu ax_lagebezeichnungmithausnummer (0..*): ''FlurstÃŒck'' weist auf ''Lagebezeichnung mit Hausnummer''.'; 
     1092COMMENT ON COLUMN ax_flurstueck.gehoertanteiligzu         IS '-> Beziehung zu ax_flurstueck (0..*): ''FlurstÃŒck'' gehört anteilig zu ''FlurstÃŒck''. Die Relationsart kommt nur vor bei FlurstÃŒcken, die eine Relation zu einer Buchungsstelle mit einer der Buchungsarten Anliegerweg, Anliegergraben oder Anliegerwasserlauf aufweisen.'; 
     1093 
     1094COMMENT ON INDEX  ax_flurstueck_kennz                     IS 'Suche nach FlurstÃŒckskennzeichen'; 
    10931095 
    10941096 
     
    10971099CREATE TABLE ax_besondereflurstuecksgrenze ( 
    10981100     ogc_fid                  serial NOT NULL, 
    1099      gml_id                   character(16), 
    1100      identifier               character(44), 
     1101     gml_id                   character varying NOT NULL, 
     1102     identifier               character varying, 
    11011103     beginnt                  character(20), 
    11021104     endet                    character(20), 
    1103      advstandardmodell        varchar, 
    1104      anlass                   varchar, 
     1105     advstandardmodell        character varying[], 
     1106     sonstigesmodell          character varying[], 
     1107     anlass                   character varying, 
    11051108     artderflurstuecksgrenze  integer[], 
    11061109     CONSTRAINT ax_besondereflurstuecksgrenze_pk PRIMARY KEY (ogc_fid) 
     
    11091112SELECT AddGeometryColumn('ax_besondereflurstuecksgrenze','wkb_geometry',:alkis_epsg,'LINESTRING',2); 
    11101113 
    1111 CREATE INDEX ax_besondereflurstuecksgrenze_geom_idx   ON ax_besondereflurstuecksgrenze USING gist (wkb_geometry); 
    1112 CREATE UNIQUE INDEX ax_besondereflurstuecksgrenze_gml ON ax_besondereflurstuecksgrenze USING btree (gml_id,beginnt); 
    1113  
    1114 COMMENT ON TABLE  ax_besondereflurstuecksgrenze        IS 'B e s o n d e r e   F l u r s t u e c k s g r e n z e'; 
     1114CREATE        INDEX ax_besondereflurstuecksgrenze_geom_idx  ON ax_besondereflurstuecksgrenze USING gist  (wkb_geometry); 
     1115CREATE UNIQUE INDEX ax_besondereflurstuecksgrenze_gml       ON ax_besondereflurstuecksgrenze USING btree (gml_id, beginnt); 
     1116CREATE        INDEX ax_besondereflurstuecksgrenze_adfg      ON ax_besondereflurstuecksgrenze USING gin   (artderflurstuecksgrenze); 
     1117 
     1118COMMENT ON TABLE  ax_besondereflurstuecksgrenze        IS 'Angaben zum FlurstÃŒck: (REO) "Besondere Flurstuecksgrenze" ist ..'; 
    11151119COMMENT ON COLUMN ax_besondereflurstuecksgrenze.gml_id IS 'Identifikator, global eindeutig'; 
    11161120 
     
    11201124CREATE TABLE ax_grenzpunkt ( 
    11211125     ogc_fid                  serial NOT NULL, 
    1122      gml_id                   character(16), 
    1123      identifier               character(44), 
     1126     gml_id                   character varying NOT NULL, 
     1127     identifier               character varying, 
    11241128     beginnt                  character(20), 
    11251129     endet                    character(20), 
    1126      advstandardmodell        varchar, 
    1127      anlass                   varchar, 
    1128      punktkennung             varchar, 
     1130     advstandardmodell        character varying[], 
     1131     sonstigesmodell          character varying[], 
     1132     anlass                   character varying, 
     1133     punktkennung             character varying, 
    11291134     land                     integer, 
    11301135     stelle                   integer, 
    11311136     abmarkung_marke          integer, 
    1132      festgestelltergrenzpunkt varchar, 
    1133      besonderepunktnummer     varchar, 
     1137     festgestelltergrenzpunkt character varying, 
     1138     besonderepunktnummer     character varying, 
    11341139     bemerkungzurabmarkung    integer, 
    1135      sonstigeeigenschaft      varchar[], 
    1136      art                      varchar, 
    1137      name                     varchar[], 
    1138      zeitpunktderentstehung   varchar, 
     1140     sonstigeeigenschaft      character varying[], 
     1141     art                      character varying, 
     1142     name                     character varying[], 
     1143     zeitpunktderentstehung   character varying, 
    11391144     relativehoehe            double precision, 
     1145     -- Beziehungen: 
     1146     zeigtauf                 character varying, --> ax_grenzpunkt 
    11401147     CONSTRAINT ax_grenzpunkt_pk PRIMARY KEY (ogc_fid) 
    11411148); 
     
    11431150SELECT AddGeometryColumn('ax_grenzpunkt','dummy',:alkis_epsg,'POINT',2); 
    11441151 
    1145 CREATE UNIQUE INDEX ax_grenzpunkt_gml ON ax_grenzpunkt USING btree (gml_id,beginnt); 
     1152CREATE UNIQUE INDEX ax_grenzpunkt_gml ON ax_grenzpunkt USING btree (gml_id, beginnt); 
    11461153CREATE INDEX ax_grenzpunkt_abmm ON ax_grenzpunkt USING btree (abmarkung_marke); 
    1147  
    1148 COMMENT ON TABLE  ax_grenzpunkt        IS 'G r e n z p u n k t'; 
     1154CREATE INDEX ax_grenzpunkt_za   ON ax_grenzpunkt USING btree (zeigtauf); 
     1155 
     1156COMMENT ON TABLE  ax_grenzpunkt        IS '__: "Grenzpunkt" ist ..'; 
    11491157COMMENT ON COLUMN ax_grenzpunkt.gml_id IS 'Identifikator, global eindeutig'; 
     1158 
     1159COMMENT ON COLUMN ax_grenzpunkt.zeigtauf IS '-> Beziehung zu ax_grenzpunkt (0..1): Ein von der Geometrie der FlurstÃŒcksflÀche abweichender ''Grenzpunkt'' (Sonderfall des indirekt abgemarkten Grenzpunktes) zeigt auf einen ''Grenzpunkt'', der in der FlurstÃŒcksgrenze liegt.'; 
    11501160 
    11511161 
     
    11561166-- ------------------------------------------------------------- 
    11571167CREATE TABLE ax_lagebezeichnungohnehausnummer ( 
    1158      ogc_fid             serial NOT NULL, 
    1159      gml_id              character(16), 
    1160      identifier          character(44), 
    1161      beginnt             character(20), 
    1162      endet               character(20), 
    1163      advstandardmodell   varchar, 
    1164      anlass              varchar, 
    1165      unverschluesselt    varchar,  -- Gewanne 
    1166      land                integer,  -- Strassenschluessel 
    1167      regierungsbezirk    integer, 
    1168      kreis               integer, 
    1169      gemeinde            integer, 
    1170      lage                varchar, 
     1168     ogc_fid                  serial NOT NULL, 
     1169     gml_id                   character varying NOT NULL, 
     1170     identifier               character varying, 
     1171     beginnt                  character(20), 
     1172     endet                    character(20), 
     1173     advstandardmodell        character varying[], 
     1174     sonstigesmodell          character varying[], 
     1175     anlass                   character varying, 
     1176     unverschluesselt         character varying,  -- Gewanne 
     1177     land                     integer,  -- Strassenschluessel 
     1178     regierungsbezirk         integer, 
     1179     kreis                    integer, 
     1180     gemeinde                 integer, 
     1181     lage                     character varying, 
     1182     zusatzzurlagebezeichnung character varying, 
     1183     -- Beziehungen: 
     1184     beschreibt character varying[],  --> ax_historischesflurstueckohneraumbezug  
     1185     gehoertzu character varying[],   --> ax_flurstueck  
    11711186     CONSTRAINT ax_lagebezeichnungohnehausnummer_pk PRIMARY KEY (ogc_fid) 
    11721187); 
     
    11741189SELECT AddGeometryColumn('ax_lagebezeichnungohnehausnummer','dummy',:alkis_epsg,'POINT',2); 
    11751190 
    1176 -- Verbindungstabellen indizieren 
    1177 CREATE UNIQUE INDEX ax_lagebezeichnungohnehausnummer_gml ON ax_lagebezeichnungohnehausnummer USING btree (gml_id,beginnt); 
    1178  
    1179 -- Such-Index (z.B. fuer Navigations-Programm) 
    1180 CREATE INDEX ax_lagebezeichnungohnehausnummer_key ON ax_lagebezeichnungohnehausnummer USING btree (land, regierungsbezirk, kreis, gemeinde,lage); 
    1181  
    1182 COMMENT ON TABLE  ax_lagebezeichnungohnehausnummer        IS 'L a g e b e z e i c h n u n g   o h n e   H a u s n u m m e r'; 
     1191CREATE UNIQUE INDEX ax_lagebezeichnungohnehausnummer_gml ON ax_lagebezeichnungohnehausnummer USING btree (gml_id, beginnt); 
     1192CREATE INDEX ax_lagebezeichnungohnehausnummer_key        ON ax_lagebezeichnungohnehausnummer USING btree (land, regierungsbezirk, kreis, gemeinde,lage); 
     1193CREATE INDEX ax_lagebezeichnungohnehausnummer_beschreibt ON ax_lagebezeichnungohnehausnummer  USING gin (beschreibt); 
     1194CREATE INDEX ax_lagebezeichnungohnehausnummer_gehoertzu  ON ax_lagebezeichnungohnehausnummer  USING gin (gehoertzu); 
     1195 
     1196COMMENT ON TABLE  ax_lagebezeichnungohnehausnummer        IS 'Angaben zur Lage: "Lagebezeichnung ohne Hausnummer"'; 
    11831197COMMENT ON COLUMN ax_lagebezeichnungohnehausnummer.gml_id IS 'Identifikator, global eindeutig'; 
     1198 
     1199COMMENT ON COLUMN ax_lagebezeichnungohnehausnummer.land       IS 'SchlÃŒssel des Bundelandes'; 
     1200COMMENT ON COLUMN ax_lagebezeichnungohnehausnummer.regierungsbezirk IS 'SchlÃŒssel des Regierungsbezirkes im Bundesland'; 
     1201COMMENT ON COLUMN ax_lagebezeichnungohnehausnummer.kreis      IS 'SchlÃŒssel des Kreises im Regierungsbezirkes'; 
     1202COMMENT ON COLUMN ax_lagebezeichnungohnehausnummer.gemeinde   IS 'SchlÃŒssel der Gemeinde im Kreis'; 
     1203COMMENT ON COLUMN ax_lagebezeichnungohnehausnummer.lage       IS 'StraßenschlÃŒssel in der Gemeinde'; 
     1204--MMENT ON COLUMN ax_lagebezeichnungohnehausnummer.zusatzzurlagebezeichnung IS '__'; 
     1205 
     1206COMMENT ON COLUMN ax_lagebezeichnungohnehausnummer.beschreibt IS '<- Beziehung zu ax_historischesflurstueckohneraumbezug (0..*): 
     1207Es handelt sich um die inverse Relationsrichtung.'; 
     1208COMMENT ON COLUMN ax_lagebezeichnungohnehausnummer.gehoertzu  IS '<- Beziehung zu ax_flurstueck (1..*): Eine ''Lagebezeichnung ohne Hausnummer'' gehört zu einem oder mehreren ''FlurstÃŒcken''. 
     1209Es handelt sich um die inverse Relationsrichtung.'; 
    11841210 
    11851211 
    11861212-- L a g e b e z e i c h n u n g   m i t   H a u s n u m m e r 
    11871213-- ----------------------------------------------------------- 
    1188 --   ax_flurstueck  >weistAuf>    AX_LagebezeichnungMitHausnummer 
    1189 --                  <gehoertZu< 
    11901214CREATE TABLE ax_lagebezeichnungmithausnummer ( 
    11911215     ogc_fid             serial NOT NULL, 
    1192      gml_id              character(16), 
    1193      identifier          character(44), 
    1194      beginnt             character(20), 
    1195      endet               character(20), 
    1196      advstandardmodell   varchar, 
    1197      anlass              varchar, 
     1216     gml_id              character varying NOT NULL, 
     1217     identifier          character varying, 
     1218     beginnt             character(20), 
     1219     endet               character(20), 
     1220     advstandardmodell   character varying[], 
     1221     sonstigesmodell     character varying[], 
     1222     anlass              character varying, 
    11981223     land                integer, 
    11991224     regierungsbezirk    integer, 
    12001225     kreis               integer, 
    12011226     gemeinde            integer, 
    1202      lage                varchar,  -- Strassenschluessel 
    1203      hausnummer          varchar,  -- Nummer (blank) Zusatz 
     1227     lage                character varying,   -- Strassenschluessel 
     1228     hausnummer          character varying,   -- Nummer (blank) Zusatz 
     1229     -- Beziehungen: 
     1230     hat                 character varying[], --> ax_historischesflurstueckohneraumbezug  
     1231     beziehtsichauf      character varying,   --> ax_gebaeude 
     1232     beziehtsichauchauf  character varying,   --> ax_georeferenziertegebaeudeadresse 
     1233     gehoertzu           character varying[], --> ax_flurstueck  
     1234     weistzum            character varying,   --> ax_turm  
    12041235     CONSTRAINT ax_lagebezeichnungmithausnummer_pk PRIMARY KEY (ogc_fid) 
    12051236); 
     
    12071238SELECT AddGeometryColumn('ax_lagebezeichnungmithausnummer','dummy',:alkis_epsg,'POINT',2); 
    12081239 
    1209 CREATE UNIQUE INDEX ax_lagebezeichnungmithausnummer_gml ON ax_lagebezeichnungmithausnummer USING btree (gml_id,beginnt); -- Verbindungstabellen indizieren 
    1210 CREATE INDEX ax_lagebezeichnungmithausnummer_lage       ON ax_lagebezeichnungmithausnummer USING btree (gemeinde, lage); -- Adressen-Suche nach Strasse 
    1211  
    1212 COMMENT ON TABLE  ax_lagebezeichnungmithausnummer        IS 'L a g e b e z e i c h n u n g   m i t   H a u s n u m m e r'; 
     1240CREATE UNIQUE INDEX ax_lagebezeichnungmithausnummer_gml ON ax_lagebezeichnungmithausnummer USING btree (gml_id, beginnt); 
     1241CREATE INDEX ax_lagebezeichnungmithausnummer_lage       ON ax_lagebezeichnungmithausnummer USING btree (gemeinde, lage); 
     1242CREATE INDEX ax_lagebezeichnungmithausnummer_hat        ON ax_lagebezeichnungmithausnummer USING gin   (hat); 
     1243CREATE INDEX ax_lagebezeichnungmithausnummer_bsa        ON ax_lagebezeichnungmithausnummer USING btree (beziehtsichauf); 
     1244CREATE INDEX ax_lagebezeichnungmithausnummer_bsaa       ON ax_lagebezeichnungmithausnummer USING btree (beziehtsichauchauf); 
     1245CREATE INDEX ax_lagebezeichnungmithausnummer_gehoertzu  ON ax_lagebezeichnungmithausnummer USING gin   (gehoertzu); 
     1246CREATE INDEX ax_lagebezeichnungmithausnummer_weistzum   ON ax_lagebezeichnungmithausnummer USING btree (weistzum); 
     1247 
     1248COMMENT ON TABLE  ax_lagebezeichnungmithausnummer       IS 'Angaben zur Lage: "Lagebezeichnung mit Hausnummer"'; 
    12131249COMMENT ON COLUMN ax_lagebezeichnungmithausnummer.gml_id IS 'Identifikator, global eindeutig'; 
     1250 
     1251COMMENT ON COLUMN ax_lagebezeichnungmithausnummer.land       IS 'SchlÃŒssel des Bundelandes'; 
     1252COMMENT ON COLUMN ax_lagebezeichnungmithausnummer.regierungsbezirk IS 'SchlÃŒssel des Regierungsbezirkes im Bundesland'; 
     1253COMMENT ON COLUMN ax_lagebezeichnungmithausnummer.kreis      IS 'SchlÃŒssel des Kreises im Regierungsbezirkes'; 
     1254COMMENT ON COLUMN ax_lagebezeichnungmithausnummer.gemeinde   IS 'SchlÃŒssel der Gemeinde im Kreis'; 
     1255COMMENT ON COLUMN ax_lagebezeichnungmithausnummer.lage       IS 'StraßenschlÃŒssel in der Gemeinde'; 
     1256COMMENT ON COLUMN ax_lagebezeichnungmithausnummer.hausnummer IS 'Hausnummer und Hausnummernzusatz'; 
     1257 
     1258COMMENT ON COLUMN ax_lagebezeichnungmithausnummer.hat IS '<- Beziehung zu ax_historischesflurstueckohneraumbezug (0..*): 
     1259Es handelt sich um die inverse Relationsrichtung.'; 
     1260COMMENT ON COLUMN ax_lagebezeichnungmithausnummer.beziehtsichauf IS '<- Beziehung zu ax_gebaeude (0..1): Eine ''Lagebezeichnung mit Hausnummer'' bezieht sich auf ein ''GebÀude''. 
     1261Es handelt sich um die inverse Relationsrichtung.'; 
     1262COMMENT ON COLUMN ax_lagebezeichnungmithausnummer.beziehtsichauchauf IS '<- Beziehung zu ax_georeferenziertegebaeudeadresse (0..1): 
     1263Es handelt sich um die inverse Relationsrichtung.'; 
     1264COMMENT ON COLUMN ax_lagebezeichnungmithausnummer.gehoertzu IS '<- Beziehung zu ax_flurstueck (1..*): Eine ''Lagebezeichnung mit Hausnummer'' gehört zu einem oder mehreren ''FlurstÃŒcken''. 
     1265Es handelt sich um die inverse Relationsrichtung.'; 
     1266COMMENT ON COLUMN ax_lagebezeichnungmithausnummer.weistzum IS '<- Beziehung zu ax_turm (0..1): Eine ''Lagebezeichnung mit Hausnummer'' weist zum ''Turm''. 
     1267Es handelt sich um die inverse Relationsrichtung.'; 
    12141268 
    12151269 
     
    12191273CREATE TABLE ax_lagebezeichnungmitpseudonummer ( 
    12201274     ogc_fid             serial NOT NULL, 
    1221      gml_id              character(16), 
    1222      identifier          character(44), 
    1223      beginnt             character(20), 
    1224      endet               character(20), 
    1225      advstandardmodell   varchar, 
    1226      anlass              varchar, 
     1275     gml_id              character varying NOT NULL, 
     1276     identifier          character varying, 
     1277     beginnt             character(20), 
     1278     endet               character(20), 
     1279     advstandardmodell   character varying[], 
     1280     sonstigesmodell     character varying[], 
     1281     anlass              character varying, 
    12271282     land                integer, 
    12281283     regierungsbezirk    integer, 
    12291284     kreis               integer, 
    12301285     gemeinde            integer, 
    1231      lage                varchar, -- Strassenschluessel 
    1232      pseudonummer        varchar, 
    1233      laufendenummer      varchar, -- leer, Zahl, "P2" 
     1286     lage                character varying, -- Strassenschluessel 
     1287     pseudonummer        character varying, 
     1288     laufendenummer      character varying, -- leer, Zahl, "P2" 
     1289     -- Beziehungen: 
     1290     gehoertzu character varying, --> ax_gebaeude 
    12341291     CONSTRAINT ax_lagebezeichnungmitpseudonummer_pk PRIMARY KEY (ogc_fid) 
    12351292); 
     
    12371294SELECT AddGeometryColumn('ax_lagebezeichnungmitpseudonummer','dummy',:alkis_epsg,'POINT',2); 
    12381295 
    1239 -- Verbindungstabellen indizieren 
    1240 CREATE UNIQUE INDEX ax_lagebezeichnungmitpseudonummer_gml ON ax_lagebezeichnungmitpseudonummer USING btree (gml_id,beginnt); 
    1241  
    1242 COMMENT ON TABLE  ax_lagebezeichnungmitpseudonummer        IS 'L a g e b e z e i c h n u n g   m i t  P s e u d o n u m m e r'; 
     1296CREATE UNIQUE INDEX ax_lagebezeichnungmitpseudonummer_gml ON ax_lagebezeichnungmitpseudonummer USING btree (gml_id, beginnt); 
     1297CREATE INDEX ax_lagebezeichnungmitpseudonummer_gehoertzu ON ax_lagebezeichnungmitpseudonummer USING btree (gehoertzu); 
     1298 
     1299COMMENT ON TABLE  ax_lagebezeichnungmitpseudonummer        IS 'Angaben zur Lage: "Lagebezeichnung mit Pseudonummer". Dies sind die NebengebÀude, die zu einen HauptgebÀude (mit Hausnummer) durchnummeriert sind.'; 
    12431300COMMENT ON COLUMN ax_lagebezeichnungmitpseudonummer.gml_id IS 'Identifikator, global eindeutig'; 
    12441301 
     1302COMMENT ON COLUMN ax_lagebezeichnungmitpseudonummer.land       IS 'SchlÃŒssel des Bundelandes'; 
     1303COMMENT ON COLUMN ax_lagebezeichnungmitpseudonummer.regierungsbezirk IS 'SchlÃŒssel des Regierungsbezirkes im Bundesland'; 
     1304COMMENT ON COLUMN ax_lagebezeichnungmitpseudonummer.kreis      IS 'SchlÃŒssel des Kreises im Regierungsbezirkes'; 
     1305COMMENT ON COLUMN ax_lagebezeichnungmitpseudonummer.gemeinde   IS 'SchlÃŒssel der Gemeinde im Kreis'; 
     1306COMMENT ON COLUMN ax_lagebezeichnungmitpseudonummer.lage       IS 'StraßenschlÃŒssel in der Gemeinde'; 
     1307 
     1308COMMENT ON COLUMN ax_lagebezeichnungmitpseudonummer.pseudonummer   IS '(Pseudo-) Hausnummer des zugehörigen HauptgebÀudes'; 
     1309COMMENT ON COLUMN ax_lagebezeichnungmitpseudonummer.laufendenummer IS 'laufende Nummer des NebengebÀudes'; 
     1310 
     1311COMMENT ON COLUMN ax_lagebezeichnungmitpseudonummer.gehoertzu IS '<- Beziehung zu ax_gebaeude (1): Eine ''Lagebezeichnung mit Pseudonummer'' gehört zu einem ''GebÀude''. 
     1312Es handelt sich um die inverse Relationsrichtung.'; 
    12451313 
    12461314 
     
    12481316--   =================================================================== 
    12491317 
    1250  
    12511318-- A u f n a h m e p u n k t 
    12521319-- ---------------------------------------------- 
    12531320CREATE TABLE ax_aufnahmepunkt ( 
    12541321     ogc_fid             serial NOT NULL, 
    1255      gml_id              character(16), 
    1256      identifier          character(44), 
    1257      beginnt             character(20), 
    1258      endet               character(20), 
    1259      advstandardmodell   varchar, 
    1260      anlass              varchar, 
    1261      punktkennung        varchar,   --integer ist zu klein, 
     1322     gml_id              character varying NOT NULL, 
     1323     identifier          character varying, 
     1324     beginnt             character(20), 
     1325     endet               character(20), 
     1326     advstandardmodell   character varying[], 
     1327     sonstigesmodell     character varying[], 
     1328     anlass              character varying, 
     1329     punktkennung        character varying,   -- integer ist zu klein, 
    12621330     land                integer, 
    12631331     stelle              integer, 
    1264      sonstigeeigenschaft varchar[], 
     1332     sonstigeeigenschaft character varying[], 
    12651333     vermarkung_marke    integer, 
    12661334     relativehoehe       double precision, 
     1335     -- Beziehungen: 
     1336     hat character varying[],                 --> ax_sicherungspunkt 
    12671337     CONSTRAINT ax_aufnahmepunkt_pk PRIMARY KEY (ogc_fid) 
    12681338); 
     
    12701340SELECT AddGeometryColumn('ax_aufnahmepunkt','dummy',:alkis_epsg,'POINT',2); 
    12711341 
    1272 CREATE UNIQUE INDEX ax_aufnahmepunkt_gml ON ax_aufnahmepunkt USING btree (gml_id,beginnt); 
    1273  
    1274 COMMENT ON TABLE  ax_aufnahmepunkt        IS 'A u f n a h m e p u n k t'; 
     1342CREATE UNIQUE INDEX ax_aufnahmepunkt_gml ON ax_aufnahmepunkt USING btree (gml_id, beginnt); 
     1343CREATE        INDEX ax_aufnahmepunkt_hat ON ax_aufnahmepunkt USING gin   (hat); 
     1344 
     1345COMMENT ON TABLE  ax_aufnahmepunkt        IS 'Angaben zum Netzpunkt: "Aufnahmepunkt"'; 
    12751346COMMENT ON COLUMN ax_aufnahmepunkt.gml_id IS 'Identifikator, global eindeutig'; 
    12761347 
     1348COMMENT ON COLUMN ax_aufnahmepunkt.hat IS '-> Beziehung zu ax_sicherungspunkt (0..*): ''Aufnahmepunkt'' hat ''Sicherungspunkt''.'; 
     1349 
    12771350 
    12781351-- S i c h e r u n g s p u n k t 
     
    12801353CREATE TABLE ax_sicherungspunkt ( 
    12811354     ogc_fid             serial NOT NULL, 
    1282      gml_id              character(16), 
    1283      identifier          character(44), 
    1284      beginnt             character(20), 
    1285      endet               character(20), 
    1286      advstandardmodell   varchar, 
    1287      anlass              varchar, 
    1288      name                varchar, 
    1289      punktkennung        varchar, 
     1355     gml_id              character varying NOT NULL, 
     1356     identifier          character varying, 
     1357     beginnt             character(20), 
     1358     endet               character(20), 
     1359     advstandardmodell   character varying[], 
     1360     sonstigesmodell     character varying[], 
     1361     anlass              character varying, 
     1362     name                character varying, 
     1363     punktkennung        character varying, 
    12901364     land                integer, 
    12911365     stelle              integer, 
    1292      sonstigeeigenschaft varchar[], 
     1366     sonstigeeigenschaft character varying[], 
    12931367     vermarkung_marke    integer, 
    12941368     relativehoehe       double precision, 
     1369     -- Beziehungen: 
     1370     beziehtsichauf      character varying, --> ax_sonstigervermessungspunkt 
     1371     gehoertzu           character varying, --> ax_aufnahmepunkt 
    12951372     CONSTRAINT ax_sicherungspunkt_pk PRIMARY KEY (ogc_fid) 
    12961373); 
     
    12981375SELECT AddGeometryColumn('ax_sicherungspunkt','dummy',:alkis_epsg,'POINT',2); 
    12991376 
    1300 COMMENT ON TABLE  ax_sicherungspunkt        IS 'S i c h e r u n g s p u n k t'; 
     1377COMMENT ON TABLE  ax_sicherungspunkt        IS 'Angaben zum Netzpunkt: "Sicherungspunkt"'; 
     1378 
     1379COMMENT ON COLUMN ax_sicherungspunkt.beziehtsichauf IS '<- Beziehung zu ax_sonstigervermessungspunkt (0..1): "Sicherungspunkt" bezieht sich auf "Sonstiger Vermessungspunkt" 
     1380Es handelt sich um die inverse Relationsrichtung.'; 
     1381COMMENT ON COLUMN ax_sicherungspunkt.gehoertzu      IS '<- Beziehung zu ax_aufnahmepunkt (0..1): ''Sicherungspunkt'' gehört zu ''Aufnahmepunkt''. 
     1382Es handelt sich um die inverse Relationsrichtung.'; 
     1383 
    13011384 
    13021385-- s o n s t i g e r   V e r m e s s u n g s p u n k t 
     
    13041387CREATE TABLE ax_sonstigervermessungspunkt ( 
    13051388     ogc_fid             serial NOT NULL, 
    1306      gml_id              character(16), 
    1307      identifier          character(44), 
    1308      beginnt             character(20), 
    1309      endet               character(20), 
    1310      advstandardmodell   varchar, 
    1311      anlass              varchar, 
     1389     gml_id              character varying NOT NULL, 
     1390     identifier          character varying, 
     1391     beginnt             character(20), 
     1392     endet               character(20), 
     1393     advstandardmodell   character varying[], 
     1394     sonstigesmodell     character varying[], 
     1395     anlass              character varying, 
    13121396     vermarkung_marke    integer, 
    1313      punktkennung        varchar, -- integer, 
    1314      art                 varchar, 
     1397     punktkennung        character varying, -- integer, 
     1398     art                 character varying, 
    13151399     land                integer, 
    13161400     stelle              integer, 
    1317      sonstigeeigenschaft varchar[], 
     1401     sonstigeeigenschaft character varying[], 
    13181402     relativehoehe       double precision, 
     1403     -- Beziehungen: 
     1404     hat character varying[], --> ax_sicherungspunkt 
    13191405     CONSTRAINT ax_sonstigervermessungspunkt_pk PRIMARY KEY (ogc_fid) 
    13201406); 
     
    13221408SELECT AddGeometryColumn('ax_sonstigervermessungspunkt','dummy',:alkis_epsg,'POINT',2); 
    13231409 
    1324 CREATE UNIQUE INDEX ax_sonstigervermessungspunkt_gml ON ax_sonstigervermessungspunkt USING btree (gml_id,beginnt); 
    1325  
    1326 COMMENT ON TABLE  ax_sonstigervermessungspunkt        IS 's o n s t i g e r   V e r m e s s u n g s p u n k t'; 
     1410CREATE UNIQUE INDEX ax_sonstigervermessungspunkt_gml ON ax_sonstigervermessungspunkt USING btree (gml_id, beginnt); 
     1411CREATE INDEX ax_sonstigervermessungspunkt_hat  ON ax_sonstigervermessungspunkt  USING gin  (hat); 
     1412 
     1413COMMENT ON TABLE  ax_sonstigervermessungspunkt        IS 'Angaben zum Netzpunkt: "sonstiger Vermessungspunkt"'; 
    13271414COMMENT ON COLUMN ax_sonstigervermessungspunkt.gml_id IS 'Identifikator, global eindeutig'; 
    13281415 
     1416COMMENT ON COLUMN ax_sonstigervermessungspunkt.hat IS '-> Beziehung zu ax_sicherungspunkt (0..*): "Sonstiger Vermessungspunkt" hat "Sicherungspunkt"'; 
    13291417 
    13301418--AX_Netzpunkt 
    13311419-- ** Tabelle bisher noch nicht generiert 
    13321420 
    1333  
    13341421--** Objektartengruppe: Angaben zum Punktort 
    13351422--   =================================================================== 
    13361423 
    1337  
    13381424--AX_Punktort 
    1339  
    13401425 
    13411426-- P u n k t o r t   AG 
     
    13431428CREATE TABLE ax_punktortag ( 
    13441429     ogc_fid                  serial NOT NULL, 
    1345      gml_id                   character(16), 
    1346      identifier               character(44), 
     1430     gml_id                   character varying NOT NULL, 
     1431     identifier               character varying, 
    13471432     beginnt                  character(20), 
    13481433     endet                    character(20), 
    1349      advstandardmodell        varchar, 
    1350      anlass                   varchar, 
    1351      art                      varchar[], 
    1352      name                     varchar[], 
    1353      kartendarstellung        varchar, 
     1434     advstandardmodell        character varying[], 
     1435     sonstigesmodell          character varying[], 
     1436     anlass                   character varying, 
     1437     art                      character varying[], 
     1438     name                     character varying[], 
     1439     kartendarstellung        character varying, 
    13541440     ax_datenerhebung_punktort integer, 
    13551441     genauigkeitsstufe        integer, 
    13561442     vertrauenswuerdigkeit    integer, 
    13571443     koordinatenstatus        integer, 
     1444     hinweise                 character varying, 
     1445     -- Beziehungen: 
     1446     istteilvon               character varying, --> ? 
    13581447     CONSTRAINT ax_punktortag_pk PRIMARY KEY (ogc_fid) 
    13591448); 
     
    13611450SELECT AddGeometryColumn('ax_punktortag','wkb_geometry',:alkis_epsg,'POINT',2); 
    13621451 
    1363 CREATE INDEX ax_punktortag_geom_idx ON ax_punktortag USING gist (wkb_geometry); 
    1364 CREATE UNIQUE INDEX ax_punktortag_gml ON ax_punktortag USING btree (gml_id,beginnt); 
    1365  
    1366 COMMENT ON TABLE  ax_punktortag        IS 'P u n k t o r t   AG'; 
     1452CREATE INDEX ax_punktortag_geom_idx   ON ax_punktortag USING gist  (wkb_geometry); 
     1453CREATE UNIQUE INDEX ax_punktortag_gml ON ax_punktortag USING btree (gml_id, beginnt); 
     1454CREATE INDEX ax_punktortag_itv_idx    ON ax_punktortag USING btree (istteilvon); 
     1455 
     1456COMMENT ON TABLE  ax_punktortag        IS 'Angaben zum Punktort: "Punktort AG"'; 
    13671457COMMENT ON COLUMN ax_punktortag.gml_id IS 'Identifikator, global eindeutig'; 
    13681458 
     
    13721462CREATE TABLE ax_punktortau ( 
    13731463     ogc_fid                       serial NOT NULL, 
    1374      gml_id                        character(16), 
    1375      identifier                    character(44), 
     1464     gml_id                        character varying NOT NULL, 
     1465     identifier                    character varying, 
    13761466     beginnt                       character(20), 
    13771467     endet                         character(20), 
    1378      advstandardmodell             varchar, 
    1379      anlass                        varchar, 
    1380      kartendarstellung             varchar, 
     1468     advstandardmodell             character varying[], 
     1469     sonstigesmodell               character varying[], 
     1470     anlass                        character varying, 
     1471     kartendarstellung             character varying, 
    13811472     ax_datenerhebung_punktort     integer, 
    1382      name                          varchar[], 
    1383      individualname                varchar, 
     1473     name                          character varying[], 
     1474     individualname                character varying, 
    13841475     vertrauenswuerdigkeit         integer, 
    13851476     genauigkeitsstufe             integer, 
    13861477     koordinatenstatus             integer, 
     1478     hinweise                      character varying, 
     1479     -- Beziehungen: 
     1480     istteilvon                    character varying, 
    13871481     CONSTRAINT ax_punktortau_pk PRIMARY KEY (ogc_fid) 
    13881482); 
     
    13901484SELECT AddGeometryColumn('ax_punktortau','wkb_geometry',:alkis_epsg,'POINT',3); -- 0,0,Höhe 
    13911485 
    1392 CREATE INDEX ax_punktortau_geom_idx ON ax_punktortau USING gist (wkb_geometry); 
    1393 CREATE UNIQUE INDEX ax_punktortau_gml ON ax_punktortau USING btree (gml_id,beginnt); 
    1394  
    1395 COMMENT ON TABLE  ax_punktortau        IS 'P u n k t o r t   A U'; 
     1486CREATE INDEX ax_punktortau_geom_idx   ON ax_punktortau USING gist  (wkb_geometry); 
     1487CREATE UNIQUE INDEX ax_punktortau_gml ON ax_punktortau USING btree (gml_id, beginnt); 
     1488CREATE INDEX ax_punktortau_itv_idx    ON ax_punktortau USING btree (istteilvon); 
     1489 
     1490COMMENT ON TABLE  ax_punktortau        IS 'Angaben zum Punktort: "Punktort AU"'; 
    13961491COMMENT ON COLUMN ax_punktortau.gml_id IS 'Identifikator, global eindeutig'; 
    13971492 
     
    14011496CREATE TABLE ax_punktortta ( 
    14021497     ogc_fid                       serial NOT NULL, 
    1403      gml_id                        character(16), 
    1404      identifier                    character(44), 
     1498     gml_id                        character varying NOT NULL, 
     1499     identifier                    character varying, 
    14051500     beginnt                       character(20), 
    14061501     endet                         character(20), 
    1407      advstandardmodell             varchar, 
    1408      anlass                        varchar, 
    1409      kartendarstellung             varchar, 
     1502     advstandardmodell             character varying[], 
     1503     sonstigesmodell               character varying[], 
     1504     anlass                        character varying, 
     1505     kartendarstellung             character varying, 
     1506     description                   integer, 
    14101507     ax_datenerhebung_punktort     integer, 
    1411      description                   integer, 
    1412      art                           varchar[], 
    1413      name                          varchar[], 
     1508     art                           character varying[], 
     1509     name                          character varying[], 
    14141510     genauigkeitsstufe             integer, 
    14151511     vertrauenswuerdigkeit         integer, 
    14161512     koordinatenstatus             integer, 
    1417      CONSTRAINT ax_punktortta_pk PRIMARY KEY (ogc_fid) 
     1513     hinweise                      character varying, 
     1514     -- Beziehungen: 
     1515     istteilvon                    character varying, 
     1516     CONSTRAINT ax_punktortta_pk   PRIMARY KEY (ogc_fid) 
    14181517); 
    14191518 
    14201519SELECT AddGeometryColumn('ax_punktortta','wkb_geometry',:alkis_epsg,'POINT',2); 
    14211520 
    1422 CREATE INDEX ax_punktortta_geom_idx ON ax_punktortta USING gist (wkb_geometry); 
    1423 CREATE UNIQUE INDEX ax_punktortta_gml ON ax_punktortta USING btree (gml_id,beginnt); 
    1424 CREATE INDEX ax_punktortta_endet_idx ON ax_punktortta USING btree (endet); 
    1425  
    1426 COMMENT ON TABLE  ax_punktortta        IS 'P u n k t o r t   T A'; 
     1521CREATE INDEX ax_punktortta_geom_idx   ON ax_punktortta USING gist  (wkb_geometry); 
     1522CREATE UNIQUE INDEX ax_punktortta_gml ON ax_punktortta USING btree (gml_id, beginnt); 
     1523CREATE INDEX ax_punktortta_endet_idx  ON ax_punktortta USING btree (endet); 
     1524CREATE INDEX ax_punktortta_itv_idx    ON ax_punktortta USING btree (istteilvon); 
     1525 
     1526COMMENT ON TABLE  ax_punktortta        IS 'Angaben zum Punktort: "Punktort TA"'; 
    14271527COMMENT ON COLUMN ax_punktortta.gml_id IS 'Identifikator, global eindeutig'; 
    14281528 
     
    14351535CREATE TABLE ax_fortfuehrungsnachweisdeckblatt ( 
    14361536     ogc_fid                  serial NOT NULL, 
    1437      gml_id                   character(16), 
    1438      identifier               character(44), 
     1537     gml_id                   character varying NOT NULL, 
     1538     identifier               character varying, 
    14391539     beginnt                  character(20), 
    14401540     endet                    character(20), 
    1441      advstandardmodell        varchar, 
    1442      anlass                   varchar, 
    1443      uri                      varchar, 
    1444      fortfuehrungsfallnummernbereich varchar, 
     1541     advstandardmodell        character varying[], 
     1542     sonstigesmodell          character varying[], 
     1543     anlass                   character varying, 
     1544     uri                      character varying,  -- wirklich? 
     1545     fortfuehrungsfallnummernbereich character varying, 
    14451546     land                     integer, 
    14461547     gemarkungsnummer         integer, 
    14471548     laufendenummer           integer, 
    1448      titel                    varchar, 
    1449      erstelltam               varchar,       -- Datum jjjj-mm-tt 
    1450      fortfuehrungsentscheidungam  varchar, 
    1451      fortfuehrungsentscheidungvon varchar,  -- Bearbeiter-Name und -Titel 
    1452      bemerkung                varchar, 
    1453      beziehtsichauf           varchar, 
     1549     titel                    character varying, 
     1550     erstelltam               character varying,      -- Datum jjjj-mm-tt 
     1551     fortfuehrungsentscheidungam  character varying, 
     1552     fortfuehrungsentscheidungvon character varying,  -- Bearbeiter-Name und -Titel 
     1553     bemerkung                character varying, 
     1554     -- Beziehungen: 
     1555     beziehtsichauf           character varying,      -- Index drauf? 
    14541556     CONSTRAINT ax_fortfuehrungsnachweisdeckblatt_pk PRIMARY KEY (ogc_fid) 
    14551557); 
     
    14571559SELECT AddGeometryColumn('ax_fortfuehrungsnachweisdeckblatt','dummy',:alkis_epsg,'POINT',2); 
    14581560 
    1459 COMMENT ON TABLE  ax_fortfuehrungsnachweisdeckblatt 
    1460 IS 'F o r t f u e h r u n g s n a c h w e i s / D e c k b l a t t'; 
     1561COMMENT ON TABLE  ax_fortfuehrungsnachweisdeckblatt IS 'FortfÃŒhrungsnachweis: (NREO) "Fortfuehrungsnachweis / Deckblatt" ..'; 
    14611562 
    14621563 
     
    14651566CREATE TABLE ax_fortfuehrungsfall ( 
    14661567     ogc_fid                            serial NOT NULL, 
    1467      gml_id                             character(16), 
    1468      identifier                         character(44), 
     1568     gml_id                             character varying NOT NULL, 
     1569     identifier                         character varying, 
    14691570     beginnt                            character(20), 
    14701571     endet                              character(20), 
    1471      advstandardmodell                  varchar, 
    1472      anlass                             varchar, 
    1473      uri                                varchar, 
     1572     advstandardmodell                  character varying[], 
     1573     sonstigesmodell                    character varying[], 
     1574     anlass                             character varying, 
     1575     uri                                character varying, 
    14741576     fortfuehrungsfallnummer            integer, 
    14751577     laufendenummer                     integer, 
    14761578     ueberschriftimfortfuehrungsnachweis integer[], 
    14771579     anzahlderfortfuehrungsmitteilungen integer, 
    1478      zeigtaufaltesflurstueck            varchar[], -- Format wie flurstueckskennzeichen (20) als Array 
    1479      zeigtaufneuesflurstueck            varchar[], -- Format wie flurstueckskennzeichen (20) als Array 
    1480      bemerkung                          varchar, 
     1580     -- Beziehungen: 
     1581     zeigtaufaltesflurstueck            character varying[], -- Format wie flurstueckskennzeichen (20) als Array 
     1582     zeigtaufneuesflurstueck            character varying[], -- Format wie flurstueckskennzeichen (20) als Array 
     1583     bemerkung                          character varying, 
    14811584     CONSTRAINT ax_fortfuehrungsfall_pk PRIMARY KEY (ogc_fid) 
    14821585); 
    1483  
    14841586SELECT AddGeometryColumn('ax_fortfuehrungsfall','dummy',:alkis_epsg,'POINT',2); 
    14851587 
    1486 COMMENT ON TABLE  ax_fortfuehrungsfall IS 'F o r t f u e h r u n g s f a l l'; 
     1588COMMENT ON TABLE  ax_fortfuehrungsfall IS 'FortfÃŒhrungsnachweis: (NREO) "Fortfuehrungsfall"'; 
    14871589 
    14881590 
     
    14941596CREATE TABLE ax_reservierung ( 
    14951597     ogc_fid             serial NOT NULL, 
    1496      gml_id              character(16), 
    1497      identifier          character(44), 
    1498      beginnt             character(20), 
    1499      endet               character(20), 
    1500      advstandardmodell   varchar, 
     1598     gml_id              character varying NOT NULL, 
     1599     identifier          character varying, 
     1600     beginnt             character(20), 
     1601     endet               character(20), 
     1602     advstandardmodell   character varying[], 
     1603     sonstigesmodell     character varying[], 
     1604     anlass              character varying, 
    15011605     art                 integer, 
    1502      nummer              varchar, 
     1606     nummer              character varying, 
    15031607     land                integer, 
    15041608     stelle              integer, 
    1505      ablaufderreservierung varchar, 
    1506      antragsnummer       varchar, 
    1507      auftragsnummer      varchar, 
     1609     ablaufderreservierung character varying, 
     1610     antragsnummer       character varying, 
     1611     auftragsnummer      character varying, 
    15081612     CONSTRAINT ax_reservierung_pk PRIMARY KEY (ogc_fid) 
    15091613); 
    1510  
    15111614SELECT AddGeometryColumn('ax_reservierung','dummy',:alkis_epsg,'POINT',2); 
    15121615 
    1513 COMMENT ON TABLE  ax_reservierung IS 'R e s e r v i e r u n g'; 
     1616COMMENT ON TABLE  ax_reservierung IS 'Angaben zur Reservierung: (NREO) "Reservierung"'; 
    15141617 
    15151618 
     
    15181621CREATE TABLE ax_punktkennunguntergegangen ( 
    15191622     ogc_fid                  serial NOT NULL, 
    1520      gml_id                   character(16), 
    1521      identifier               character(44), 
     1623     gml_id                   character varying NOT NULL, 
     1624     identifier               character varying, 
    15221625     beginnt                  character(20), 
    15231626     endet                    character(20), 
    1524      advstandardmodell        varchar, 
    1525      sonstigesmodell          varchar, 
    1526      anlass                   varchar, 
    1527      punktkennung             varchar, 
     1627     advstandardmodell        character varying[], 
     1628     sonstigesmodell          character varying[], 
     1629     anlass                   character varying, 
     1630     punktkennung             character varying, 
    15281631     art                      integer, 
    15291632     CONSTRAINT ax_punktkennunguntergegangen_pk PRIMARY KEY (ogc_fid) 
     
    15321635SELECT AddGeometryColumn('ax_punktkennunguntergegangen','dummy',:alkis_epsg,'POINT',2); 
    15331636 
    1534 COMMENT ON TABLE  ax_punktkennunguntergegangen IS 'P u n k t k e n n u n g, untergegangen'; 
     1637COMMENT ON TABLE  ax_punktkennunguntergegangen IS '__: (NREO) "Punktkennung, untergegangen"'; 
    15351638 
    15361639 
    15371640--** Objektartengruppe: Angaben zur Historie 
    15381641--   =================================================================== 
    1539  
    1540 -- Variante B: "Vollhistorie" ( statt ax_historischesflurstueckalb) 
     1642-- Variante B: "Vollhistorie" (statt ax_historischesflurstueckalb) 
    15411643CREATE TABLE ax_historischesflurstueckohneraumbezug ( 
    15421644     ogc_fid                       serial NOT NULL, 
    1543      gml_id                        character(16), 
     1645     gml_id                        character varying NOT NULL, 
     1646     identifier                    character varying, 
     1647     beginnt                       character(20), 
     1648     endet                         character(20), 
     1649     advstandardmodell             character varying[], 
     1650     sonstigesmodell               character varying[], 
     1651     anlass                        character varying, 
     1652     name                          character varying[], 
     1653 
    15441654     -- GID: AX_Flurstueck_Kerndaten 
    15451655     -- 'FlurstÃŒck_Kerndaten' enthÀlt Eigenschaften des FlurstÃŒcks, die auch fÃŒr andere FlurstÃŒcksobjektarten gelten (z.B. Historisches FlurstÃŒck). 
     
    15521662     flurstueckskennzeichen        character(20),     -- Inhalt rechts mit __ auf 20 aufgefÃŒllt 
    15531663     amtlicheflaeche               double precision,  -- AFL 
    1554      abweichenderrechtszustand     varchar,           -- ARZ 
    1555      zweifelhafterFlurstuecksnachweis varchar,        -- ZFM 
     1664     abweichenderrechtszustand     character varying,           -- ARZ 
     1665     zweifelhafterFlurstuecksnachweis character varying,        -- ZFM 
    15561666     rechtsbehelfsverfahren        integer,           -- RBV 
    1557      zeitpunktderentstehung        varchar,           -- ZDE  Inhalt jjjj-mm-tt  besser Format date ? 
     1667     zeitpunktderentstehung        character varying,           -- ZDE  Inhalt jjjj-mm-tt  besser Format date ? 
    15581668     gemeinde                      integer, 
    15591669     -- GID: ENDE AX_Flurstueck_Kerndaten 
    1560      identifier                    character(44), 
    1561      beginnt                       character(20), 
    1562      endet                         character(20), 
    1563      advstandardmodell             character(4), 
    1564      anlass                        varchar, 
    1565      name                          varchar[],          -- Array {a,b,c} 
    1566      nachfolgerflurstueckskennzeichen   varchar[],     -- Array {a,b,c} 
    1567      vorgaengerflurstueckskennzeichen   varchar[],     -- Array {a,b,c} 
     1670 
     1671     nachfolgerflurstueckskennzeichen   character varying[], 
     1672     vorgaengerflurstueckskennzeichen   character varying[], 
     1673     -- Beziehungen: 
     1674     gehoertanteiligzu             character varying[], --> ax_historischesflurstueckohneraumbezug  
     1675     weistauf                      character varying[], --> ax_lagebezeichnungmithausnummer 
     1676     zeigtauf                      character varying[], --> ax_lagebezeichnungohnehausnummer 
     1677     istgebucht                    character varying,   --> ax_buchungsstelle 
    15681678     CONSTRAINT ax_historischesflurstueckohneraumbezug_pk PRIMARY KEY (ogc_fid) 
    15691679); 
    15701680 
    1571   COMMENT ON TABLE  ax_historischesflurstueckohneraumbezug        IS '"Historisches FlurstÃŒck ohne Raumbezug" ist ein nicht mehr aktuelles FlurstÃŒck, das schon im ALB historisch geworden ist, nach ALKIS migriert und im Rahmen der Vollhistorie gefÃŒhrt wird.'; 
    1572   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.gml_id IS 'Identifikator, global eindeutig'; 
    1573   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.flurnummer                IS 'FLN "Flurnummer" ist die von der Katasterbehörde zur eindeutigen Bezeichnung vergebene Nummer einer Flur, die eine Gruppe von zusammenhÀngenden FlurstÃŒcken innerhalb einer Gemarkung umfasst.'; 
    1574   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.zaehler                   IS 'ZAE  Dieses Attribut enthÀlt den ZÀhler der FlurstÃŒcknummer'; 
    1575   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.nenner                    IS 'NEN  Dieses Attribut enthÀlt den Nenner der FlurstÃŒcknummer'; 
    1576   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.flurstueckskennzeichen    IS '"FlurstÃŒckskennzeichen" ist ein von der Katasterbehörde zur eindeutigen Bezeichnung des FlurstÃŒcks vergebenes Ordnungsmerkmal. 
     1681SELECT AddGeometryColumn('ax_historischesflurstueckohneraumbezug','dummy',:alkis_epsg,'POINT',2); 
     1682CREATE INDEX ax_hist_fs_ohne_kennz ON ax_historischesflurstueckohneraumbezug USING btree (flurstueckskennzeichen); 
     1683COMMENT ON INDEX ax_hist_fs_ohne_kennz IS 'Suche nach FlurstÃŒckskennzeichen'; 
     1684 
     1685CREATE INDEX idx_histfsor_vor  ON ax_historischesflurstueckohneraumbezug USING btree (vorgaengerflurstueckskennzeichen); 
     1686CREATE INDEX idx_histfsor_nach ON ax_historischesflurstueckohneraumbezug USING btree (vorgaengerflurstueckskennzeichen); 
     1687 
     1688CREATE INDEX ax_hist_gaz ON ax_historischesflurstueckohneraumbezug  USING gin   (gehoertanteiligzu); 
     1689CREATE INDEX ax_hist_ig  ON ax_historischesflurstueckohneraumbezug  USING btree (istgebucht); 
     1690CREATE INDEX ax_hist_wa  ON ax_historischesflurstueckohneraumbezug  USING gin   (weistauf); 
     1691CREATE INDEX ax_hist_za  ON ax_historischesflurstueckohneraumbezug  USING gin   (zeigtauf); 
     1692 
     1693COMMENT ON TABLE  ax_historischesflurstueckohneraumbezug        IS 'Angaben zur Historie: (NREO) "Historisches FlurstÃŒck ohne Raumbezug" ist ein nicht mehr aktuelles FlurstÃŒck, das schon im ALB historisch geworden ist, nach ALKIS migriert und im Rahmen der Vollhistorie gefÃŒhrt wird.'; 
     1694COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.gml_id IS 'Identifikator, global eindeutig'; 
     1695COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.flurnummer                IS 'FLN "Flurnummer" ist die von der Katasterbehörde zur eindeutigen Bezeichnung vergebene Nummer einer Flur, die eine Gruppe von zusammenhÀngenden FlurstÃŒcken innerhalb einer Gemarkung umfasst.'; 
     1696COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.zaehler                   IS 'ZAE  Dieses Attribut enthÀlt den ZÀhler der FlurstÃŒcknummer'; 
     1697COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.nenner                    IS 'NEN  Dieses Attribut enthÀlt den Nenner der FlurstÃŒcknummer'; 
     1698COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.flurstueckskennzeichen    IS '"FlurstÃŒckskennzeichen" ist ein von der Katasterbehörde zur eindeutigen Bezeichnung des FlurstÃŒcks vergebenes Ordnungsmerkmal. 
    15771699Die Attributart setzt sich aus den nachfolgenden expliziten Attributarten in der angegebenen Reihenfolge zusammen: 
    15781700 1.  Land (2 Stellen) 
     
    15861708Da die Flurnummer und die FlurstÃŒcksfolge optional sind, sind aufgrund der bundeseinheitlichen Definition im FlurstÃŒckskennzeichen die entsprechenden Stellen, sofern sie nicht belegt sind, durch Unterstrich "_" ersetzt. 
    15871709Gleiches gilt fÃŒr FlurstÃŒcksnummern ohne Nenner, hier ist der fehlende Nenner im FlurstÃŒckskennzeichen durch Unterstriche zu ersetzen.'; 
    1588   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.amtlicheflaeche           IS 'AFL "Amtliche FlÀche" ist der im Liegenschaftskataster festgelegte FlÀcheninhalt des FlurstÃŒcks in [qm]. FlurstÃŒcksflÀchen kleiner 0,5 qm können mit bis zu zwei Nachkommastellen gefÃŒhrt werden, ansonsten ohne Nachkommastellen.'; 
    1589   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.abweichenderrechtszustand IS 'ARZ "Abweichender Rechtszustand" ist ein Hinweis darauf, dass außerhalb des Grundbuches in einem durch Gesetz geregelten Verfahren der Bodenordnung (siehe Objektart "Bau-, Raum- oder Bodenordnungsrecht", AA "Art der Festlegung", Werte 1750, 1770, 2100 bis 2340) ein neuer Rechtszustand eingetreten ist und das amtliche Verzeichnis der jeweiligen ausfÃŒhrenden Stelle maßgebend ist.'; 
    1590   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.zweifelhafterFlurstuecksnachweis IS 'ZFM "Zweifelhafter FlurstÃŒcksnachweis" ist eine Kennzeichnung eines FlurstÃŒcks, dessen Angaben nicht zweifelsfrei berichtigt werden können.'; 
    1591   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.rechtsbehelfsverfahren    IS 'RBV "Rechtsbehelfsverfahren" ist der Hinweis darauf, dass bei dem FlurstÃŒck ein laufendes Rechtsbehelfsverfahren anhÀngig ist.'; 
    1592   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.zeitpunktderentstehung    IS 'ZDE "Zeitpunkt der Entstehung" ist der Zeitpunkt, zu dem das FlurstÃŒck fachlich entstanden ist.'; 
    1593   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.gemeinde                  IS 'Gemeindekennzeichen zur Zuordnung der FlustÃŒcksdaten zu einer Gemeinde.'; 
    1594   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.anlass                    IS '?'; 
    1595   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.name                      IS 'Array mit FortfÃŒhrungsjahr und -Nummer'; 
    1596   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.nachfolgerflurstueckskennzeichen 
    1597   IS '"Nachfolger-FlurstÃŒckskennzeichen" ist die Bezeichnung der FlurstÃŒcke, die dem Objekt "Historisches FlurstÃŒck ohne Raumbezug" direkt nachfolgen. 
     1710COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.amtlicheflaeche           IS 'AFL "Amtliche FlÀche" ist der im Liegenschaftskataster festgelegte FlÀcheninhalt des FlurstÃŒcks in [qm]. FlurstÃŒcksflÀchen kleiner 0,5 qm können mit bis zu zwei Nachkommastellen gefÃŒhrt werden, ansonsten ohne Nachkommastellen.'; 
     1711COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.abweichenderrechtszustand IS 'ARZ "Abweichender Rechtszustand" ist ein Hinweis darauf, dass außerhalb des Grundbuches in einem durch Gesetz geregelten Verfahren der Bodenordnung (siehe Objektart "Bau-, Raum- oder Bodenordnungsrecht", AA "Art der Festlegung", Werte 1750, 1770, 2100 bis 2340) ein neuer Rechtszustand eingetreten ist und das amtliche Verzeichnis der jeweiligen ausfÃŒhrenden Stelle maßgebend ist.'; 
     1712COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.zweifelhafterFlurstuecksnachweis IS 'ZFM "Zweifelhafter FlurstÃŒcksnachweis" ist eine Kennzeichnung eines FlurstÃŒcks, dessen Angaben nicht zweifelsfrei berichtigt werden können.'; 
     1713COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.rechtsbehelfsverfahren    IS 'RBV "Rechtsbehelfsverfahren" ist der Hinweis darauf, dass bei dem FlurstÃŒck ein laufendes Rechtsbehelfsverfahren anhÀngig ist.'; 
     1714COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.zeitpunktderentstehung    IS 'ZDE "Zeitpunkt der Entstehung" ist der Zeitpunkt, zu dem das FlurstÃŒck fachlich entstanden ist.'; 
     1715COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.gemeinde                  IS 'Gemeindekennzeichen zur Zuordnung der FlustÃŒcksdaten zu einer Gemeinde.'; 
     1716--MMENT ON COLUMN ax_historischesflurstueckohneraumbezug.anlass                    IS '?'; 
     1717COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.name                      IS 'Array mit FortfÃŒhrungsjahr und -Nummer'; 
     1718COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.nachfolgerflurstueckskennzeichen 
     1719 IS '"Nachfolger-FlurstÃŒckskennzeichen" ist die Bezeichnung der FlurstÃŒcke, die dem Objekt "Historisches FlurstÃŒck ohne Raumbezug" direkt nachfolgen. 
    15981720Array mit Kennzeichen im Format der Spalte "flurstueckskennzeichen"'; 
    1599   COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.vorgaengerflurstueckskennzeichen 
     1721 
     1722COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.vorgaengerflurstueckskennzeichen 
    16001723  IS '"VorgÀnger-FlurstÃŒckskennzeichen" ist die Bezeichnung der FlurstÃŒcke, die dem Objekt "Historisches FlurstÃŒck ohne Raumbezugs" direkt vorangehen. 
    16011724Array mit Kennzeichen im Format der Spalte "flurstueckskennzeichen"'; 
    16021725 
    1603  
    1604 -- keine Geometrie, daher ersatzweise: Dummy-Eintrag in Metatabelle 
    1605 SELECT AddGeometryColumn('ax_historischesflurstueckohneraumbezug','dummy',:alkis_epsg,'POINT',2); 
    1606 -- Kennzeichen indizieren, z.B. fuer Suche aus der Historie 
    1607 CREATE INDEX ax_hist_fs_ohne_kennz ON ax_historischesflurstueckohneraumbezug USING btree (flurstueckskennzeichen /* ASC NULLS LAST */ ); 
    1608 COMMENT ON INDEX ax_hist_fs_ohne_kennz IS 'Suche nach FlurstÃŒckskennzeichen'; 
    1609  
    1610 -- Suche nach VorgÀnger / Nachfolger 
    1611 CREATE INDEX idx_histfsor_vor ON ax_historischesflurstueckohneraumbezug (vorgaengerflurstueckskennzeichen /* ASC */); 
    1612 -- COMMENT ON INDEX idx_histfsalb_vor IS 'Suchen nach VorgÀnger-FlurstÃŒck'; 
    1613  
    1614 CREATE INDEX idx_histfsor_nach ON ax_historischesflurstueckohneraumbezug (vorgaengerflurstueckskennzeichen /* ASC */); 
    1615 -- COMMENT ON INDEX idx_histfsalb_vor IS 'Suchen nach Nachfolger-FlurstÃŒck'; 
    1616  
    1617  
     1726COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.gehoertanteiligzu IS '-> Beziehung zu ax_historischesflurstueckohneraumbezug (0..*): ''FlurstÃŒck ohne Raumbezug'' gehört anteilig zu ''FlurstÃŒck ohne Raumbezug''. Die Relationsart kommt nur vor bei FlurstÃŒcken, die eine Relation zu einer Buchungsstelle mit einer der Buchungsarten Anliegerweg, Anliegergraben oder Anliegerwasserlauf aufweist.'; 
     1727COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.weistauf   IS '-> Beziehung zu ax_lagebezeichnungmithausnummer (0..*): ''FlurstÃŒck ohne Raumbezug'' weist auf ''Lagebezeichnung mit Hausnummer''.'; 
     1728COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.zeigtauf   IS '-> Beziehung zu ax_lagebezeichnungohnehausnummer (0..*): ''FlurstÃŒck ohne Raumbezug'' zeigt auf ''Lagebezeichnung ohne Hausnummer''.'; 
     1729COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.istgebucht IS '-> Beziehung zu ax_buchungsstelle (0..1): Ein (oder mehrere) FlurstÃŒck(e) ist (sind) unter einer Buchungsstelle gebucht.'; 
    16181730 
    16191731-- *** ############################################################ 
     
    16211733-- *** ############################################################ 
    16221734 
    1623  
    1624 -- ** Objektartengruppe:Personen- und Bestandsdaten 
     1735-- ** Objektartengruppe: Personen- und Bestandsdaten 
    16251736--   =================================================================== 
    1626  
    16271737 
    16281738-- 21001 P e r s o n 
     
    16311741CREATE TABLE ax_person ( 
    16321742     ogc_fid                  serial NOT NULL, 
    1633      gml_id                   character(16), 
    1634      identifier               character(44), 
     1743     gml_id                   character varying NOT NULL, 
     1744     identifier               character varying, 
    16351745     beginnt                  character(20), 
    16361746     endet                    character(20), 
    1637      advstandardmodell        varchar, 
    1638      anlass                   varchar, 
    1639      nachnameoderfirma        varchar, 
     1747     advstandardmodell        character varying[], 
     1748     sonstigesmodell          character varying[], 
     1749     anlass                   character varying, 
     1750     nachnameoderfirma        character varying, 
    16401751     anrede                   integer, 
    1641      vorname                  varchar, 
    1642      geburtsname              varchar, 
    1643      geburtsdatum             varchar, 
    1644      namensbestandteil        varchar, 
    1645      akademischergrad         varchar, 
     1752     vorname                  character varying, 
     1753     geburtsname              character varying, 
     1754     geburtsdatum             character varying, 
     1755     namensbestandteil        character varying, 
     1756     akademischergrad         character varying, 
     1757     -- Beziehungen: 
     1758     hat                      character varying[], -- > ax_anschrift  (fast immer gefÃŒllt) 
     1759     -- Rest meist leer (inverse Relationen immer leeer?) 
     1760     weistauf                 character varying[], -- < ax_namensnummer  
     1761     wirdvertretenvon         character varying[], -- > ax_vertretung  
     1762     gehoertzu                character varying[], -- > ax_personengruppe   
     1763     uebtaus                  character varying[], -- < ax_vertretung  
     1764     besitzt                  character varying[], -- < ax_gebaeude 
     1765     zeigtauf                 character varying,   -- < ax_person 
     1766     benennt                  character varying[], -- < ax_verwaltung 
    16461767     CONSTRAINT ax_person_pk PRIMARY KEY (ogc_fid) 
    16471768); 
     
    16491770SELECT AddGeometryColumn('ax_person','dummy',:alkis_epsg,'POINT',2); 
    16501771 
    1651 -- Verbindungstabellen indizieren 
    1652 CREATE UNIQUE INDEX id_ax_person_gml ON ax_person USING btree (gml_id,beginnt); 
    1653  
    1654 COMMENT ON TABLE  ax_person        IS 'NREO "Person" ist eine natÃŒrliche oder juristische Person und kann z.B. in den Rollen EigentÃŒmer, Erwerber, Verwalter oder Vertreter in Katasterangelegenheiten gefÃŒhrt werden.'; 
    1655 COMMENT ON COLUMN ax_person.gml_id IS 'Identifikator, global eindeutig'; 
     1772CREATE UNIQUE INDEX id_ax_person_gml ON ax_person USING btree (gml_id, beginnt); 
     1773 
     1774CREATE INDEX ax_person_ben  ON ax_person  USING gin  (benennt); 
     1775CREATE INDEX ax_person_bes  ON ax_person  USING gin  (besitzt); 
     1776CREATE INDEX ax_person_gz   ON ax_person  USING gin  (gehoertzu); 
     1777CREATE INDEX ax_person_hat  ON ax_person  USING gin  (hat); 
     1778CREATE INDEX ax_person_ua   ON ax_person  USING gin  (uebtaus); 
     1779CREATE INDEX ax_person_wa   ON ax_person  USING gin  (weistauf); 
     1780CREATE INDEX ax_person_wvv  ON ax_person  USING gin  (wirdvertretenvon); 
     1781CREATE INDEX ax_person_za   ON ax_person  USING btree (zeigtauf); 
     1782 
     1783COMMENT ON TABLE  ax_person           IS 'Personen- und Bestandsdaten: (NREO) "Person" ist eine natÃŒrliche oder juristische Person und kann z.B. in den Rollen EigentÃŒmer, Erwerber, Verwalter oder Vertreter in Katasterangelegenheiten gefÃŒhrt werden.'; 
     1784COMMENT ON COLUMN ax_person.gml_id    IS 'Identifikator, global eindeutig'; 
    16561785COMMENT ON COLUMN ax_person.namensbestandteil IS 'enthÀlt z.B. Titel wie "Baron"'; 
    1657 COMMENT ON COLUMN ax_person.anrede IS '"Anrede" ist die Anrede der Person. Diese Attributart ist optional, da Körperschaften und juristischen Person auch ohne Anrede angeschrieben werden können.'; 
     1786COMMENT ON COLUMN ax_person.anrede    IS '"Anrede" ist die Anrede der Person. Diese Attributart ist optional, da Körperschaften und juristischen Person auch ohne Anrede angeschrieben werden können.'; 
    16581787COMMENT ON COLUMN ax_person.akademischergrad IS '"Akademischer Grad" ist der akademische Grad der Person (z.B. Dipl.-Ing., Dr., Prof. Dr.)'; 
    16591788 
    1660  
    1661 -- Relationen: 
    1662 -- hat:        Die 'Person' hat 'Anschrift'. 
    1663 -- weist auf:  Durch die Relation 'Person' weist auf 'Namensnummer' wird ausgedrÃŒckt, dass die Person als EigentÃŒmer, 
    1664 --        Erbbauberechtigter oder kÃŒnftiger Erwerber unter der Namensnummer eines Buchungsblattes eingetragen ist. 
    1665  
     1789COMMENT ON COLUMN ax_person.hat       IS '-> Beziehung zu ax_anschrift (0..*): Die ''Person'' hat ''Anschrift''.'; 
     1790 
     1791COMMENT ON COLUMN ax_person.weistauf  IS '<- Beziehung zu ax_namensnummer (0..*): Durch die Relation ''Person'' weist auf ''Namensnummer'' wird ausgedrÃŒckt, dass die Person als EigentÃŒmer, Erbbauberechtigter oder kÃŒnftiger Erwerber unter der Namensnummer eines Buchungsblattes eingetragen ist. 
     1792Es handelt sich um die inverse Relationsrichtung.'; 
     1793COMMENT ON COLUMN ax_person.wirdvertretenvon IS '-> Beziehung zu ax_vertretung (0..*): Die ''Person'' wird von der ''Vertretung'' in Katasterangelegenheiten vertreten.'; 
     1794COMMENT ON COLUMN ax_person.gehoertzu IS '-> Beziehung zu ax_personengruppe (0..*): ''Person'' gehört zu ''Personengruppe''.'; 
     1795COMMENT ON COLUMN ax_person.uebtaus   IS '<- Beziehung zu ax_vertretung (0..*): Die ''Person'' ÃŒbt die ''Vertretung'' in Katasterangelegenheiten aus. 
     1796Es handelt sich um die inverse Relationsrichtung.'; 
     1797COMMENT ON COLUMN ax_person.besitzt   IS '<- Beziehung zu ax_gebaeude (0..*): 
     1798Es handelt sich um die inverse Relationsrichtung.'; 
     1799COMMENT ON COLUMN ax_person.zeigtauf  IS '-> Beziehung zu ax_person (0..1): Die ''Person'' zeigt auf eine ''Person'' mit abweichenden Eigenschaften derselben Person. FÃŒr ein und dieselbe Person wurden zwei Objekte ''Person'' mit unterschiedlichen Attributen (z.B. Nachnamen durch Heirat geÀndert) angelegt. Bei Verwendung der Vollhistorie mit Hilfe des Versionierungskonzeptes werden diese Eigenschaften in verschiedenen Versionen gefÃŒhrt. 
     1800Diese Relation wird dann nicht verwendet.'; 
     1801COMMENT ON COLUMN ax_person.benennt   IS '<- Beziehung zu ax_verwaltung (0..*): Die Relation ''Person'' benennt ''Verwaltung'' weist der Verwaltung eine Person zu. 
     1802Es handelt sich um die inverse Relationsrichtung.'; 
    16661803 
    16671804--AX_Personengruppe 
    16681805-- ** Tabelle bisher noch nicht generiert 
    16691806 
    1670  
    16711807-- A n s c h r i f t 
    16721808-- ---------------------------------------------- 
    16731809-- Buchwerk, keine Geometrie. 
    1674 -- Konverter versucht Tabelle noch einmal anzulegen, wenn kein (Dummy-) Eintrag in Metatabelle 'geometry_columns'. 
    16751810CREATE TABLE ax_anschrift ( 
    1676      ogc_fid                  serial NOT NULL, 
    1677      gml_id                   character(16), 
    1678      identifier               character(44), 
    1679      beginnt                  character(20), 
    1680      endet                    character(20), 
    1681      advstandardmodell        varchar, 
    1682      anlass                   varchar, 
    1683      ort_post                 varchar, 
    1684      postleitzahlpostzustellung varchar, 
    1685      strasse                  varchar, 
    1686      hausnummer               varchar, 
    1687      bestimmungsland          varchar, 
    1688      postleitzahlpostfach     varchar, 
    1689      postfach                 varchar, 
    1690      ortsteil                 varchar, 
    1691      weitereAdressen          varchar, 
    1692      telefon                  varchar, 
    1693      fax                      varchar, 
     1811     ogc_fid                    serial NOT NULL, 
     1812     gml_id                     character varying NOT NULL, 
     1813     identifier                 character varying, 
     1814     beginnt                    character(20), 
     1815     endet                      character(20), 
     1816     advstandardmodell          character varying[], 
     1817     sonstigesmodell            character varying[], 
     1818     anlass                     character varying, 
     1819     ort_post                   character varying, 
     1820     postleitzahlpostzustellung character varying, 
     1821     strasse                    character varying, 
     1822     hausnummer                 character varying, 
     1823     bestimmungsland            character varying, 
     1824     postleitzahlpostfach       character varying, 
     1825     postfach                   character varying, 
     1826     ortsteil                   character varying, 
     1827     weitereAdressen            character varying, 
     1828     telefon                    character varying, 
     1829     fax                        character varying, 
     1830     organisationname           character varying, 
     1831     -- Beziehungen: 
     1832     beziehtsichauf             character varying[],  --> ax_dienststelle  
     1833     gehoertzu                  character varying[],  --> ax_person 
    16941834     CONSTRAINT ax_anschrift_pk PRIMARY KEY (ogc_fid) 
    16951835); 
    16961836 
    1697 -- Dummy-Eintrag in Metatabelle 
    16981837SELECT AddGeometryColumn('ax_anschrift','dummy',:alkis_epsg,'POINT',2); 
    16991838 
    1700 -- Index fÃŒr alkis_beziehungen 
    1701 CREATE UNIQUE INDEX ax_anschrift_gml ON ax_anschrift USING btree (gml_id,beginnt); 
    1702  
    1703 COMMENT ON TABLE  ax_anschrift        IS 'A n s c h r i f t'; 
     1839CREATE UNIQUE INDEX ax_anschrift_gml  ON ax_anschrift  USING btree (gml_id, beginnt); 
     1840CREATE        INDEX ax_anschrift_bsa  ON ax_anschrift  USING gin   (beziehtsichauf); 
     1841CREATE        INDEX ax_anschrift_gz   ON ax_anschrift  USING gin   (gehoertzu); 
     1842 
     1843COMMENT ON TABLE  ax_anschrift        IS 'Personen- und Bestandsdaten: (NREO) "Anschrift"'; 
    17041844COMMENT ON COLUMN ax_anschrift.gml_id IS 'Identifikator, global eindeutig'; 
    17051845 
     1846COMMENT ON COLUMN ax_anschrift.beziehtsichauf IS '<- Beziehung zu ax_dienststelle (0..*): 
     1847Es handelt sich um die inverse Relationsrichtung.'; 
     1848COMMENT ON COLUMN ax_anschrift.gehoertzu      IS '<- Beziehung zu ax_person (0..*): Eine ''Anschrift'' gehört zu ''Person''. 
     1849Es handelt sich um die inverse Relationsrichtung.'; 
     1850-- Inverse Relationsrichtungen werden von PostNAS nicht gefÃŒllt? 
    17061851 
    17071852-- N a m e n s n u m m e r 
     
    17091854-- Buchwerk. Keine Geometrie 
    17101855CREATE TABLE ax_namensnummer ( 
    1711      ogc_fid                  serial NOT NULL, 
    1712      gml_id                   character(16), 
    1713      identifier               character(44), 
    1714      beginnt                  character(20), 
    1715      endet                    character(20), 
    1716      advstandardmodell        varchar, 
    1717      anlass                   varchar, 
    1718      laufendenummernachdin1421 character(16),     -- 0000.00.00.00.00 
    1719      zaehler                  double precision,   -- Anteil .. 
    1720      nenner                   double precision,   --    .. als Bruch 
    1721      eigentuemerart           integer, 
    1722      nummer                   varchar,       -- immer leer ? 
    1723      artderrechtsgemeinschaft integer,       -- SchlÃŒssel 
    1724      beschriebderrechtsgemeinschaft varchar, 
     1856     ogc_fid                    serial NOT NULL, 
     1857     gml_id                     character varying NOT NULL, 
     1858     identifier                 character varying, 
     1859     beginnt                    character(20), 
     1860     endet                      character(20), 
     1861     advstandardmodell          character varying[], 
     1862     sonstigesmodell            character varying[], 
     1863     anlass                     character varying, 
     1864     laufendenummernachdin1421  character(16),      -- 0000.00.00.00.00 
     1865     zaehler                    double precision,   -- Anteil .. 
     1866     nenner                     double precision,   --    .. als Bruch 
     1867     eigentuemerart             integer, 
     1868     nummer                     character varying,  -- immer leer ? 
     1869     artderrechtsgemeinschaft   integer,            -- SchlÃŒssel 
     1870     beschriebderrechtsgemeinschaft character varying, 
     1871     -- Beziehungen: 
     1872     bestehtausrechtsverhaeltnissenzu character varying, --> ax_namensnummer  
     1873     istbestandteilvon character varying,    --> ax_buchungsblatt 
     1874     hatvorgaenger character varying[],      --> ax_namensnummer 
     1875     benennt character varying,              --> ax_person 
    17251876     CONSTRAINT ax_namensnummer_pk PRIMARY KEY (ogc_fid) 
    17261877); 
     
    17281879SELECT AddGeometryColumn('ax_namensnummer','dummy',:alkis_epsg,'POINT',2); 
    17291880 
    1730 -- Verbindungstabellen indizieren 
    1731 CREATE UNIQUE INDEX ax_namensnummer_gml ON ax_namensnummer USING btree (gml_id,beginnt); 
    1732  
    1733 COMMENT ON TABLE  ax_namensnummer        IS 'NREO "Namensnummer" ist die laufende Nummer der Eintragung, unter welcher der EigentÃŒmer oder Erbbauberechtigte im Buchungsblatt gefÃŒhrt wird. Rechtsgemeinschaften werden auch unter AX_Namensnummer gefÃŒhrt.'; 
     1881CREATE UNIQUE INDEX ax_namensnummer_gml   ON ax_namensnummer  USING btree (gml_id, beginnt); 
     1882CREATE        INDEX ax_namensnummer_barvz ON ax_namensnummer  USING btree (bestehtausrechtsverhaeltnissenzu); 
     1883CREATE        INDEX ax_namensnummer_ben   ON ax_namensnummer  USING btree (benennt); 
     1884CREATE        INDEX ax_namensnummer_hv    ON ax_namensnummer  USING gin   (hatvorgaenger); 
     1885CREATE        INDEX ax_namensnummer_ibv   ON ax_namensnummer  USING btree (istbestandteilvon); 
     1886 
     1887COMMENT ON TABLE  ax_namensnummer        IS 'Personen- und Bestandsdaten: (NREO) "Namensnummer" ist die laufende Nummer der Eintragung, unter welcher der EigentÃŒmer oder Erbbauberechtigte im Buchungsblatt gefÃŒhrt wird. Rechtsgemeinschaften werden auch unter AX_Namensnummer gefÃŒhrt.'; 
    17341888COMMENT ON COLUMN ax_namensnummer.gml_id IS 'Identifikator, global eindeutig'; 
     1889 
     1890COMMENT ON COLUMN ax_namensnummer.bestehtausrechtsverhaeltnissenzu IS '-> Beziehung zu ax_namensnummer (0..1): Die Relation ''Namensnummer'' besteht aus RechtsverhÀltnissen zu ''Namensnummer'' sagt aus, dass mehrere Namensnummern zu einer Rechtsgemeinschaft gehören können. Die Rechtsgemeinschaft selbst steht unter einer eigenen AX_Namensnummer, die zu allen Namensnummern der Rechtsgemeinschaft eine Relation besitzt.'; 
     1891COMMENT ON COLUMN ax_namensnummer.istbestandteilvon                IS '-> Beziehung zu ax_buchungsblatt (1): Eine ''Namensnummer'' ist Teil von einem ''Buchungsblatt''.'; 
     1892COMMENT ON COLUMN ax_namensnummer.hatvorgaenger                    IS '-> Beziehung zu ax_namensnummer (0..*): Die Relation ''Namensnummer'' hat VorgÀnger ''Namensnummer'' gibt Auskunft darÃŒber, aus welchen Namensnummern die aktuelle entstanden ist.'; 
     1893COMMENT ON COLUMN ax_namensnummer.benennt                          IS '-> Beziehung zu ax_person (0..1): Durch die Relation ''Namensnummer'' benennt ''Person'' wird die Person zum EigentÃŒmer, Erbbauberechtigten oder kÃŒnftigen Erwerber.'; 
    17351894 
    17361895 
     
    17381897-- ------------------------- 
    17391898CREATE TABLE ax_buchungsblatt ( 
    1740      ogc_fid             serial NOT NULL, 
    1741      gml_id              character(16), 
    1742      identifier          character(44), 
    1743      beginnt             character(20), 
    1744      endet               character(20), 
    1745      advstandardmodell   varchar, 
    1746      anlass              varchar, 
    1747      buchungsblattkennzeichen varchar, -- integer 
    1748      land                integer, 
    1749      bezirk              integer, 
    1750      buchungsblattnummermitbuchstabenerweiterung  varchar, 
    1751     -- Konverter mault: "Warning 1: Value '001648 ' ... parsed incompletely to integer 1648." usw. 
    1752      blattart            integer, 
    1753      art                 varchar, 
     1899     ogc_fid                  serial NOT NULL, 
     1900     gml_id                   character varying NOT NULL, 
     1901     identifier               character varying, 
     1902     beginnt                  character(20), 
     1903     endet                    character(20), 
     1904     advstandardmodell        character varying[], 
     1905     sonstigesmodell          character varying[], 
     1906     anlass                   character varying, 
     1907     buchungsblattkennzeichen character varying, 
     1908     land                     integer, 
     1909     bezirk                   integer, 
     1910     buchungsblattnummermitbuchstabenerweiterung  character varying, 
     1911     blattart                 character varying,   -- bisher integer, 
     1912     art                      character varying, 
     1913     -- Beziehungen: 
     1914     bestehtaus               character varying[], --> ax_buchungsstelle  
    17541915     CONSTRAINT ax_buchungsblatt_pk PRIMARY KEY (ogc_fid) 
    17551916); 
     
    17571918SELECT AddGeometryColumn('ax_buchungsblatt','dummy',:alkis_epsg,'POINT',2); 
    17581919 
    1759 -- Index fÃŒr alkis_beziehungen 
    1760 CREATE UNIQUE INDEX ax_buchungsblatt_gml ON ax_buchungsblatt USING btree (gml_id,beginnt); 
    1761 CREATE INDEX ax_buchungsblatt_lbb ON ax_buchungsblatt USING btree (land,bezirk,buchungsblattnummermitbuchstabenerweiterung); 
    1762  
    1763 COMMENT ON TABLE  ax_buchungsblatt        IS 'NREO "Buchungsblatt" enthÀlt die Buchungen (Buchungsstellen und Namensnummern) des Grundbuchs und des Liegenschhaftskatasters (bei buchungsfreien GrundstÃŒcken).'; 
     1920CREATE UNIQUE INDEX ax_buchungsblatt_gml  ON ax_buchungsblatt USING btree (gml_id, beginnt); 
     1921CREATE        INDEX ax_buchungsblatt_lbb  ON ax_buchungsblatt USING btree (land, bezirk, buchungsblattnummermitbuchstabenerweiterung); 
     1922CREATE        INDEX ax_buchungsblatt_bsa  ON ax_buchungsblatt USING gin   (bestehtaus); 
     1923 
     1924COMMENT ON TABLE  ax_buchungsblatt        IS '__: (NREO) "Buchungsblatt" enthÀlt die Buchungen (Buchungsstellen und Namensnummern) des Grundbuchs und des Liegenschhaftskatasters (bei buchungsfreien GrundstÃŒcken).'; 
    17641925COMMENT ON COLUMN ax_buchungsblatt.gml_id IS 'Identifikator, global eindeutig'; 
     1926 
     1927COMMENT ON COLUMN ax_buchungsblatt.bestehtaus IS '<- Beziehung zu ax_buchungsstelle (0..*): ''Buchungsblatt'' besteht aus ''Buchungsstelle''. Bei einem Buchungsblatt mit der Blattart ''Fiktives Blatt'' (Wert 5000) muss die Relation zu einer aufgeteilten Buchung (Wertearten 1101, 1102, 1401 bis 1403, 2201 bis 2205 und 2401 bis 2404) bestehen. 
     1928Es handelt sich um die inverse Relationsrichtung.'; 
    17651929 
    17661930 
     
    17681932-- ----------------------------- 
    17691933CREATE TABLE ax_buchungsstelle ( 
    1770      ogc_fid                  serial NOT NULL, 
    1771      gml_id                   character(16), 
    1772      identifier               character(44), 
    1773      beginnt                  character(20), 
    1774      endet                    character(20), 
    1775      advstandardmodell        varchar, 
    1776      anlass                   varchar, 
    1777      buchungsart              integer, 
    1778      laufendenummer           varchar, 
     1934     ogc_fid                            serial NOT NULL, 
     1935     gml_id                             character varying NOT NULL, 
     1936     identifier                         character varying, 
     1937     beginnt                            character(20), 
     1938     endet                              character(20), 
     1939     advstandardmodell                  character varying[], 
     1940     sonstigesmodell                    character varying[], 
     1941     anlass                             character varying, 
     1942     buchungsart                        integer, 
     1943     laufendenummer                     character varying, 
    17791944     beschreibungdesumfangsderbuchung   character(1), 
    1780      zaehler                  double precision, 
    1781      nenner                   double precision, 
    1782      nummerimaufteilungsplan            varchar, 
    1783      beschreibungdessondereigentums     varchar, 
    1784      CONSTRAINT ax_buchungsstelle_pk PRIMARY KEY (ogc_fid) 
     1945     zaehler                            double precision, 
     1946     nenner                             double precision, 
     1947     nummerimaufteilungsplan            character varying, 
     1948     beschreibungdessondereigentums     character varying, 
     1949     buchungstext                       character varying, 
     1950     -- Beziehungen: 
     1951     istbestandteilvon                  character varying,    --> ax_buchungsblatt  
     1952     durch                              character varying[],  --> ax_buchungsstelle  
     1953     verweistauf                        character varying[],  --> ax_flurstueck 
     1954     grundstueckbestehtaus              character varying[],  --> ax_flurstueck  
     1955     zu                                 character varying[],  --> ax_buchungsstelle  
     1956     an                                 character varying[],  --> ax_buchungsstelle  
     1957     hatvorgaenger                      character varying[],  --> ax_buchungsstelle 
     1958     wirdverwaltetvon                   character varying,    --> ax_verwaltung 
     1959     beziehtsichauf                     character varying[],  --> ax_buchungsblatt 
     1960     CONSTRAINT ax_buchungsstelle_pk    PRIMARY KEY (ogc_fid) 
    17851961); 
    17861962 
    17871963SELECT AddGeometryColumn('ax_buchungsstelle','dummy',:alkis_epsg,'POINT',2); 
    17881964 
    1789 --Index fÃŒr alkis_beziehungen 
    1790 CREATE UNIQUE INDEX ax_buchungsstelle_gml ON ax_buchungsstelle USING btree (gml_id,beginnt); 
    1791  
    1792 COMMENT ON TABLE  ax_buchungsstelle        IS 'NREO "Buchungsstelle" ist die unter einer laufenden Nummer im Verzeichnis des Buchungsblattes eingetragene Buchung.'; 
     1965CREATE UNIQUE INDEX ax_buchungsstelle_gml ON ax_buchungsstelle USING btree (gml_id, beginnt); 
     1966 
     1967CREATE INDEX ax_buchungsstelle_an     ON ax_buchungsstelle  USING gin  (an); 
     1968CREATE INDEX ax_buchungsstelle_bsa    ON ax_buchungsstelle  USING gin  (beziehtsichauf); 
     1969CREATE INDEX ax_buchungsstelle_durch  ON ax_buchungsstelle  USING gin  (durch); 
     1970CREATE INDEX ax_buchungsstelle_gba    ON ax_buchungsstelle  USING gin  (grundstueckbestehtaus); 
     1971CREATE INDEX ax_buchungsstelle_hv     ON ax_buchungsstelle  USING gin  (hatvorgaenger); 
     1972CREATE INDEX ax_buchungsstelle_ibv    ON ax_buchungsstelle  USING btree (istbestandteilvon); 
     1973CREATE INDEX ax_buchungsstelle_vwa    ON ax_buchungsstelle  USING gin  (verweistauf); 
     1974CREATE INDEX ax_buchungsstelle_wvv    ON ax_buchungsstelle  USING btree (wirdverwaltetvon); 
     1975CREATE INDEX ax_buchungsstelle_zu     ON ax_buchungsstelle  USING gin  (zu); 
     1976 
     1977COMMENT ON TABLE  ax_buchungsstelle        IS '__: (NREO) "Buchungsstelle" ist die unter einer laufenden Nummer im Verzeichnis des Buchungsblattes eingetragene Buchung.'; 
    17931978COMMENT ON COLUMN ax_buchungsstelle.gml_id IS 'Identifikator, global eindeutig'; 
     1979 
     1980COMMENT ON COLUMN ax_buchungsstelle.istbestandteilvon IS '-> Beziehung zu ax_buchungsblatt (1): ''Buchungsstelle'' ist Teil von ''Buchungsblatt''. Bei ''Buchungsart'' mit einer der Wertearten fÃŒr aufgeteilte Buchungen (Wertearten 1101, 1102, 1401 bis 1403, 2201 bis 2205 und 2401 bis 2404) muss die Relation zu einem ''Buchungsblatt'' und der ''Blattart'' mit der Werteart ''Fiktives Blatt'' bestehen.'; 
     1981COMMENT ON COLUMN ax_buchungsstelle.durch IS '-> Beziehung zu ax_buchungsstelle (0..*): Eine ''Buchungsstelle'' verweist mit ''durch'' auf eine andere ''Buchungsstelle'' auf einem anderen Buchungsblatt (herrschend). Die Buchungsstelle ist belastet durch ein Recht, dass ''durch'' die andere Buchungsstelle an ihr ausgeÃŒbt wird.'; 
     1982COMMENT ON COLUMN ax_buchungsstelle.verweistauf IS '-> Beziehung zu ax_flurstueck (0..*): ''Buchungsstelle'' verweist auf ''FlurstÃŒck''.'; 
     1983COMMENT ON COLUMN ax_buchungsstelle.grundstueckbestehtaus IS '<- Beziehung zu ax_flurstueck (0..*): Diese Relationsart legt fest, welche FlurstÃŒcke ein GrundstÃŒck bilden. Nur bei der ''Buchungsart'' mit den Wertearten 1100, 1101 und 1102 muss die Relationsart vorhanden sein, sofern nicht ein Objekt AX_HistorischesFlurstueckOhneRaumbezug ÃŒber die Relationsart ''istGebucht'' auf die Buchungsstelle verweist. 
     1984Es handelt sich um die inverse Relationsrichtung.'; 
     1985 
     1986COMMENT ON COLUMN ax_buchungsstelle.zu IS '-> Beziehung zu ax_buchungsstelle (0..*): Eine ''Buchungsstelle'' verweist mit ''zu'' auf eine andere ''Buchungsstelle'' des gleichen Buchungsblattes (herrschend).'; 
     1987COMMENT ON COLUMN ax_buchungsstelle.an IS '-> Beziehung zu ax_buchungsstelle (0..*): Eine ''Buchungsstelle'' verweist mit ''an'' auf eine andere ''Buchungsstelle'' auf einem anderen Buchungsblatt. Die Buchungsstelle kann ein Recht (z.B. Erbbaurecht) oder einen Miteigentumsanteil ''an'' der anderen Buchungsstelle haben Die Relation zeigt stets vom begÃŒnstigten Recht zur belasteten Buchung (z.B. Erbbaurecht hat ein Recht ''an'' einem GrundstÃŒck).'; 
     1988 
     1989COMMENT ON COLUMN ax_buchungsstelle.hatvorgaenger IS '-> Beziehung zu ax_buchungsstelle (0..*): Die Relation ''Buchungsstelle'' hat VorgÀnger ''Buchungsstelle'' gibt Auskunft darÃŒber, aus welchen Buchungsstellen die aktuelle Buchungsstelle entstanden ist.'; 
     1990COMMENT ON COLUMN ax_buchungsstelle.wirdverwaltetvon IS '-> Beziehung zu ax_verwaltung (0..1): Die ''Buchungsstelle'' wird verwaltet von ''Verwaltung''.'; 
     1991COMMENT ON COLUMN ax_buchungsstelle.beziehtsichauf IS '-> Beziehung zu ax_buchungsblatt (0..*): ''Buchungsstelle'' bezieht sich auf ''Buchungsblatt''.'; 
    17941992 
    17951993 
     
    17981996--*** ############################################################ 
    17991997 
    1800 --** Objektartengruppe:Angaben zum GebÀude 
     1998--** Objektartengruppe: Angaben zum GebÀude 
    18011999--   =================================================================== 
    1802  
    1803 --AX_Gebaeude 
    18042000 
    18052001-- G e b À u d e 
    18062002-- --------------- 
    18072003-- Kennung 31001 
    1808 -- Abgleich 2011-11-15 mit 
    1809 --  http://www.bezreg-koeln.nrw.de/extra/33alkis/dokumente/Profile_NRW/ALKIS-OK-NRW_MAX_20090722.html 
    18102004CREATE TABLE ax_gebaeude ( 
    18112005     ogc_fid             serial NOT NULL, 
    1812      gml_id              character(16), 
    1813      identifier          character(44), 
    1814      beginnt             character(20), 
    1815      endet               character(20), 
    1816      advstandardmodell   varchar[], 
    1817      anlass              varchar, 
     2006     gml_id              character varying NOT NULL, 
     2007     identifier          character varying, 
     2008     beginnt             character(20), 
     2009     endet               character(20), 
     2010     advstandardmodell   character varying[], 
     2011     sonstigesmodell     character varying[], 
     2012     anlass              character varying, 
    18182013     gebaeudefunktion    integer,  -- Werte siehe SchlÃŒsseltabelle 
    18192014     weiteregebaeudefunktion  integer[], 
    1820      name                varchar[], 
     2015     name                character varying[], 
    18212016     bauweise            integer, 
    18222017     anzahlderoberirdischengeschosse  integer, 
    18232018     anzahlderunterirdischengeschosse integer, 
    1824      hochhaus            varchar,  -- "true"/"false", meist aber leer 
     2019     hochhaus            character varying,  -- "true"/"false", meist aber leer 
    18252020     objekthoehe         integer, 
    18262021     dachform            integer, 
     
    18312026     baujahr             integer, 
    18322027     lagezurerdoberflaeche integer, 
    1833      dachart             varchar, 
     2028     dachart             character varying, 
    18342029     dachgeschossausbau  integer, 
    1835      qualitaetsangaben   varchar, 
     2030     qualitaetsangaben   character varying, 
    18362031     ax_datenerhebung    integer, 
    18372032     description         integer, 
    1838      art                 varchar, 
    1839      individualname      varchar, 
     2033     art                 character varying, 
     2034     individualname      character varying, 
     2035     -- Beziehungen: 
     2036     gehoertzu           character varying,   --> ax_gebaeude 
     2037     hat                 character varying,   --> ax_lagebezeichnungmitpseudonummer 
     2038     gehoert             character varying[], --> ax_person 
     2039     zeigtauf            character varying[], --> ax_lagebezeichnungmithausnummer 
     2040     haengtzusammenmit   character varying,   --> ax_gebaeude 
    18402041     CONSTRAINT ax_gebaeude_pk PRIMARY KEY (ogc_fid) 
    18412042); 
     
    18442045 
    18452046CREATE INDEX ax_gebaeude_geom_idx   ON ax_gebaeude USING gist (wkb_geometry); 
    1846 CREATE UNIQUE INDEX ax_gebaeude_gml ON ax_gebaeude USING btree (gml_id,beginnt); 
    1847  
    1848   COMMENT ON TABLE  ax_gebaeude                    IS '"G e b À u d e" ist ein dauerhaft errichtetes Bauwerk, dessen Nachweis wegen seiner Bedeutung als Liegenschaft erforderlich ist sowie dem Zweck der Basisinformation des Liegenschaftskatasters dient.'; 
    1849   COMMENT ON COLUMN ax_gebaeude.gml_id             IS 'Identifikator, global eindeutig'; 
    1850   COMMENT ON COLUMN ax_gebaeude.gebaeudefunktion   IS 'GFK "GebÀudefunktion" ist die zum Zeitpunkt der Erhebung vorherrschend funktionale Bedeutung des GebÀudes (Dominanzprinzip). Werte siehe ax_gebaeude_funktion'; 
    1851   COMMENT ON COLUMN ax_gebaeude.weiteregebaeudefunktion IS 'WGF "Weitere GebÀudefunktion" sind weitere Funktionen, die ein GebÀude neben der dominierenden GebÀudefunktion hat.'; 
    1852   COMMENT ON COLUMN ax_gebaeude.name               IS 'NAM "Name" ist der Eigenname oder die Bezeichnung des GebÀudes.'; 
    1853   COMMENT ON COLUMN ax_gebaeude.bauweise           IS 'BAW "Bauweise" ist die Beschreibung der Art der Bauweise. Werte siehe ax_gebaeude_bauweise'; 
    1854   COMMENT ON COLUMN ax_gebaeude.anzahlderoberirdischengeschosse IS 'AOG "Anzahl der oberirdischen Geschosse" ist die Anzahl der oberirdischen Geschosse des GebÀudes.'; 
    1855   COMMENT ON COLUMN ax_gebaeude.anzahlderunterirdischengeschosse IS 'AUG "Anzahl der unterirdischen Geschosse" ist die Anzahl der unterirdischen Geschosse des GebÀudes.'; 
    1856   COMMENT ON COLUMN ax_gebaeude.hochhaus           IS 'HOH "Hochhaus" ist ein GebÀude, das nach GebÀudehöhe und AusprÀgung als Hochhaus zu bezeichnen ist. FÃŒr GebÀude im Geschossbau gilt dieses i.d.R. ab 8 oberirdischen Geschossen, fÃŒr andere GebÀude ab einer GebÀudehöhe von 22 m. Abweichungen hiervon können sich durch die Festlegungen in den lÀnderspezifischen Bauordnungen ergeben.'; 
    1857   COMMENT ON COLUMN ax_gebaeude.objekthoehe        IS 'HHO "Objekthöhe" ist die Höhendifferenz in [m] zwischen dem höchsten Punkt der Dachkonstruktion und der festgelegten GelÀndeoberflÀche des GebÀudes.'; 
    1858   COMMENT ON COLUMN ax_gebaeude.dachform           IS 'DAF "Dachform" beschreibt die charakteristische Form des Daches. Werte siehe ax_gebaeude_dachform'; 
    1859   COMMENT ON COLUMN ax_gebaeude.zustand            IS 'ZUS "Zustand" beschreibt die Beschaffenheit oder die Betriebsbereitschaft von "GebÀude". Diese Attributart wird nur dann optional gefÃŒhrt, wenn der Zustand des GebÀudes vom nutzungsfÀhigen Zustand abweicht. Werte siehe ax_gebaeude_zustand'; 
    1860   COMMENT ON COLUMN ax_gebaeude.geschossflaeche    IS 'GFL "GeschossflÀche" ist die GebÀudegeschossflÀche in [qm].'; 
    1861   COMMENT ON COLUMN ax_gebaeude.grundflaeche       IS 'GRF "GrundflÀche" ist die GebÀudegrundflÀche in [qm].'; 
    1862   COMMENT ON COLUMN ax_gebaeude.umbauterraum       IS 'URA "Umbauter Raum" ist der umbaute Raum [Kubikmeter] des GebÀudes.'; 
    1863   COMMENT ON COLUMN ax_gebaeude.baujahr            IS 'BJA "Baujahr" ist das Jahr der Fertigstellung oder der baulichen VerÀnderung des GebÀudes.'; 
    1864   COMMENT ON COLUMN ax_gebaeude.lagezurerdoberflaeche IS 'OFL "Lage zur ErdoberflÀche" ist die Angabe der relativen Lage des GebÀudes zur ErdoberflÀche. Diese Attributart wird nur bei nicht ebenerdigen GebÀuden gefÃŒhrt. 1200=Unter der ErdoberflÀche, 1400=AufgestÀndert'; 
    1865   COMMENT ON COLUMN ax_gebaeude.dachart            IS 'DAA "Dachart" gibt die Art der Dacheindeckung (z.B. Reetdach) an.'; 
    1866   COMMENT ON COLUMN ax_gebaeude.dachgeschossausbau IS 'DGA "Dachgeschossausbau" ist ein Hinweis auf den Ausbau bzw. die AusbaufÀhigkeit des Dachgeschosses.'; 
    1867   COMMENT ON COLUMN ax_gebaeude.qualitaetsangaben  IS 'QAG Angaben zur Herkunft der Informationen (Erhebungsstelle). Die Information ist konform zu den Vorgaben aus ISO 19115 zu reprÀsentieren.'; 
     2047CREATE UNIQUE INDEX ax_gebaeude_gml ON ax_gebaeude USING btree (gml_id, beginnt); 
     2048 
     2049CREATE INDEX ax_gebaeude_geh  ON ax_gebaeude USING gin   (gehoert); 
     2050CREATE INDEX ax_gebaeude_gz   ON ax_gebaeude USING btree (gehoertzu); 
     2051CREATE INDEX ax_gebaeude_hat  ON ax_gebaeude USING btree (hat); 
     2052CREATE INDEX ax_gebaeude_hzm  ON ax_gebaeude USING btree (haengtzusammenmit); 
     2053CREATE INDEX ax_gebaeude_za   ON ax_gebaeude USING gin   (zeigtauf); 
     2054 
     2055COMMENT ON TABLE  ax_gebaeude                    IS 'Angaben zum GebÀude: (REO) "GebÀude" ist ein dauerhaft errichtetes Bauwerk, dessen Nachweis wegen seiner Bedeutung als Liegenschaft erforderlich ist sowie dem Zweck der Basisinformation des Liegenschaftskatasters dient.'; 
     2056COMMENT ON COLUMN ax_gebaeude.gml_id             IS 'Identifikator, global eindeutig'; 
     2057COMMENT ON COLUMN ax_gebaeude.gebaeudefunktion   IS 'GFK "GebÀudefunktion" ist die zum Zeitpunkt der Erhebung vorherrschend funktionale Bedeutung des GebÀudes (Dominanzprinzip). Werte siehe ax_gebaeude_funktion'; 
     2058COMMENT ON COLUMN ax_gebaeude.weiteregebaeudefunktion IS 'WGF "Weitere GebÀudefunktion" sind weitere Funktionen, die ein GebÀude neben der dominierenden GebÀudefunktion hat.'; 
     2059COMMENT ON COLUMN ax_gebaeude.name               IS 'NAM "Name" ist der Eigenname oder die Bezeichnung des GebÀudes.'; 
     2060COMMENT ON COLUMN ax_gebaeude.bauweise           IS 'BAW "Bauweise" ist die Beschreibung der Art der Bauweise. Werte siehe ax_gebaeude_bauweise'; 
     2061COMMENT ON COLUMN ax_gebaeude.anzahlderoberirdischengeschosse  IS 'AOG "Anzahl der oberirdischen Geschosse" ist die Anzahl der oberirdischen Geschosse des GebÀudes.'; 
     2062COMMENT ON COLUMN ax_gebaeude.anzahlderunterirdischengeschosse IS 'AUG "Anzahl der unterirdischen Geschosse" ist die Anzahl der unterirdischen Geschosse des GebÀudes.'; 
     2063COMMENT ON COLUMN ax_gebaeude.hochhaus           IS 'HOH "Hochhaus" ist ein GebÀude, das nach GebÀudehöhe und AusprÀgung als Hochhaus zu bezeichnen ist. FÃŒr GebÀude im Geschossbau gilt dieses i.d.R. ab 8 oberirdischen Geschossen, fÃŒr andere GebÀude ab einer GebÀudehöhe von 22 m. Abweichungen hiervon können sich durch die Festlegungen in den lÀnderspezifischen Bauordnungen ergeben.'; 
     2064COMMENT ON COLUMN ax_gebaeude.objekthoehe        IS 'HHO "Objekthöhe" ist die Höhendifferenz in [m] zwischen dem höchsten Punkt der Dachkonstruktion und der festgelegten GelÀndeoberflÀche des GebÀudes.'; 
     2065COMMENT ON COLUMN ax_gebaeude.dachform           IS 'DAF "Dachform" beschreibt die charakteristische Form des Daches. Werte siehe ax_gebaeude_dachform'; 
     2066COMMENT ON COLUMN ax_gebaeude.zustand            IS 'ZUS "Zustand" beschreibt die Beschaffenheit oder die Betriebsbereitschaft von "GebÀude". Diese Attributart wird nur dann optional gefÃŒhrt, wenn der Zustand des GebÀudes vom nutzungsfÀhigen Zustand abweicht. Werte siehe ax_gebaeude_zustand'; 
     2067COMMENT ON COLUMN ax_gebaeude.geschossflaeche    IS 'GFL "GeschossflÀche" ist die GebÀudegeschossflÀche in [qm].'; 
     2068COMMENT ON COLUMN ax_gebaeude.grundflaeche       IS 'GRF "GrundflÀche" ist die GebÀudegrundflÀche in [qm].'; 
     2069COMMENT ON COLUMN ax_gebaeude.umbauterraum       IS 'URA "Umbauter Raum" ist der umbaute Raum [Kubikmeter] des GebÀudes.'; 
     2070COMMENT ON COLUMN ax_gebaeude.baujahr            IS 'BJA "Baujahr" ist das Jahr der Fertigstellung oder der baulichen VerÀnderung des GebÀudes.'; 
     2071COMMENT ON COLUMN ax_gebaeude.lagezurerdoberflaeche IS 'OFL "Lage zur ErdoberflÀche" ist die Angabe der relativen Lage des GebÀudes zur ErdoberflÀche. Diese Attributart wird nur bei nicht ebenerdigen GebÀuden gefÃŒhrt. 1200=Unter der ErdoberflÀche, 1400=AufgestÀndert'; 
     2072COMMENT ON COLUMN ax_gebaeude.dachart            IS 'DAA "Dachart" gibt die Art der Dacheindeckung (z.B. Reetdach) an.'; 
     2073COMMENT ON COLUMN ax_gebaeude.dachgeschossausbau IS 'DGA "Dachgeschossausbau" ist ein Hinweis auf den Ausbau bzw. die AusbaufÀhigkeit des Dachgeschosses.'; 
     2074COMMENT ON COLUMN ax_gebaeude.qualitaetsangaben  IS 'QAG Angaben zur Herkunft der Informationen (Erhebungsstelle). Die Information ist konform zu den Vorgaben aus ISO 19115 zu reprÀsentieren.'; 
     2075 
     2076COMMENT ON COLUMN ax_gebaeude.gehoertzu         IS '-> Beziehung zu ax_gebaeude (0..1): ''GebÀude'' gehört zu ''GebÀude'', wenn die GebÀude baulich zusammen gehören und im Gegensatz zum Bauteil eine gleichrangige Bedeutung haben.'; 
     2077COMMENT ON COLUMN ax_gebaeude.hat               IS '-> Beziehung zu ax_lagebezeichnungmitpseudonummer (0..1): ''GebÀude'' hat ''Lagebezeichnung mit Pseudonummer''.'; 
     2078COMMENT ON COLUMN ax_gebaeude.gehoert           IS '-> Beziehung zu ax_person (0..*): ''GebÀude'' gehört ''Person''. Die Relation kommt nur vor, wenn unabhÀngig von Eintragungen im Grundbuch (''Buchungsstelle'' mit der Attributart ''Buchungsart'') fÃŒr das GebÀude ein Eigentum nach BGB begrÃŒndet ist.'; 
     2079COMMENT ON COLUMN ax_gebaeude.zeigtauf          IS '-> Beziehung zu ax_lagebezeichnungmithausnummer (0..*): ''GebÀude'' zeigt auf ''Lagebezeichnung mit Hausnummer''.'; 
     2080COMMENT ON COLUMN ax_gebaeude.haengtzusammenmit IS '<- Beziehung zu ax_gebaeude (0..1): 
     2081Es handelt sich um die inverse Relationsrichtung.'; 
    18682082 
    18692083 
     
    18722086CREATE TABLE ax_bauteil ( 
    18732087     ogc_fid                  serial NOT NULL, 
    1874      gml_id                   character(16), 
    1875      identifier               character(44), 
     2088     gml_id                   character varying NOT NULL, 
     2089     identifier               character varying, 
    18762090     beginnt                  character(20), 
    18772091     endet                    character(20), 
    1878      advstandardmodell        varchar[], 
    1879      sonstigesmodell          varchar[], 
    1880      anlass                   varchar, 
     2092     advstandardmodell        character varying[], 
     2093     sonstigesmodell          character varying[], 
     2094     anlass                   character varying, 
    18812095     bauart                   integer, 
    18822096     dachform                 integer, 
     
    18912105CREATE INDEX ax_bauteil_geom_idx ON ax_bauteil USING gist (wkb_geometry); 
    18922106 
    1893 CREATE UNIQUE INDEX ax_bauteil_gml ON ax_bauteil USING btree (gml_id,beginnt); 
    1894  
    1895 COMMENT ON TABLE  ax_bauteil        IS 'B a u t e i l'; 
     2107CREATE UNIQUE INDEX ax_bauteil_gml ON ax_bauteil USING btree (gml_id, beginnt); 
     2108 
     2109COMMENT ON TABLE  ax_bauteil        IS 'Angaben zum GebÀude: (REO) "Bauteil"'; 
    18962110COMMENT ON COLUMN ax_bauteil.gml_id IS 'Identifikator, global eindeutig'; 
    18972111 
     
    19012115CREATE TABLE ax_besonderegebaeudelinie ( 
    19022116     ogc_fid             serial NOT NULL, 
    1903      gml_id              character(16), 
    1904      identifier          character(44), 
    1905      beginnt             character(20), 
    1906      endet               character(20), 
    1907      advstandardmodell   varchar, 
     2117     gml_id              character varying NOT NULL, 
     2118     identifier          character varying, 
     2119     beginnt             character(20), 
     2120     endet               character(20), 
     2121     advstandardmodell   character varying[], 
     2122     sonstigesmodell     character varying[], 
    19082123     beschaffenheit      integer[], 
    1909      anlass              varchar, 
     2124     anlass              character varying, 
     2125     -- Beziehungen: 
     2126 
    19102127     CONSTRAINT ax_besonderegebaeudelinie_pk PRIMARY KEY (ogc_fid) 
    19112128); 
     
    19142131 
    19152132CREATE INDEX ax_besonderegebaeudelinie_geom_idx ON ax_besonderegebaeudelinie USING gist (wkb_geometry); 
    1916 CREATE UNIQUE INDEX ax_besonderegebaeudelinie_gml ON ax_besonderegebaeudelinie USING btree (gml_id,beginnt); 
    1917  
    1918 COMMENT ON TABLE ax_besonderegebaeudelinie IS 'B e s o n d e r e   G e b À u d e l i n i e'; 
     2133CREATE UNIQUE INDEX ax_besonderegebaeudelinie_gml ON ax_besonderegebaeudelinie USING btree (gml_id, beginnt); 
     2134 
     2135CREATE INDEX ax_besonderegebaeudelinie_bes  ON ax_besonderegebaeudelinie  USING gin  (beschaffenheit); 
     2136 
     2137COMMENT ON TABLE ax_besonderegebaeudelinie IS 'Angaben zum GebÀude: (REO)  "Besondere GebÀudelinie"'; 
    19192138COMMENT ON COLUMN ax_besonderegebaeudelinie.gml_id IS 'Identifikator, global eindeutig'; 
    19202139 
     
    19242143CREATE TABLE ax_firstlinie ( 
    19252144     ogc_fid             serial NOT NULL, 
    1926      gml_id              character(16), 
    1927      identifier          character(44), 
    1928      beginnt             character(20), 
    1929      endet               character(20), 
    1930      advstandardmodell   varchar, 
    1931      sonstigesmodell     varchar, 
    1932      anlass              varchar, 
    1933      art                 varchar, 
    1934      uri                 varchar, 
     2145     gml_id              character varying NOT NULL, 
     2146     identifier          character varying, 
     2147     beginnt             character(20), 
     2148     endet               character(20), 
     2149     advstandardmodell   character varying[], 
     2150     sonstigesmodell     character varying[], 
     2151     anlass              character varying, 
     2152     art                 character varying, 
     2153     uri                 character varying, -- wirklich? 
    19352154     CONSTRAINT ax_firstlinie_pk PRIMARY KEY (ogc_fid) 
    19362155); 
     
    19392158 
    19402159CREATE INDEX ax_firstlinie_geom_idx ON ax_firstlinie USING gist (wkb_geometry); 
    1941 CREATE UNIQUE INDEX ax_firstlinie_gml ON ax_firstlinie USING btree (gml_id,beginnt); 
    1942  
    1943 COMMENT ON TABLE  ax_firstlinie        IS 'F i r s t l i n i e'; 
     2160CREATE UNIQUE INDEX ax_firstlinie_gml ON ax_firstlinie USING btree (gml_id, beginnt); 
     2161 
     2162COMMENT ON TABLE  ax_firstlinie        IS 'Angaben zum GebÀude: (REO) "Firstlinie"'; 
    19442163COMMENT ON COLUMN ax_firstlinie.gml_id IS 'Identifikator, global eindeutig'; 
    19452164 
     
    19492168CREATE TABLE ax_besonderergebaeudepunkt ( 
    19502169     ogc_fid             serial NOT NULL, 
    1951      gml_id              character(16), 
    1952      identifier          character(44), 
    1953      beginnt             character(20), 
    1954      endet               character(20), 
    1955      advstandardmodell   varchar, 
    1956      anlass              varchar, 
     2170     gml_id              character varying NOT NULL, 
     2171     identifier          character varying, 
     2172     beginnt             character(20), 
     2173     endet               character(20), 
     2174     advstandardmodell   character varying[], 
     2175     sonstigesmodell     character varying[], 
     2176     anlass              character varying, 
    19572177     land                integer, 
    19582178     stelle              integer, 
    1959      punktkennung        varchar, 
    1960      art                 varchar, 
    1961      name                varchar[], 
    1962      sonstigeeigenschaft varchar[], 
     2179     punktkennung        character varying, 
     2180     art                 character varying, 
     2181     name                character varying[], 
     2182     sonstigeeigenschaft character varying[], 
    19632183     CONSTRAINT ax_besonderergebaeudepunkt_pk PRIMARY KEY (ogc_fid) 
    19642184); 
     
    19662186SELECT AddGeometryColumn('ax_besonderergebaeudepunkt','dummy',:alkis_epsg,'POINT',2); 
    19672187 
    1968 CREATE UNIQUE INDEX ax_besonderergebaeudepunkt_gml ON ax_besonderergebaeudepunkt USING btree (gml_id,beginnt); 
    1969  
    1970 COMMENT ON TABLE  ax_besonderergebaeudepunkt        IS 'B e s o n d e r e r   G e b À u d e p u n k t'; 
     2188CREATE UNIQUE INDEX ax_besonderergebaeudepunkt_gml ON ax_besonderergebaeudepunkt USING btree (gml_id, beginnt); 
     2189 
     2190COMMENT ON TABLE  ax_besonderergebaeudepunkt        IS 'Angaben zum GebÀude: (NREO) "Besonderer GebÀudepunkt"'; 
    19712191COMMENT ON COLUMN ax_besonderergebaeudepunkt.gml_id IS 'Identifikator, global eindeutig'; 
    19722192 
     
    19742194--AX_Nutzung_Gebaeude 
    19752195-- ** Tabelle bisher noch nicht generiert 
    1976  
    19772196 
    19782197--*** ############################################################ 
     
    19842203--   DAQ qualitaetsangaben 
    19852204 
    1986  
    1987 --** Objektartengruppe: Siedlung (in Objektbereich:TatsÀchliche Nutzung) 
    1988 --   =================================================================== 
     2205--** Objektartengruppe: Siedlung (in Objektbereich: TatsÀchliche Nutzung) 
     2206--   ==================================================================== 
    19892207 
    19902208-- W o h n b a u f l À c h e 
    19912209-- ---------------------------------------------- 
    1992 -- 'WohnbauflÀche' ist eine baulich geprÀgte FlÀche einschließlich der mit ihr im Zusammenhang 
    1993 -- stehenden FreiflÀchen (z.B. VorgÀrten, ZiergÀrten, Zufahrten, StellplÀtze und HofraumflÀchen), 
    1994 -- die ausschließlich oder vorwiegend dem Wohnen dient. 
    19952210CREATE TABLE ax_wohnbauflaeche ( 
    19962211     ogc_fid             serial NOT NULL, 
    1997      gml_id              character(16), 
    1998      identifier          character(44), 
    1999      beginnt             character(20), 
    2000      endet               character(20), 
    2001      advstandardmodell   varchar, 
    2002      anlass              varchar, 
     2212     gml_id              character varying NOT NULL, 
     2213     identifier          character varying, 
     2214     beginnt             character(20), 
     2215     endet               character(20), 
     2216     advstandardmodell   character varying[], 
     2217     sonstigesmodell     character varying[], 
     2218     anlass              character varying, 
    20032219     artderbebauung      integer, 
    20042220     zustand             integer, 
    2005      name                varchar, 
     2221     name                character varying, 
    20062222     CONSTRAINT ax_wohnbauflaeche_pk PRIMARY KEY (ogc_fid) 
    20072223); 
     
    20112227CREATE INDEX ax_wohnbauflaeche_geom_idx ON ax_wohnbauflaeche USING gist (wkb_geometry); 
    20122228 
    2013 CREATE UNIQUE INDEX ax_wohnbauflaeche_gml ON ax_wohnbauflaeche USING btree (gml_id,beginnt); 
    2014  
    2015 COMMENT ON TABLE  ax_wohnbauflaeche                 IS 'W o h n b a u f l À c h e ist eine baulich geprÀgte FlÀche einschließlich der mit ihr im Zusammenhang stehenden FreiflÀchen (z.B. VorgÀrten, ZiergÀrten, Zufahrten, StellplÀtze und HofraumflÀchen), die ausschließlich oder vorwiegend dem Wohnen dient.'; 
     2229CREATE UNIQUE INDEX ax_wohnbauflaeche_gml ON ax_wohnbauflaeche USING btree (gml_id, beginnt); 
     2230 
     2231COMMENT ON TABLE  ax_wohnbauflaeche                 IS 'TatsÀchliche Nutzung / Siedlung: (REO) "WohnbauflÀche" ist eine baulich geprÀgte FlÀche einschließlich der mit ihr im Zusammenhang stehenden FreiflÀchen (z.B. VorgÀrten, ZiergÀrten, Zufahrten, StellplÀtze und HofraumflÀchen), die ausschließlich oder vorwiegend dem Wohnen dient.'; 
    20162232COMMENT ON COLUMN ax_wohnbauflaeche.gml_id          IS 'Identifikator, global eindeutig'; 
    20172233COMMENT ON COLUMN ax_wohnbauflaeche.artderbebauung  IS 'BEB "Art der Bebauung" differenziert nach offener und geschlossener Bauweise aus topographischer Sicht und nicht nach gesetzlichen Vorgaben (z.B. BauGB).'; 
     
    20222238-- Objektart: I n d u s t r i e -   u n d   G e w e r b e f l À c h e 
    20232239-- -------------------------------------------------------------------- 
    2024 -- Industrie- und GewerbeflÀche' ist eine FlÀche, die vorwiegend industriellen oder gewerblichen Zwecken dient. 
    20252240CREATE TABLE ax_industrieundgewerbeflaeche ( 
    20262241     ogc_fid             serial NOT NULL, 
    2027      gml_id              character(16), 
    2028      identifier          character(44), 
    2029      beginnt             character(20), 
    2030      endet               character(20), 
    2031      advstandardmodell   varchar, 
    2032      anlass              varchar, 
     2242     gml_id              character varying NOT NULL, 
     2243     identifier          character varying, 
     2244     beginnt             character(20), 
     2245     endet               character(20), 
     2246     advstandardmodell   character varying[], 
     2247     sonstigesmodell     character varying[], 
     2248     anlass              character varying, 
    20332249     funktion            integer, 
    2034      name                varchar, 
     2250     name                character varying, 
    20352251     zustand             integer, 
    20362252     foerdergut          integer, 
     
    20442260CREATE INDEX ax_industrieundgewerbeflaeche_geom_idx ON ax_industrieundgewerbeflaeche USING gist (wkb_geometry); 
    20452261 
    2046 CREATE UNIQUE INDEX ax_industrieundgewerbeflaeche_gml ON ax_industrieundgewerbeflaeche USING btree (gml_id,beginnt); 
    2047  
    2048 COMMENT ON TABLE  ax_industrieundgewerbeflaeche            IS 'I n d u s t r i e -   u n d   G e w e r b e f l À c h e'; 
     2262CREATE UNIQUE INDEX ax_industrieundgewerbeflaeche_gml ON ax_industrieundgewerbeflaeche USING btree (gml_id, beginnt); 
     2263 
     2264COMMENT ON TABLE  ax_industrieundgewerbeflaeche            IS 'TatsÀchliche Nutzung / Siedlung: (REO) "Industrie- und GewerbeflÀche" ist eine FlÀche, die vorwiegend industriellen oder gewerblichen Zwecken dient.'; 
    20492265COMMENT ON COLUMN ax_industrieundgewerbeflaeche.gml_id     IS 'Identifikator, global eindeutig'; 
    20502266COMMENT ON COLUMN ax_industrieundgewerbeflaeche.name       IS 'NAM "Name" ist der Eigenname von "Industrie- und GewerbeflÀche" insbesondere außerhalb von Ortslagen.'; 
     
    20602276CREATE TABLE ax_halde 
    20612277(    ogc_fid             serial NOT NULL, 
    2062      gml_id              character(16), 
    2063      identifier          character(44), 
    2064      beginnt             character(20), 
    2065      endet               character(20), 
    2066      advstandardmodell   varchar, 
    2067      anlass              varchar, 
     2278     gml_id              character varying NOT NULL, 
     2279     identifier          character varying, 
     2280     beginnt             character(20), 
     2281     endet               character(20), 
     2282     advstandardmodell   character varying[], 
     2283     sonstigesmodell character varying[], 
     2284     anlass              character varying, 
    20682285     lagergut            integer, 
    2069      name                varchar, 
     2286     name                character varying, 
    20702287     zustand             integer, 
    20712288     CONSTRAINT ax_halde_pk PRIMARY KEY (ogc_fid) 
     
    20752292 
    20762293CREATE INDEX ax_halde_geom_idx ON ax_halde USING gist (wkb_geometry); 
    2077  
    2078 CREATE UNIQUE INDEX ax_halde_gml ON ax_halde USING btree (gml_id,beginnt); 
    2079  
    2080 COMMENT ON TABLE ax_halde             IS 'H a l d e'; 
     2294CREATE UNIQUE INDEX ax_halde_gml ON ax_halde USING btree (gml_id, beginnt); 
     2295 
     2296COMMENT ON TABLE ax_halde             IS 'TatsÀchliche Nutzung / __: (REO) "Halde"'; 
    20812297COMMENT ON COLUMN ax_halde.gml_id     IS 'Identifikator, global eindeutig'; 
    20822298COMMENT ON COLUMN ax_halde.name       IS 'NAM "Name" ist die einer "Halde" zugehörige Bezeichnung oder deren Eigenname.'; 
     
    20902306CREATE TABLE ax_bergbaubetrieb ( 
    20912307     ogc_fid             serial NOT NULL, 
    2092      gml_id              character(16), 
    2093      identifier          character(44), 
    2094      beginnt             character(20), 
    2095      endet               character(20), 
    2096      advstandardmodell   varchar, 
    2097      anlass              varchar, 
     2308     gml_id              character varying NOT NULL, 
     2309     identifier          character varying, 
     2310     beginnt             character(20), 
     2311     endet               character(20), 
     2312     advstandardmodell   character varying[], 
     2313     sonstigesmodell     character varying[], 
     2314     anlass              character varying, 
    20982315     abbaugut            integer, 
    2099      name                varchar, 
    2100      bezeichnung         varchar, 
     2316     name                character varying, 
     2317     bezeichnung         character varying, 
    21012318     zustand             integer, 
    21022319     CONSTRAINT ax_bergbaubetrieb_pk PRIMARY KEY (ogc_fid) 
     
    21062323 
    21072324CREATE INDEX ax_bergbaubetrieb_geom_idx   ON ax_bergbaubetrieb USING gist  (wkb_geometry); 
    2108 CREATE UNIQUE INDEX ax_bergbaubetrieb_gml ON ax_bergbaubetrieb USING btree (gml_id,beginnt); 
    2109  
    2110 COMMENT ON TABLE  ax_bergbaubetrieb             IS '"Bergbaubetrieb" ist eine FlÀche, die fÃŒr die Förderung des Abbaugutes unter Tage genutzt wird.'; 
     2325CREATE UNIQUE INDEX ax_bergbaubetrieb_gml ON ax_bergbaubetrieb USING btree (gml_id, beginnt); 
     2326 
     2327COMMENT ON TABLE  ax_bergbaubetrieb             IS 'TatsÀchliche Nutzung / __: (REO) "Bergbaubetrieb" ist eine FlÀche, die fÃŒr die Förderung des Abbaugutes unter Tage genutzt wird.'; 
    21112328COMMENT ON COLUMN ax_bergbaubetrieb.gml_id      IS 'Identifikator, global eindeutig'; 
    21122329COMMENT ON COLUMN ax_bergbaubetrieb.abbaugut    IS 'AGT "Abbaugut" gibt an, welches Material abgebaut wird.'; 
     
    21202337CREATE TABLE ax_tagebaugrubesteinbruch ( 
    21212338     ogc_fid             serial NOT NULL, 
    2122      gml_id              character(16), 
    2123      identifier          character(44), 
    2124      beginnt             character(20), 
    2125      endet               character(20), 
    2126      advstandardmodell   varchar, 
    2127      anlass              varchar, 
     2339     gml_id              character varying NOT NULL, 
     2340     identifier          character varying, 
     2341     beginnt             character(20), 
     2342     endet               character(20), 
     2343     advstandardmodell   character varying[], 
     2344     sonstigesmodell     character varying[], 
     2345     anlass              character varying, 
    21282346     abbaugut            integer, 
    2129      name                varchar, 
     2347     name                character varying, 
    21302348     zustand             integer, 
     2349 
    21312350     CONSTRAINT ax_tagebaugrubesteinbruch_pk PRIMARY KEY (ogc_fid) 
    21322351); 
     
    21362355CREATE INDEX ax_tagebaugrubesteinbruch_geom_idx ON ax_tagebaugrubesteinbruch USING gist (wkb_geometry); 
    21372356 
    2138 CREATE UNIQUE INDEX ax_tagebaugrubesteinbruchb_gml ON ax_tagebaugrubesteinbruch USING btree (gml_id,beginnt); 
    2139  
    2140 COMMENT ON TABLE  ax_tagebaugrubesteinbruch          IS '"T a g e b a u ,  G r u b e ,  S t e i n b r u c h" ist eine FlÀche, auf der oberirdisch Bodenmaterial abgebaut wird. Rekultivierte Tagebaue, Gruben, SteinbrÃŒche werden als Objekte entsprechend der vorhandenen Nutzung erfasst.'; 
     2357CREATE UNIQUE INDEX ax_tagebaugrubesteinbruchb_gml ON ax_tagebaugrubesteinbruch USING btree (gml_id, beginnt); 
     2358 
     2359COMMENT ON TABLE  ax_tagebaugrubesteinbruch          IS 'TatsÀchliche Nutzung / __: (REO) "Tagebau, Grube, Steinbruch" ist eine FlÀche, auf der oberirdisch Bodenmaterial abgebaut wird. Rekultivierte Tagebaue, Gruben, SteinbrÃŒche werden als Objekte entsprechend der vorhandenen Nutzung erfasst.'; 
    21412360COMMENT ON COLUMN ax_tagebaugrubesteinbruch.gml_id   IS 'Identifikator, global eindeutig'; 
    21422361COMMENT ON COLUMN ax_tagebaugrubesteinbruch.name     IS 'NAM "Name" ist der Eigenname von "Tagebau, Grube, Steinbruch".'; 
     
    21492368CREATE TABLE ax_flaechegemischternutzung ( 
    21502369     ogc_fid             serial NOT NULL, 
    2151      gml_id              character(16), 
    2152      identifier          character(44), 
    2153      beginnt             character(20), 
    2154      endet               character(20), 
    2155      advstandardmodell   varchar, 
    2156      anlass              varchar, 
     2370     gml_id              character varying NOT NULL, 
     2371     identifier          character varying, 
     2372     beginnt             character(20), 
     2373     endet               character(20), 
     2374     advstandardmodell   character varying[], 
     2375     sonstigesmodell     character varying[], 
     2376     anlass              character varying, 
    21572377     artderbebauung      integer, 
    21582378     funktion            integer, 
    2159      name                varchar, 
     2379     name                character varying, 
    21602380     zustand             integer, 
    21612381     CONSTRAINT ax_flaechegemischternutzung_pk PRIMARY KEY (ogc_fid) 
     
    21642384SELECT AddGeometryColumn('ax_flaechegemischternutzung','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
    21652385 
    2166 CREATE INDEX ax_flaechegemischternutzung_geom_idx ON ax_flaechegemischternutzung USING gist (wkb_geometry); 
    2167  
    2168 CREATE UNIQUE INDEX ax_flaechegemischternutzung_gml ON ax_flaechegemischternutzung USING btree (gml_id,beginnt); 
    2169  
    2170 COMMENT ON TABLE  ax_flaechegemischternutzung        IS '"FlÀche gemischter Nutzung" ist eine bebaute FlÀche einschließlich der mit ihr im Zusammenhang stehenden FreiflÀche (HofraumflÀche, Hausgarten), auf der keine Art der baulichen Nutzung vorherrscht. Solche FlÀchen sind insbesondere lÀndlich-dörflich geprÀgte FlÀchen mit land- und forstwirtschaftlichen Betrieben, WohngebÀuden u.a. sowie stÀdtisch geprÀgte Kerngebiete mit Handelsbetrieben und zentralen Einrichtungen fÃŒr die Wirtschaft und die Verwaltung.'; 
    2171 COMMENT ON COLUMN ax_flaechegemischternutzung.gml_id IS 'Identifikator, global eindeutig'; 
     2386CREATE INDEX ax_flaechegemischternutzung_geom_idx     ON ax_flaechegemischternutzung USING gist (wkb_geometry); 
     2387CREATE UNIQUE INDEX ax_flaechegemischternutzung_gml   ON ax_flaechegemischternutzung USING btree (gml_id, beginnt); 
     2388 
     2389COMMENT ON TABLE  ax_flaechegemischternutzung         IS 'TatsÀchliche Nutzung / __: (REO) "FlÀche gemischter Nutzung" ist eine bebaute FlÀche einschließlich der mit ihr im Zusammenhang stehenden FreiflÀche (HofraumflÀche, Hausgarten), auf der keine Art der baulichen Nutzung vorherrscht. Solche FlÀchen sind insbesondere lÀndlich-dörflich geprÀgte FlÀchen mit land- und forstwirtschaftlichen Betrieben, WohngebÀuden u.a. sowie stÀdtisch geprÀgte Kerngebiete mit Handelsbetrieben und zentralen Einrichtungen fÃŒr die Wirtschaft und die Verwaltung.'; 
     2390COMMENT ON COLUMN ax_flaechegemischternutzung.gml_id  IS 'Identifikator, global eindeutig'; 
    21722391COMMENT ON COLUMN ax_flaechegemischternutzung.artderbebauung IS 'BEB "Art der Bebauung" differenziert nach offener und geschlossener Bauweise aus topographischer Sicht und nicht nach gesetzlichen Vorgaben (z.B. BauGB).'; 
    21732392COMMENT ON COLUMN ax_flaechegemischternutzung.funktion       IS 'FKT "Funktion" ist die zum Zeitpunkt der Erhebung vorherrschende Nutzung (Dominanzprinzip).'; 
     
    21802399CREATE TABLE ax_flaechebesondererfunktionalerpraegung ( 
    21812400     ogc_fid             serial NOT NULL, 
    2182      gml_id              character(16), 
    2183      identifier          character(44), 
    2184      beginnt             character(20), 
    2185      endet               character(20), 
    2186      advstandardmodell   varchar, 
    2187      anlass              varchar, 
     2401     gml_id              character varying NOT NULL, 
     2402     identifier          character varying, 
     2403     beginnt             character(20), 
     2404     endet               character(20), 
     2405     advstandardmodell   character varying[], 
     2406     sonstigesmodell     character varying[], 
     2407     anlass              character varying, 
    21882408     funktion            integer, 
    21892409     artderbebauung      integer, 
    2190      name                varchar, 
     2410     name                character varying, 
    21912411     zustand             integer, 
    21922412     CONSTRAINT ax_flaechebesondererfunktionalerpraegung_pk PRIMARY KEY (ogc_fid) 
     
    21952415SELECT AddGeometryColumn('ax_flaechebesondererfunktionalerpraegung','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
    21962416 
    2197 CREATE INDEX ax_flaechebesondererfunktionalerpraegung_geom_idx ON ax_flaechebesondererfunktionalerpraegung USING gist (wkb_geometry); 
    2198 CREATE UNIQUE INDEX ax_flaechebesondererfunktionalerpraegung_gml ON ax_flaechebesondererfunktionalerpraegung USING btree (gml_id,beginnt); 
    2199  
    2200 COMMENT ON TABLE  ax_flaechebesondererfunktionalerpraegung        IS '"FlÀche besonderer funktionaler PrÀgung" ist eine baulich geprÀgte FlÀche einschließlich der mit ihr im Zusammenhang stehenden FreiflÀche, auf denen vorwiegend GebÀude und/oder Anlagen zur ErfÃŒllung öffentlicher Zwecke oder historische Anlagen vorhanden sind.'; 
     2417CREATE INDEX ax_flaechebesondererfunktionalerpraegung_geom_idx    ON ax_flaechebesondererfunktionalerpraegung USING gist (wkb_geometry); 
     2418CREATE UNIQUE INDEX ax_flaechebesondererfunktionalerpraegung_gml  ON ax_flaechebesondererfunktionalerpraegung USING btree (gml_id, beginnt); 
     2419 
     2420COMMENT ON TABLE  ax_flaechebesondererfunktionalerpraegung        IS 'TatsÀchliche Nutzung / __: (REO) "FlÀche besonderer funktionaler PrÀgung" ist eine baulich geprÀgte FlÀche einschließlich der mit ihr im Zusammenhang stehenden FreiflÀche, auf denen vorwiegend GebÀude und/oder Anlagen zur ErfÃŒllung öffentlicher Zwecke oder historische Anlagen vorhanden sind.'; 
    22012421COMMENT ON COLUMN ax_flaechebesondererfunktionalerpraegung.gml_id IS 'Identifikator, global eindeutig'; 
    22022422COMMENT ON COLUMN ax_flaechebesondererfunktionalerpraegung.funktion       IS 'FKT "Funktion" ist die zum Zeitpunkt der Erhebung vorherrschende Nutzung von "FlÀche besonderer funktionaler PrÀgung".'; 
     
    22102430CREATE TABLE ax_sportfreizeitunderholungsflaeche ( 
    22112431     ogc_fid             serial NOT NULL, 
    2212      gml_id              character(16), 
    2213      identifier          character(44), 
    2214      beginnt             character(20), 
    2215      endet               character(20), 
    2216      advstandardmodell   varchar, 
    2217      anlass              varchar, 
     2432     gml_id              character varying NOT NULL, 
     2433     identifier          character varying, 
     2434     beginnt             character(20), 
     2435     endet               character(20), 
     2436     advstandardmodell   character varying[], 
     2437     sonstigesmodell     character varying[], 
     2438     anlass              character varying, 
    22182439     funktion            integer, 
    22192440     zustand             integer, 
    2220      name                varchar, 
     2441     name                character varying, 
    22212442     CONSTRAINT ax_sportfreizeitunderholungsflaeche_pk PRIMARY KEY (ogc_fid) 
    22222443); 
     
    22262447CREATE INDEX ax_sportfreizeitunderholungsflaeche_geom_idx ON ax_sportfreizeitunderholungsflaeche USING gist (wkb_geometry); 
    22272448 
    2228 CREATE UNIQUE INDEX ax_sportfreizeitunderholungsflaeche_gml ON ax_sportfreizeitunderholungsflaeche USING btree (gml_id,beginnt); 
    2229  
    2230 COMMENT ON TABLE  ax_sportfreizeitunderholungsflaeche          IS '"Sport-, Freizeit- und ErhohlungsflÀche" ist eine bebaute oder unbebaute FlÀche, die dem Sport, der Freizeitgestaltung oder der Erholung dient.'; 
     2449CREATE UNIQUE INDEX ax_sportfreizeitunderholungsflaeche_gml ON ax_sportfreizeitunderholungsflaeche USING btree (gml_id, beginnt); 
     2450 
     2451COMMENT ON TABLE  ax_sportfreizeitunderholungsflaeche          IS 'TatsÀchliche Nutzung / __: (REO) "Sport-, Freizeit- und ErhohlungsflÀche" ist eine bebaute oder unbebaute FlÀche, die dem Sport, der Freizeitgestaltung oder der Erholung dient.'; 
    22312452COMMENT ON COLUMN ax_sportfreizeitunderholungsflaeche.gml_id   IS 'Identifikator, global eindeutig'; 
    22322453COMMENT ON COLUMN ax_sportfreizeitunderholungsflaeche.funktion IS 'FKT "Funktion" ist die Art der Nutzung von "Sport-, Freizeit- und ErholungsflÀche".'; 
     
    22392460CREATE TABLE ax_friedhof ( 
    22402461     ogc_fid             serial NOT NULL, 
    2241      gml_id              character(16), 
    2242      identifier          character(44), 
    2243      beginnt             character(20), 
    2244      endet               character(20), 
    2245      advstandardmodell   varchar, 
    2246      anlass              varchar, 
     2462     gml_id              character varying NOT NULL, 
     2463     identifier          character varying, 
     2464     beginnt             character(20), 
     2465     endet               character(20), 
     2466     advstandardmodell   character varying[], 
     2467     sonstigesmodell     character varying[], 
     2468     anlass              character varying, 
    22472469     funktion            integer, 
    2248      name                varchar, 
     2470     name                character varying, 
    22492471     zustand             integer, 
    22502472     CONSTRAINT ax_friedhof_pk PRIMARY KEY (ogc_fid) 
     
    22542476 
    22552477CREATE INDEX ax_friedhof_geom_idx ON ax_friedhof USING gist (wkb_geometry); 
    2256 CREATE UNIQUE INDEX ax_friedhof_gml ON ax_friedhof USING btree (gml_id,beginnt); 
    2257  
    2258 COMMENT ON TABLE  ax_friedhof           IS '"F r i e d h o f" ist eine FlÀche, auf der Tote bestattet sind.'; 
     2478CREATE UNIQUE INDEX ax_friedhof_gml ON ax_friedhof USING btree (gml_id, beginnt); 
     2479 
     2480COMMENT ON TABLE  ax_friedhof           IS 'TatsÀchliche Nutzung / __: (REO) "Friedhof" ist eine FlÀche, auf der Tote bestattet sind.'; 
    22592481COMMENT ON COLUMN ax_friedhof.gml_id    IS 'Identifikator, global eindeutig'; 
    22602482COMMENT ON COLUMN ax_friedhof.funktion  IS 'FKT "Funktion" ist die Art der BegrÀbnisstÀtte.'; 
     
    22632485 
    22642486 
    2265 --** Objektartengruppe: Verkehr (in Objektbereich:TatsÀchliche Nutzung) 
     2487--** Objektartengruppe: Verkehr (in Objektbereich: TatsÀchliche Nutzung) 
    22662488--   =================================================================== 
    22672489 
    2268  
    22692490-- S t r a s s e n v e r k e h r 
    22702491-- ---------------------------------------------- 
    22712492CREATE TABLE ax_strassenverkehr ( 
    22722493     ogc_fid             serial NOT NULL, 
    2273      gml_id              character(16), 
    2274      identifier          character(44), 
    2275      beginnt             character(20), 
    2276      endet               character(20), 
    2277      advstandardmodell   varchar, 
    2278      anlass              varchar, 
     2494     gml_id              character varying NOT NULL, 
     2495     identifier          character varying, 
     2496     beginnt             character(20), 
     2497     endet               character(20), 
     2498     advstandardmodell   character varying[], 
     2499     sonstigesmodell     character varying[], 
     2500     anlass              character varying, 
    22792501     funktion            integer, 
    2280      name                varchar, 
    2281      zweitname           varchar, 
     2502     name                character varying, 
     2503     zweitname           character varying, 
    22822504     zustand             integer, 
    22832505     land                integer, 
     
    22852507     kreis               integer, 
    22862508     gemeinde            integer, 
    2287      lage                varchar, 
     2509     lage                character varying, 
     2510     unverschluesselt    character varying, 
    22882511     CONSTRAINT ax_strassenverkehr_pk PRIMARY KEY (ogc_fid) 
    22892512); 
     
    22922515 
    22932516CREATE INDEX ax_strassenverkehr_geom_idx ON ax_strassenverkehr USING gist (wkb_geometry); 
    2294 CREATE UNIQUE INDEX ax_strassenverkehr_gml ON ax_strassenverkehr USING btree (gml_id,beginnt); 
    2295  
    2296 COMMENT ON TABLE  ax_strassenverkehr           IS '"S t r a s s e n v e r k e h r" umfasst alle fÃŒr die bauliche Anlage Straße erforderlichen sowie dem Straßenverkehr dienenden bebauten und unbebauten FlÀchen.'; 
     2517CREATE UNIQUE INDEX ax_strassenverkehr_gml ON ax_strassenverkehr USING btree (gml_id, beginnt); 
     2518 
     2519COMMENT ON TABLE  ax_strassenverkehr           IS 'TatsÀchliche Nutzung / __: (REO) "Strassenverkehr" umfasst alle fÃŒr die bauliche Anlage Straße erforderlichen sowie dem Straßenverkehr dienenden bebauten und unbebauten FlÀchen.'; 
    22972520COMMENT ON COLUMN ax_strassenverkehr.gml_id    IS 'Identifikator, global eindeutig'; 
    22982521COMMENT ON COLUMN ax_strassenverkehr.funktion  IS 'FKT "Funktion" beschreibt die verkehrliche Nutzung von "Straßenverkehr".'; 
     
    23042527-- W e g 
    23052528-- ---------------------------------------------- 
    2306 -- 'Weg' umfasst alle FlÀchen, die zum Befahren und/oder Begehen vorgesehen sind. 
    2307 -- Zum 'Weg' gehören auch Seitenstreifen und GrÀben zur WegentwÀsserung. 
    23082529CREATE TABLE ax_weg ( 
    23092530     ogc_fid             serial NOT NULL, 
    2310      gml_id              character(16), 
    2311      identifier          character(44), 
    2312      beginnt             character(20), 
    2313      endet               character(20), 
    2314      advstandardmodell   varchar, 
    2315      anlass              varchar, 
     2531     gml_id              character varying NOT NULL, 
     2532     identifier          character varying, 
     2533     beginnt             character(20), 
     2534     endet               character(20), 
     2535     advstandardmodell   character varying[], 
     2536     sonstigesmodell     character varying[], 
     2537     anlass              character varying, 
    23162538     funktion            integer, 
    2317      name                varchar, 
    2318      bezeichnung         varchar, 
     2539     name                character varying, 
     2540     bezeichnung         character varying, 
    23192541     land                integer, 
    23202542     regierungsbezirk    integer, 
    23212543     kreis               integer, 
    23222544     gemeinde            integer, 
    2323      lage                varchar, 
     2545     lage                character varying, 
     2546     unverschluesselt    character varying, 
    23242547     CONSTRAINT ax_weg_pk PRIMARY KEY (ogc_fid) 
    23252548); 
     
    23282551 
    23292552CREATE INDEX ax_weg_geom_idx ON ax_weg USING gist (wkb_geometry); 
    2330 CREATE UNIQUE INDEX ax_weg_gml ON ax_weg USING btree (gml_id,beginnt); 
    2331  
    2332 COMMENT ON TABLE  ax_weg              IS '"W e g" umfasst alle FlÀchen, die zum Befahren und/oder Begehen vorgesehen sind. Zum "Weg" gehören auch Seitenstreifen und GrÀben zur WegentwÀsserung.'; 
     2553CREATE UNIQUE INDEX ax_weg_gml ON ax_weg USING btree (gml_id, beginnt); 
     2554 
     2555COMMENT ON TABLE  ax_weg              IS 'TatsÀchliche Nutzung / __: (REO) "Weg" umfasst alle FlÀchen, die zum Befahren und/oder Begehen vorgesehen sind. Zum "Weg" gehören auch Seitenstreifen und GrÀben zur WegentwÀsserung.'; 
    23332556COMMENT ON COLUMN ax_weg.gml_id       IS 'Identifikator, global eindeutig'; 
    23342557COMMENT ON COLUMN ax_weg.funktion     IS 'FKT "Funktion" ist die zum Zeitpunkt der Erhebung objektiv erkennbare oder feststellbare vorherrschend vorkommende Nutzung.'; 
     
    23392562-- P l a t z 
    23402563-- ---------------------------------------------- 
    2341 -- Platz' ist eine VerkehrsflÀche in Ortschaften oder eine ebene, befestigte oder unbefestigte FlÀche, die bestimmten Zwecken dient (z. B. fÃŒr Verkehr, MÀrkte, Festveranstaltungen). 
    23422564CREATE TABLE ax_platz ( 
    23432565     ogc_fid             serial NOT NULL, 
    2344      gml_id              character(16), 
    2345      identifier          character(44), 
    2346      beginnt             character(20), 
    2347      endet               character(20), 
    2348      advstandardmodell   varchar, 
    2349      anlass              varchar, 
     2566     gml_id              character varying NOT NULL, 
     2567     identifier          character varying, 
     2568     beginnt             character(20), 
     2569     endet               character(20), 
     2570     advstandardmodell   character varying[], 
     2571     sonstigesmodell     character varying[], 
     2572     anlass              character varying, 
    23502573     funktion            integer, 
    2351      name                varchar, 
    2352      zweitname           varchar, 
     2574     name                character varying, 
     2575     zweitname           character varying, 
    23532576     land                integer, 
    23542577     regierungsbezirk    integer, 
    23552578     kreis               integer, 
    23562579     gemeinde            integer, 
    2357      lage            varchar, 
     2580     lage                character varying,  -- StraßenschlÃŒssel 
     2581     unverschluesselt    character varying,  -- Gewanne? 
    23582582     CONSTRAINT ax_platz_pk PRIMARY KEY (ogc_fid) 
    23592583); 
     
    23612585SELECT AddGeometryColumn('ax_platz','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
    23622586 
    2363 CREATE INDEX ax_platz_geom_idx ON ax_platz USING gist (wkb_geometry); 
    2364 CREATE UNIQUE INDEX ax_platz_gml ON ax_platz USING btree (gml_id,beginnt); 
    2365  
    2366 COMMENT ON TABLE  ax_platz           IS 'P l a t z  ist eine VerkehrsflÀche in Ortschaften oder eine ebene, befestigte oder unbefestigte FlÀche, die bestimmten Zwecken dient (z. B. fÃŒr Verkehr, MÀrkte, Festveranstaltungen).'; 
     2587CREATE INDEX ax_platz_geom_idx   ON ax_platz USING gist (wkb_geometry); 
     2588CREATE UNIQUE INDEX ax_platz_gml ON ax_platz USING btree (gml_id, beginnt); 
     2589 
     2590COMMENT ON TABLE  ax_platz           IS 'TatsÀchliche Nutzung / __: (REO) "Platz" ist eine VerkehrsflÀche in Ortschaften oder eine ebene, befestigte oder unbefestigte FlÀche, die bestimmten Zwecken dient (z. B. fÃŒr Verkehr, MÀrkte, Festveranstaltungen).'; 
    23672591COMMENT ON COLUMN ax_platz.gml_id    IS 'Identifikator, global eindeutig'; 
    23682592COMMENT ON COLUMN ax_platz.funktion  IS 'FKT "Funktion" ist die zum Zeitpunkt der Erhebung objektiv erkennbare oder feststellbare vorkommende Nutzung.'; 
     
    23752599CREATE TABLE ax_bahnverkehr ( 
    23762600     ogc_fid             serial NOT NULL, 
    2377      gml_id              character(16), 
    2378      identifier          character(44), 
    2379      beginnt             character(20), 
    2380      endet               character(20), 
    2381      advstandardmodell   varchar, 
    2382      anlass              varchar, 
     2601     gml_id              character varying NOT NULL, 
     2602     identifier          character varying, 
     2603     beginnt             character(20), 
     2604     endet               character(20), 
     2605     advstandardmodell   character varying[], 
     2606     sonstigesmodell     character varying[], 
     2607     anlass              character varying, 
    23832608     funktion            integer, 
    23842609     bahnkategorie       integer, 
    2385      bezeichnung         varchar, 
    2386      nummerderbahnstrecke varchar, 
    2387      zweitname           varchar, 
     2610     bezeichnung         character varying, 
     2611     nummerderbahnstrecke character varying, 
     2612     zweitname           character varying, 
    23882613     zustand             integer, 
    23892614     CONSTRAINT ax_bahnverkehr_pk PRIMARY KEY (ogc_fid) 
     
    23922617SELECT AddGeometryColumn('ax_bahnverkehr','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
    23932618 
    2394 CREATE INDEX ax_bahnverkehr_geom_idx ON ax_bahnverkehr USING gist (wkb_geometry); 
    2395 CREATE UNIQUE INDEX ax_bahnverkehr_gml ON ax_bahnverkehr USING btree (gml_id,beginnt); 
    2396  
    2397 COMMENT ON TABLE  ax_bahnverkehr        IS '"B a h n v e r k e h r" umfasst alle fÃŒr den Schienenverkehr erforderlichen FlÀchen.'; 
     2619CREATE INDEX ax_bahnverkehr_geom_idx   ON ax_bahnverkehr USING gist (wkb_geometry); 
     2620CREATE UNIQUE INDEX ax_bahnverkehr_gml ON ax_bahnverkehr USING btree (gml_id, beginnt); 
     2621 
     2622COMMENT ON TABLE  ax_bahnverkehr        IS 'TatsÀchliche Nutzung / __: (REO) "Bahnverkehr" umfasst alle fÃŒr den Schienenverkehr erforderlichen FlÀchen.'; 
    23982623-- FlÀchen von Bahnverkehr sind 
    23992624--  * der Bahnkörper (Unterbau fÃŒr Gleise; bestehend aus DÀmmen oder Einschnitten und deren kleineren Böschungen, 
     
    24142639CREATE TABLE ax_flugverkehr ( 
    24152640     ogc_fid             serial NOT NULL, 
    2416      gml_id              character(16), 
    2417      identifier          character(44), 
    2418      beginnt             character(20), 
    2419      endet               character(20), 
    2420      advstandardmodell   varchar, 
    2421      anlass              varchar, 
     2641     gml_id              character varying NOT NULL, 
     2642     identifier          character varying, 
     2643     beginnt             character(20), 
     2644     endet               character(20), 
     2645     advstandardmodell   character varying[], 
     2646     sonstigesmodell     character varying[], 
     2647     anlass              character varying, 
    24222648     funktion            integer, 
    24232649     art                 integer, 
    2424      name                varchar, 
    2425      bezeichnung         varchar, 
     2650     name                character varying, 
     2651     bezeichnung         character varying, 
    24262652     nutzung             integer, 
    24272653     zustand             integer, 
     
    24322658 
    24332659CREATE INDEX ax_flugverkehr_geom_idx   ON ax_flugverkehr USING gist  (wkb_geometry); 
    2434 CREATE UNIQUE INDEX ax_flugverkehr_gml ON ax_flugverkehr USING btree (gml_id,beginnt); 
    2435  
    2436 COMMENT ON TABLE  ax_flugverkehr             IS '"F l u g v e r k e h r" umfasst die baulich geprÀgte FlÀche und die mit ihr in Zusammenhang stehende FreiflÀche, die ausschließlich oder vorwiegend dem Flugverkehr dient.'; 
     2660CREATE UNIQUE INDEX ax_flugverkehr_gml ON ax_flugverkehr USING btree (gml_id, beginnt); 
     2661 
     2662COMMENT ON TABLE  ax_flugverkehr             IS 'TatsÀchliche Nutzung / __: (REO) "Flugverkehr" umfasst die baulich geprÀgte FlÀche und die mit ihr in Zusammenhang stehende FreiflÀche, die ausschließlich oder vorwiegend dem Flugverkehr dient.'; 
    24372663COMMENT ON COLUMN ax_flugverkehr.gml_id      IS 'Identifikator, global eindeutig'; 
    24382664COMMENT ON COLUMN ax_flugverkehr.funktion    IS 'FKT "Funktion" ist die zum Zeitpunkt der Erhebung vorherrschende Nutzung (Dominanzprinzip).'; 
     
    24482674CREATE TABLE ax_schiffsverkehr ( 
    24492675     ogc_fid             serial NOT NULL, 
    2450      gml_id              character(16), 
    2451      identifier          character(44), 
    2452      beginnt             character(20), 
    2453      endet               character(20), 
    2454      advstandardmodell   varchar, 
    2455      anlass              varchar, 
     2676     gml_id              character varying NOT NULL, 
     2677     identifier          character varying, 
     2678     beginnt             character(20), 
     2679     endet               character(20), 
     2680     advstandardmodell   character varying[], 
     2681     sonstigesmodell     character varying[], 
     2682     anlass              character varying, 
    24562683     funktion            integer, 
    2457      name                varchar, 
     2684     name                character varying, 
    24582685     zustand             integer, 
    24592686     CONSTRAINT ax_schiffsverkehr_pk PRIMARY KEY (ogc_fid) 
     
    24632690 
    24642691CREATE INDEX ax_schiffsverkehr_geom_idx ON ax_schiffsverkehr USING gist (wkb_geometry); 
    2465 CREATE UNIQUE INDEX ax_schiffsverkehr_gml ON ax_schiffsverkehr USING btree (gml_id,beginnt); 
    2466  
    2467 COMMENT ON TABLE  ax_schiffsverkehr          IS '"S c h i f f s v e r k e h r" umfasst die baulich geprÀgte FlÀche und die mit ihr in Zusammenhang stehende FreiflÀche, die ausschließlich oder vorwiegend dem Schiffsverkehr dient.'; 
     2692CREATE UNIQUE INDEX ax_schiffsverkehr_gml ON ax_schiffsverkehr USING btree (gml_id, beginnt); 
     2693 
     2694COMMENT ON TABLE  ax_schiffsverkehr          IS 'TatsÀchliche Nutzung / __: (REO) "Schiffsverkehr" umfasst die baulich geprÀgte FlÀche und die mit ihr in Zusammenhang stehende FreiflÀche, die ausschließlich oder vorwiegend dem Schiffsverkehr dient.'; 
    24682695COMMENT ON COLUMN ax_schiffsverkehr.gml_id   IS 'Identifikator, global eindeutig'; 
    24692696COMMENT ON COLUMN ax_schiffsverkehr.funktion IS 'FKT "Funktion" ist die zum Zeitpunkt der Erhebung vorherrschende Nutzung von "Schiffsverkehr".'; 
     
    24792706CREATE TABLE ax_landwirtschaft ( 
    24802707     ogc_fid             serial NOT NULL, 
    2481      gml_id              character(16), 
    2482      identifier          character(44), 
    2483      beginnt             character(20), 
    2484      endet               character(20), 
    2485      advstandardmodell   varchar, 
    2486      anlass              varchar, 
     2708     gml_id              character varying NOT NULL, 
     2709     identifier          character varying, 
     2710     beginnt             character(20), 
     2711     endet               character(20), 
     2712     advstandardmodell   character varying[], 
     2713     sonstigesmodell     character varying[], 
     2714     anlass              character varying, 
    24872715     vegetationsmerkmal  integer, 
    2488      name                varchar, 
     2716     name                character varying, 
    24892717     CONSTRAINT ax_landwirtschaft_pk PRIMARY KEY (ogc_fid) 
    24902718); 
    2491  
    24922719SELECT AddGeometryColumn('ax_landwirtschaft','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
    24932720 
    24942721CREATE INDEX ax_landwirtschaft_geom_idx ON ax_landwirtschaft USING gist (wkb_geometry); 
    2495 CREATE UNIQUE INDEX ax_landwirtschaft_gml ON ax_landwirtschaft USING btree (gml_id,beginnt); 
    2496  
    2497 COMMENT ON TABLE  ax_landwirtschaft                    IS '"L a n d w i r t s c h a f t" ist eine FlÀche fÃŒr den Anbau von FeldfrÃŒchten sowie eine FlÀche, die beweidet und gemÀht werden kann, einschließlich der mit besonderen Pflanzen angebauten FlÀche. Die Brache, die fÃŒr einen bestimmten Zeitraum (z. B. ein halbes oder ganzes Jahr) landwirtschaftlich unbebaut bleibt, ist als "Landwirtschaft" bzw. "Ackerland" zu erfassen'; 
     2722CREATE UNIQUE INDEX ax_landwirtschaft_gml ON ax_landwirtschaft USING btree (gml_id, beginnt); 
     2723 
     2724COMMENT ON TABLE  ax_landwirtschaft                    IS 'TatsÀchliche Nutzung / __: (REO) "Landwirtschaft" ist eine FlÀche fÃŒr den Anbau von FeldfrÃŒchten sowie eine FlÀche, die beweidet und gemÀht werden kann, einschließlich der mit besonderen Pflanzen angebauten FlÀche. Die Brache, die fÃŒr einen bestimmten Zeitraum (z. B. ein halbes oder ganzes Jahr) landwirtschaftlich unbebaut bleibt, ist als "Landwirtschaft" bzw. "Ackerland" zu erfassen'; 
    24982725COMMENT ON COLUMN ax_landwirtschaft.gml_id             IS 'Identifikator, global eindeutig'; 
    24992726COMMENT ON COLUMN ax_landwirtschaft.vegetationsmerkmal IS 'VEG "Vegetationsmerkmal" ist die zum Zeitpunkt der Erhebung erkennbare oder feststellbare vorherrschend vorkommende landwirtschaftliche Nutzung (Dominanzprinzip).'; 
     
    25052732CREATE TABLE ax_wald ( 
    25062733     ogc_fid             serial NOT NULL, 
    2507      gml_id              character(16), 
    2508      identifier          character(44), 
    2509      beginnt             character(20), 
    2510      endet               character(20), 
    2511      advstandardmodell   varchar, 
    2512      anlass              varchar, 
     2734     gml_id              character varying NOT NULL, 
     2735     identifier          character varying, 
     2736     beginnt             character(20), 
     2737     endet               character(20), 
     2738     advstandardmodell   character varying[], 
     2739     sonstigesmodell     character varying[], 
     2740     anlass              character varying, 
    25132741     vegetationsmerkmal  integer, 
    2514      name                varchar, 
    2515      bezeichnung         varchar, 
     2742     name                character varying, 
     2743     bezeichnung         character varying, 
    25162744     CONSTRAINT ax_wald_pk PRIMARY KEY (ogc_fid) 
    25172745); 
     
    25202748 
    25212749CREATE INDEX ax_wald_geom_idx ON ax_wald USING gist (wkb_geometry); 
    2522 CREATE UNIQUE INDEX ax_wald_gml ON ax_wald USING btree (gml_id,beginnt); 
    2523  
    2524 COMMENT ON TABLE  ax_wald             IS '"W a l d" ist eine FlÀche, die mit Forstpflanzen (WaldbÀume und WaldstrÀucher) bestockt ist.'; 
     2750CREATE UNIQUE INDEX ax_wald_gml ON ax_wald USING btree (gml_id, beginnt); 
     2751 
     2752COMMENT ON TABLE  ax_wald             IS 'TatsÀchliche Nutzung / __: (REO) "Wald" ist eine FlÀche, die mit Forstpflanzen (WaldbÀume und WaldstrÀucher) bestockt ist.'; 
    25252753COMMENT ON COLUMN ax_wald.gml_id      IS 'Identifikator, global eindeutig'; 
    25262754COMMENT ON COLUMN ax_wald.vegetationsmerkmal IS 'VEG "Vegetationsmerkmal" beschreibt den Bewuchs von "Wald".'; 
     
    25332761CREATE TABLE ax_gehoelz ( 
    25342762     ogc_fid             serial NOT NULL, 
    2535      gml_id              character(16), 
    2536      identifier          character(44), 
    2537      beginnt             character(20), 
    2538      endet               character(20), 
    2539      advstandardmodell   varchar, 
    2540      anlass              varchar, 
     2763     gml_id              character varying NOT NULL, 
     2764     identifier          character varying, 
     2765     beginnt             character(20), 
     2766     endet               character(20), 
     2767     advstandardmodell   character varying[], 
     2768     sonstigesmodell     character varying[], 
     2769     anlass              character varying, 
    25412770     vegetationsmerkmal  integer, 
    2542      name                varchar, 
     2771     name                character varying, 
    25432772     funktion            integer, 
    25442773     CONSTRAINT ax_gehoelz_pk PRIMARY KEY (ogc_fid) 
     
    25482777 
    25492778CREATE INDEX ax_gehoelz_geom_idx ON ax_gehoelz USING gist (wkb_geometry); 
    2550 CREATE UNIQUE INDEX ax_gehoelz_gml ON ax_gehoelz USING btree (gml_id,beginnt); 
    2551  
    2552 COMMENT ON TABLE  ax_gehoelz        IS '"G e h ö l z" ist eine FlÀche, die mit einzelnen BÀumen, Baumgruppen, BÃŒschen, Hecken und StrÀuchern bestockt ist.'; 
     2779CREATE UNIQUE INDEX ax_gehoelz_gml ON ax_gehoelz USING btree (gml_id, beginnt); 
     2780 
     2781COMMENT ON TABLE  ax_gehoelz        IS 'TatsÀchliche Nutzung / __: (REO) "Gehölz" ist eine FlÀche, die mit einzelnen BÀumen, Baumgruppen, BÃŒschen, Hecken und StrÀuchern bestockt ist.'; 
    25532782COMMENT ON COLUMN ax_gehoelz.gml_id IS 'Identifikator, global eindeutig'; 
    25542783 
     
    25622791CREATE TABLE ax_heide ( 
    25632792     ogc_fid             serial NOT NULL, 
    2564      gml_id              character(16), 
    2565      identifier          character(44), 
    2566      beginnt             character(20), 
    2567      endet               character(20), 
    2568      advstandardmodell   varchar, 
    2569      anlass              varchar, 
    2570      name                varchar, 
     2793     gml_id              character varying NOT NULL, 
     2794     identifier          character varying, 
     2795     beginnt             character(20), 
     2796     endet               character(20), 
     2797     advstandardmodell   character varying[], 
     2798     sonstigesmodell     character varying[], 
     2799     anlass              character varying, 
     2800     name                character varying, 
    25712801     CONSTRAINT ax_heide_pk PRIMARY KEY (ogc_fid) 
    25722802); 
     
    25742804SELECT AddGeometryColumn('ax_heide','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
    25752805 
    2576 CREATE INDEX ax_heide_geom_idx ON ax_heide USING gist (wkb_geometry); 
    2577 CREATE UNIQUE INDEX ax_heide_gml ON ax_heide USING btree (gml_id,beginnt); 
    2578  
    2579 COMMENT ON TABLE  ax_heide        IS '"H e i d e" ist eine meist sandige FlÀche mit typischen StrÀuchern, GrÀsern und geringwertigem Baumbestand.'; 
     2806CREATE INDEX ax_heide_geom_idx   ON ax_heide USING gist (wkb_geometry); 
     2807CREATE UNIQUE INDEX ax_heide_gml ON ax_heide USING btree (gml_id, beginnt); 
     2808 
     2809COMMENT ON TABLE  ax_heide        IS 'TatsÀchliche Nutzung / __: (REO) "Heide" ist eine meist sandige FlÀche mit typischen StrÀuchern, GrÀsern und geringwertigem Baumbestand.'; 
    25802810COMMENT ON COLUMN ax_heide.gml_id IS 'Identifikator, global eindeutig'; 
    25812811COMMENT ON COLUMN ax_heide.name   IS 'NAM "Name" ist der Eigenname von "Heide".'; 
     
    25862816CREATE TABLE ax_moor ( 
    25872817     ogc_fid             serial NOT NULL, 
    2588      gml_id              character(16), 
    2589      identifier          character(44), 
    2590      beginnt             character(20), 
    2591      endet               character(20), 
    2592      advstandardmodell   varchar, 
    2593      anlass              varchar, 
    2594      name                varchar, 
     2818     gml_id              character varying NOT NULL, 
     2819     identifier          character varying, 
     2820     beginnt             character(20), 
     2821     endet               character(20), 
     2822     advstandardmodell   character varying[], 
     2823     sonstigesmodell     character varying[], 
     2824     anlass              character varying, 
     2825     name                character varying, 
    25952826     CONSTRAINT ax_moor_pk PRIMARY KEY (ogc_fid) 
    25962827); 
     
    25992830 
    26002831CREATE INDEX ax_moor_geom_idx   ON ax_moor USING gist (wkb_geometry); 
    2601 CREATE UNIQUE INDEX ax_moor_gml ON ax_moor USING btree (gml_id,beginnt); 
    2602  
    2603 COMMENT ON TABLE  ax_moor        IS '"M o o r" ist eine unkultivierte FlÀche, deren obere Schicht aus vertorften oder zersetzten Pflanzenresten besteht.'; 
     2832CREATE UNIQUE INDEX ax_moor_gml ON ax_moor USING btree (gml_id, beginnt); 
     2833 
     2834COMMENT ON TABLE  ax_moor        IS 'TatsÀchliche Nutzung / __: (REO) "Moor" ist eine unkultivierte FlÀche, deren obere Schicht aus vertorften oder zersetzten Pflanzenresten besteht.'; 
    26042835-- Torfstich bzw. TorfabbauflÀche wird der Objektart 41005 'Tagebau, Grube, Steinbruch' mit AGT 'Torf' zugeordnet. 
    26052836COMMENT ON COLUMN ax_moor.gml_id IS 'Identifikator, global eindeutig'; 
     
    26112842CREATE TABLE ax_sumpf ( 
    26122843     ogc_fid             serial NOT NULL, 
    2613      gml_id              character(16), 
    2614      identifier          character(44), 
    2615      beginnt             character(20), 
    2616      endet               character(20), 
    2617      advstandardmodell   varchar, 
    2618      anlass              varchar, 
    2619      name                varchar, 
     2844     gml_id              character varying NOT NULL, 
     2845     identifier          character varying, 
     2846     beginnt             character(20), 
     2847     endet               character(20), 
     2848     advstandardmodell   character varying[], 
     2849     sonstigesmodell     character varying[], 
     2850     anlass              character varying, 
     2851     name                character varying, 
    26202852     CONSTRAINT ax_sumpf_pk PRIMARY KEY (ogc_fid) 
    26212853); 
     
    26242856 
    26252857CREATE INDEX ax_sumpf_geom_idx ON ax_sumpf USING gist (wkb_geometry); 
    2626 CREATE UNIQUE INDEX ax_sumpf_gml ON ax_sumpf USING btree (gml_id,beginnt); 
    2627  
    2628 COMMENT ON TABLE  ax_sumpf        IS '"S u m p f" ist ein wassergesÀttigtes, zeitweise unter Wasser stehendes GelÀnde. Nach RegenfÀllen kurzzeitig nasse Stellen im Boden werden nicht als "Sumpf" erfasst.'; 
     2858CREATE UNIQUE INDEX ax_sumpf_gml ON ax_sumpf USING btree (gml_id, beginnt); 
     2859 
     2860COMMENT ON TABLE  ax_sumpf        IS 'TatsÀchliche Nutzung / __: (REO) "Sumpf" ist ein wassergesÀttigtes, zeitweise unter Wasser stehendes GelÀnde. Nach RegenfÀllen kurzzeitig nasse Stellen im Boden werden nicht als "Sumpf" erfasst.'; 
    26292861COMMENT ON COLUMN ax_sumpf.gml_id IS 'Identifikator, global eindeutig'; 
    26302862COMMENT ON COLUMN ax_sumpf.name   IS 'NAM "Name" ist der Eigenname von "Sumpf".'; 
     
    26352867CREATE TABLE ax_unlandvegetationsloseflaeche ( 
    26362868     ogc_fid             serial NOT NULL, 
    2637      gml_id              character(16), 
    2638      identifier          character(44), 
    2639      beginnt             character(20), 
    2640      endet               character(20), 
    2641      advstandardmodell   varchar, 
    2642      anlass              varchar, 
     2869     gml_id              character varying NOT NULL, 
     2870     identifier          character varying, 
     2871     beginnt             character(20), 
     2872     endet               character(20), 
     2873     advstandardmodell   character varying[], 
     2874     sonstigesmodell     character varying[], 
     2875     anlass              character varying, 
    26432876     oberflaechenmaterial integer, 
    2644      name                varchar, 
     2877     name                character varying, 
    26452878     funktion            integer, 
    26462879     CONSTRAINT ax_unlandvegetationsloseflaeche_pk PRIMARY KEY (ogc_fid) 
     
    26502883 
    26512884CREATE INDEX ax_unlandvegetationsloseflaeche_geom_idx ON ax_unlandvegetationsloseflaeche USING gist (wkb_geometry); 
    2652 CREATE UNIQUE INDEX ax_unlandvegetationsloseflaeche_gml ON ax_unlandvegetationsloseflaeche USING btree (gml_id,beginnt); 
    2653  
    2654 COMMENT ON TABLE  ax_unlandvegetationsloseflaeche        IS '"Unland/Vegetationslose FlÀche" ist eine FlÀche, die dauerhaft landwirtschaftlich nicht genutzt wird, wie z.B. nicht aus dem GelÀnderelief herausragende Felspartien, Sand- oder EisflÀchen, Uferstreifen lÀngs von GewÀssern und SukzessionsflÀchen.'; 
     2885CREATE UNIQUE INDEX ax_unlandvegetationsloseflaeche_gml ON ax_unlandvegetationsloseflaeche USING btree (gml_id, beginnt); 
     2886 
     2887COMMENT ON TABLE  ax_unlandvegetationsloseflaeche        IS 'TatsÀchliche Nutzung / __: (REO) "Unland/Vegetationslose FlÀche" ist eine FlÀche, die dauerhaft landwirtschaftlich nicht genutzt wird, wie z.B. nicht aus dem GelÀnderelief herausragende Felspartien, Sand- oder EisflÀchen, Uferstreifen lÀngs von GewÀssern und SukzessionsflÀchen.'; 
    26552888COMMENT ON COLUMN ax_unlandvegetationsloseflaeche.gml_id IS 'Identifikator, global eindeutig'; 
    26562889COMMENT ON COLUMN ax_unlandvegetationsloseflaeche.oberflaechenmaterial IS 'OFM "OberflÀchenmaterial" ist die Beschaffenheit des Bodens von "Unland/Vegetationslose FlÀche". Die Attributart "OberflÀchenmaterial" kann nur im Zusammenhang mit der Attributart "Funktion" und der Werteart 1000 vorkommen.'; 
     
    26592892 
    26602893 
    2661 --** Objektartengruppe: GewÀsser (in Objektbereich:TatsÀchliche Nutzung) 
     2894--** Objektartengruppe: GewÀsser (in Objektbereich: TatsÀchliche Nutzung) 
    26622895--   =================================================================== 
    26632896 
    2664  
    26652897-- F l i e s s g e w À s s e r 
    26662898-- ---------------------------------------------- 
    2667 -- 'FließgewÀsser' ist ein geometrisch begrenztes, oberirdisches, auf dem Festland fließendes GewÀsser, 
    2668 -- das die Wassermengen sammelt, die als NiederschlÀge auf die ErdoberflÀche fallen oder in Quellen austreten, 
    2669 -- und in ein anderes GewÀsser, ein Meer oder in einen See transportiert 
    2670 --   oder 
    2671 -- in einem System von natÃŒrlichen oder kÃŒnstlichen Bodenvertiefungen verlaufendes Wasser, 
    2672 -- das zur Be- und EntwÀsserung an- oder abgeleitet wird 
    2673 --   oder 
    2674 -- ein geometrisch begrenzter, fÃŒr die Schifffahrt angelegter kÃŒnstlicher Wasserlauf, 
    2675 -- der in einem oder in mehreren Abschnitten die jeweils gleiche Höhe des Wasserspiegels besitzt. 
    26762899CREATE TABLE ax_fliessgewaesser ( 
    26772900     ogc_fid             serial NOT NULL, 
    2678      gml_id              character(16), 
    2679      identifier          character(44), 
    2680      beginnt             character(20), 
    2681      endet               character(20), 
    2682      advstandardmodell   varchar, 
    2683      anlass              varchar, 
     2901     gml_id              character varying NOT NULL, 
     2902     identifier          character varying, 
     2903     beginnt             character(20), 
     2904     endet               character(20), 
     2905     advstandardmodell   character varying[], 
     2906     sonstigesmodell     character varying[], 
     2907     anlass              character varying, 
    26842908     funktion            integer, 
    2685      name                varchar, 
     2909     name                character varying, 
    26862910     zustand             integer, 
     2911     unverschluesselt    character varying, 
    26872912     CONSTRAINT ax_fliessgewaesser_pk PRIMARY KEY (ogc_fid) 
    26882913); 
    2689  
    26902914SELECT AddGeometryColumn('ax_fliessgewaesser','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
    26912915 
    26922916CREATE INDEX ax_fliessgewaesser_geom_idx ON ax_fliessgewaesser USING gist (wkb_geometry); 
    2693 CREATE UNIQUE INDEX ax_fliessgewaesser_gml ON ax_fliessgewaesser USING btree (gml_id,beginnt); 
    2694  
    2695 COMMENT ON TABLE  ax_fliessgewaesser          IS '"F l i e s s g e w À s s e r" ist ein geometrisch begrenztes, oberirdisches, auf dem Festland fließendes GewÀsser, das die Wassermengen sammelt, die als NiederschlÀge auf die ErdoberflÀche fallen oder in Quellen austreten, und in ein anderes GewÀsser, ein Meer oder in einen See transportiert'; 
     2917CREATE UNIQUE INDEX ax_fliessgewaesser_gml ON ax_fliessgewaesser USING btree (gml_id, beginnt); 
     2918 
     2919COMMENT ON TABLE  ax_fliessgewaesser IS 'TatsÀchliche Nutzung / __: (REO) "FließgewÀsser" ist ein geometrisch begrenztes, oberirdisches, auf dem Festland fließendes GewÀsser, das die Wassermengen sammelt, die als NiederschlÀge auf die ErdoberflÀche fallen oder in Quellen austreten, und in ein anderes GewÀsser, ein Meer oder in einen See transportiert 
     2920 oder  
     2921in einem System von natÃŒrlichen oder kÃŒnstlichen Bodenvertiefungen verlaufendes Wasser, das zur Be- und EntwÀsserung an- oder abgeleitet wird 
     2922 oder  
     2923ein geometrisch begrenzter, fÃŒr die Schifffahrt angelegter kÃŒnstlicher Wasserlauf, der in einem oder in mehreren Abschnitten die jeweils gleiche Höhe des Wasserspiegels besitzt.'; 
     2924 
    26962925COMMENT ON COLUMN ax_fliessgewaesser.gml_id   IS 'Identifikator, global eindeutig'; 
    26972926COMMENT ON COLUMN ax_fliessgewaesser.funktion IS 'FKT "Funktion" ist die Art von "FließgewÀsser".'; 
     
    27042933CREATE TABLE ax_hafenbecken ( 
    27052934     ogc_fid             serial NOT NULL, 
    2706      gml_id              character(16), 
    2707      identifier          character(44), 
    2708      beginnt             character(20), 
    2709      endet               character(20), 
    2710      advstandardmodell   varchar, 
    2711      anlass              varchar, 
     2935     gml_id              character varying NOT NULL, 
     2936     identifier          character varying, 
     2937     beginnt             character(20), 
     2938     endet               character(20), 
     2939     advstandardmodell   character varying[], 
     2940     sonstigesmodell     character varying[], 
     2941     anlass              character varying, 
    27122942     funktion            integer, 
    2713      name                varchar, 
     2943     name                character varying, 
    27142944     nutzung             integer, 
    27152945     CONSTRAINT ax_hafenbecken_pk PRIMARY KEY (ogc_fid) 
     
    27192949 
    27202950CREATE INDEX ax_hafenbecken_geom_idx   ON ax_hafenbecken USING gist  (wkb_geometry); 
    2721 CREATE UNIQUE INDEX ax_hafenbecken_gml ON ax_hafenbecken USING btree (gml_id,beginnt); 
    2722  
    2723 COMMENT ON TABLE  ax_hafenbecken        IS '"H a f e n b e c k e n" ist ein natÃŒrlicher oder kÃŒnstlich angelegter oder abgetrennter Teil eines GewÀssers, in dem Schiffe be- und entladen werden.'; 
     2951CREATE UNIQUE INDEX ax_hafenbecken_gml ON ax_hafenbecken USING btree (gml_id, beginnt); 
     2952 
     2953COMMENT ON TABLE  ax_hafenbecken        IS 'TatsÀchliche Nutzung / __: (REO) "Hafenbecken" ist ein natÃŒrlicher oder kÃŒnstlich angelegter oder abgetrennter Teil eines GewÀssers, in dem Schiffe be- und entladen werden.'; 
    27242954COMMENT ON COLUMN ax_hafenbecken.gml_id IS 'Identifikator, global eindeutig'; 
    27252955 
     
    27312961-- s t e h e n d e s   G e w À s s e r 
    27322962-- ---------------------------------------------- 
    2733 -- 'Stehendes GewÀsser' ist eine natÃŒrliche oder kÃŒnstliche mit Wasser gefÃŒllte, 
    2734 -- allseitig umschlossene Hohlform der LandoberflÀche ohne unmittelbaren Zusammenhang mit 'Meer'. 
    27352963CREATE TABLE ax_stehendesgewaesser ( 
    27362964     ogc_fid             serial NOT NULL, 
    2737      gml_id              character(16), 
    2738      identifier          character(44), 
    2739      beginnt             character(20), 
    2740      endet               character(20), 
    2741      advstandardmodell   varchar, 
    2742      anlass              varchar, 
     2965     gml_id              character varying NOT NULL, 
     2966     identifier          character varying, 
     2967     beginnt             character(20), 
     2968     endet               character(20), 
     2969     advstandardmodell   character varying[], 
     2970     sonstigesmodell     character varying[], 
     2971     anlass              character varying, 
    27432972     funktion            integer, 
    2744      name                varchar, 
    2745      gewaesserkennziffer varchar, 
     2973     name                character varying, 
     2974     gewaesserkennziffer character varying, 
    27462975     hydrologischesMerkmal integer, 
     2976     unverschluesselt    character varying, 
    27472977     CONSTRAINT ax_stehendesgewaesser_pk PRIMARY KEY (ogc_fid) 
    27482978); 
     
    27512981 
    27522982CREATE INDEX ax_stehendesgewaesser_geom_idx ON ax_stehendesgewaesser USING gist (wkb_geometry); 
    2753 CREATE UNIQUE INDEX ax_stehendesgewaesser_gml ON ax_stehendesgewaesser USING btree (gml_id,beginnt); 
    2754  
    2755 COMMENT ON TABLE  ax_stehendesgewaesser           IS 's t e h e n d e s   G e w À s s e r ist eine natÃŒrliche oder kÃŒnstliche mit Wasser gefÃŒllte, allseitig umschlossene Hohlform der LandoberflÀche ohne unmittelbaren Zusammenhang mit "Meer".'; 
     2983CREATE UNIQUE INDEX ax_stehendesgewaesser_gml ON ax_stehendesgewaesser USING btree (gml_id, beginnt); 
     2984 
     2985COMMENT ON TABLE  ax_stehendesgewaesser           IS 'TatsÀchliche Nutzung / __: (REO) "stehendes GewÀsser" ist eine natÃŒrliche oder kÃŒnstliche mit Wasser gefÃŒllte, allseitig umschlossene Hohlform der LandoberflÀche ohne unmittelbaren Zusammenhang mit "Meer".'; 
    27562986COMMENT ON COLUMN ax_stehendesgewaesser.gml_id    IS 'Identifikator, global eindeutig'; 
    27572987COMMENT ON COLUMN ax_stehendesgewaesser.funktion  IS 'FKT "Funktion" ist die Art von "Stehendes GewÀsser".'; 
     
    27652995CREATE TABLE ax_meer ( 
    27662996     ogc_fid             serial NOT NULL, 
    2767      gml_id              character(16), 
    2768      identifier          character(44), 
    2769      beginnt             character(20), 
    2770      endet               character(20), 
    2771      advstandardmodell   varchar, 
    2772      anlass              varchar, 
     2997     gml_id              character varying NOT NULL, 
     2998     identifier          character varying, 
     2999     beginnt             character(20), 
     3000     endet               character(20), 
     3001     advstandardmodell   character varying[], 
     3002     sonstigesmodell     character varying[], 
     3003     anlass              character varying, 
    27733004     funktion            integer, 
    2774      name                varchar, 
    2775      bezeichnung         varchar, 
     3005     name                character varying, 
     3006     bezeichnung         character varying, 
    27763007     tidemerkmal         integer, 
    27773008     CONSTRAINT ax_meer_pk PRIMARY KEY (ogc_fid) 
     
    27803011SELECT AddGeometryColumn('ax_meer','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
    27813012 
    2782 CREATE INDEX ax_meer_geom_idx ON ax_meer USING gist (wkb_geometry); 
    2783 CREATE UNIQUE INDEX ax_meer_gml ON ax_meer USING btree (gml_id,beginnt); 
    2784  
    2785 COMMENT ON TABLE  ax_meer              IS '"M e e r" ist die das Festland umgebende WasserflÀche.'; 
     3013CREATE INDEX ax_meer_geom_idx   ON ax_meer USING gist (wkb_geometry); 
     3014CREATE UNIQUE INDEX ax_meer_gml ON ax_meer USING btree (gml_id, beginnt); 
     3015 
     3016COMMENT ON TABLE  ax_meer              IS 'TatsÀchliche Nutzung / __: (REO) "Meer" ist die das Festland umgebende WasserflÀche.'; 
    27863017COMMENT ON COLUMN ax_meer.gml_id       IS 'Identifikator, global eindeutig'; 
    27873018COMMENT ON COLUMN ax_meer.funktion     IS 'FKT "Funktion" ist die Art von "Meer".'; 
     
    27913022 
    27923023 
    2793  
    27943024--*** ############################################################ 
    27953025--*** Objektbereich: Bauwerke, Einrichtungen und sonstige Angaben 
     
    28023032-- ** Tabelle bisher noch nicht generiert 
    28033033 
    2804  
    28053034--AX_LI_Lineage_MitDatenerhebung 
    28063035-- ** Tabelle bisher noch nicht generiert 
     
    28113040--AX_LI_Source_MitDatenerhebung 
    28123041-- ** Tabelle bisher noch nicht generiert 
    2813  
    28143042 
    28153043--** Objektartengruppe: Bauwerke und Einrichtungen in SiedlungsflÀchen 
     
    28203048CREATE TABLE ax_turm ( 
    28213049     ogc_fid             serial NOT NULL, 
    2822      gml_id              character(16), 
    2823      identifier          character(44), 
    2824      beginnt             character(20), 
    2825      endet               character(20), 
    2826      advstandardmodell   varchar, 
    2827      anlass              varchar, 
     3050     gml_id              character varying NOT NULL, 
     3051     identifier          character varying, 
     3052     beginnt             character(20), 
     3053     endet               character(20), 
     3054     advstandardmodell   character varying[], 
     3055     sonstigesmodell     character varying[], 
     3056     anlass              character varying, 
    28283057     bauwerksfunktion    integer, 
    28293058     zustand             integer, 
    2830      name                varchar, 
     3059     name                character varying, 
     3060     -- Beziehungen: 
     3061     zeigtauf            character varying, --> ax_lagebezeichnungmithausnummer 
    28313062     CONSTRAINT ax_turm_pk PRIMARY KEY (ogc_fid) 
    28323063); 
     
    28353066 
    28363067CREATE INDEX ax_turm_geom_idx ON ax_turm USING gist (wkb_geometry); 
    2837 CREATE UNIQUE INDEX ax_turm_gml ON ax_turm USING btree (gml_id,beginnt); 
    2838  
    2839 COMMENT ON TABLE  ax_turm        IS 'T u r m'; 
     3068CREATE UNIQUE INDEX ax_turm_gml ON ax_turm USING btree (gml_id, beginnt); 
     3069 
     3070CREATE INDEX ax_turm_za  ON ax_turm  USING btree  (zeigtauf); 
     3071 
     3072COMMENT ON TABLE  ax_turm        IS 'Bauwerke, Einrichtungen und sonstige Angaben: (REO) "Turm"'; 
    28403073COMMENT ON COLUMN ax_turm.gml_id IS 'Identifikator, global eindeutig'; 
    28413074 
     3075COMMENT ON COLUMN ax_turm.zeigtauf IS '-> Beziehung zu ax_lagebezeichnungmithausnummer (0..*): ''Turm'' zeigt auf eine ''Lagebezeichnung mit Hausnummer''.'; 
     3076 
    28423077 
    28433078-- Bauwerk oder Anlage fuer Industrie und Gewerbe 
     
    28453080CREATE TABLE ax_bauwerkoderanlagefuerindustrieundgewerbe ( 
    28463081     ogc_fid             serial NOT NULL, 
    2847      gml_id              character(16), 
    2848      identifier          character(44), 
    2849      beginnt             character(20), 
    2850      endet               character(20), 
    2851      advstandardmodell   varchar, 
    2852      anlass              varchar, 
     3082     gml_id              character varying NOT NULL, 
     3083     identifier          character varying, 
     3084     beginnt             character(20), 
     3085     endet               character(20), 
     3086     advstandardmodell   character varying[], 
     3087     sonstigesmodell     character varying[], 
     3088     anlass              character varying, 
    28533089     bauwerksfunktion    integer, 
    2854      name                varchar, 
     3090     name                character varying, 
    28553091     zustand             integer, 
    28563092     objekthoehe         double precision, 
     
    28613097 
    28623098CREATE INDEX ax_bauwerkoderanlagefuerindustrieundgewerbe_geom_idx ON ax_bauwerkoderanlagefuerindustrieundgewerbe USING gist (wkb_geometry); 
    2863 CREATE UNIQUE INDEX ax_bauwerkoderanlagefuerindustrieundgewerbe_gml ON ax_bauwerkoderanlagefuerindustrieundgewerbe USING btree (gml_id,beginnt); 
    2864  
    2865 COMMENT ON TABLE ax_bauwerkoderanlagefuerindustrieundgewerbe         IS 'Bauwerk oder Anlage fuer Industrie und Gewerbe'; 
     3099CREATE UNIQUE INDEX ax_bauwerkoderanlagefuerindustrieundgewerbe_gml ON ax_bauwerkoderanlagefuerindustrieundgewerbe USING btree (gml_id, beginnt); 
     3100 
     3101COMMENT ON TABLE ax_bauwerkoderanlagefuerindustrieundgewerbe         IS 'Bauwerke, Einrichtungen und sonstige Angaben: (REO) "Bauwerk oder Anlage fuer Industrie und Gewerbe"'; 
    28663102COMMENT ON COLUMN ax_bauwerkoderanlagefuerindustrieundgewerbe.gml_id IS 'Identifikator, global eindeutig'; 
    28673103 
     
    28713107CREATE TABLE ax_vorratsbehaelterspeicherbauwerk ( 
    28723108     ogc_fid             serial NOT NULL, 
    2873      gml_id              character(16), 
    2874      identifier          character(44), 
    2875      beginnt             character(20), 
    2876      endet               character(20), 
    2877      advstandardmodell   varchar, 
    2878      anlass              varchar, 
     3109     gml_id              character varying NOT NULL, 
     3110     identifier          character varying, 
     3111     beginnt             character(20), 
     3112     endet               character(20), 
     3113     advstandardmodell   character varying[], 
     3114     sonstigesmodell     character varying[], 
     3115     anlass              character varying, 
    28793116     speicherinhalt      integer, 
    28803117     bauwerksfunktion    integer, 
    28813118     lagezurerdoberflaeche integer, 
    2882      name                varchar, 
     3119     name                character varying, 
    28833120     CONSTRAINT ax_vorratsbehaelterspeicherbauwerk_pk PRIMARY KEY (ogc_fid) 
    28843121); 
     
    28873124 
    28883125CREATE INDEX ax_vorratsbehaelterspeicherbauwerk_geom_idx ON ax_vorratsbehaelterspeicherbauwerk USING gist (wkb_geometry); 
    2889 CREATE UNIQUE INDEX ax_vorratsbehaelterspeicherbauwerk_gml ON ax_vorratsbehaelterspeicherbauwerk USING btree (gml_id,beginnt); 
    2890  
    2891 COMMENT ON TABLE  ax_vorratsbehaelterspeicherbauwerk        IS 'V o r r a t s b e h À l t e r  /  S p e i c h e r b a u w e r k'; 
     3126CREATE UNIQUE INDEX ax_vorratsbehaelterspeicherbauwerk_gml ON ax_vorratsbehaelterspeicherbauwerk USING btree (gml_id, beginnt); 
     3127 
     3128COMMENT ON TABLE  ax_vorratsbehaelterspeicherbauwerk        IS 'Bauwerke, Einrichtungen und sonstige Angaben: (REO) "VorratsbehÀlter / Speicherbauwerk"'; 
    28923129COMMENT ON COLUMN ax_vorratsbehaelterspeicherbauwerk.gml_id IS 'Identifikator, global eindeutig'; 
    28933130 
     
    28973134CREATE TABLE ax_transportanlage ( 
    28983135     ogc_fid             serial NOT NULL, 
    2899      gml_id              character(16), 
    2900      identifier          character(44), 
    2901      beginnt             character(20), 
    2902      endet               character(20), 
    2903      advstandardmodell   varchar, 
    2904      anlass              varchar, 
     3136     gml_id              character varying NOT NULL, 
     3137     identifier          character varying, 
     3138     beginnt             character(20), 
     3139     endet               character(20), 
     3140     advstandardmodell   character varying[], 
     3141     sonstigesmodell     character varying[], 
     3142     anlass              character varying, 
    29053143     bauwerksfunktion    integer, 
    29063144     lagezurerdoberflaeche integer, 
    2907      art                 varchar, 
    2908      name                varchar, 
     3145     art                 character varying, 
     3146     name                character varying, 
    29093147     produkt             integer, 
    29103148     CONSTRAINT ax_transportanlage_pk PRIMARY KEY (ogc_fid) 
     
    29143152 
    29153153CREATE INDEX ax_transportanlage_geom_idx ON ax_transportanlage USING gist (wkb_geometry); 
    2916 CREATE UNIQUE INDEX ax_transportanlage_gml ON ax_transportanlage USING btree (gml_id,beginnt); 
    2917  
    2918 COMMENT ON TABLE  ax_transportanlage        IS 'T r a n s p o r t a n l a g e'; 
     3154CREATE UNIQUE INDEX ax_transportanlage_gml ON ax_transportanlage USING btree (gml_id, beginnt); 
     3155 
     3156COMMENT ON TABLE  ax_transportanlage        IS 'Bauwerke, Einrichtungen und sonstige Angaben: (REO) "Transportanlage"'; 
    29193157COMMENT ON COLUMN ax_transportanlage.gml_id IS 'Identifikator, global eindeutig'; 
    29203158 
     
    29243162CREATE TABLE ax_leitung ( 
    29253163     ogc_fid             serial NOT NULL, 
    2926      gml_id              character(16), 
    2927      identifier          character(44), 
    2928      beginnt             character(20), 
    2929      endet               character(20), 
    2930      advstandardmodell   varchar, 
    2931      anlass              varchar, 
     3164     gml_id              character varying NOT NULL, 
     3165     identifier          character varying, 
     3166     beginnt             character(20), 
     3167     endet               character(20), 
     3168     advstandardmodell   character varying[], 
     3169     sonstigesmodell     character varying[], 
     3170     anlass              character varying, 
    29323171     bauwerksfunktion    integer, 
    29333172     spannungsebene      integer, 
     
    29373176SELECT AddGeometryColumn('ax_leitung','wkb_geometry',:alkis_epsg,'LINESTRING',2); 
    29383177 
    2939 CREATE INDEX ax_leitung_geom_idx ON ax_leitung USING gist (wkb_geometry); 
    2940 CREATE UNIQUE INDEX ax_leitung_gml ON ax_leitung USING btree (gml_id,beginnt); 
    2941  
    2942 COMMENT ON TABLE  ax_leitung        IS 'L e i t u n g'; 
     3178CREATE INDEX ax_leitung_geom_idx   ON ax_leitung USING gist (wkb_geometry); 
     3179CREATE UNIQUE INDEX ax_leitung_gml ON ax_leitung USING btree (gml_id, beginnt); 
     3180 
     3181COMMENT ON TABLE  ax_leitung        IS 'Bauwerke, Einrichtungen und sonstige Angaben: (REO) "Leitung"'; 
    29433182COMMENT ON COLUMN ax_leitung.gml_id IS 'Identifikator, global eindeutig'; 
    29443183 
     
    29483187CREATE TABLE ax_bauwerkoderanlagefuersportfreizeitunderholung ( 
    29493188     ogc_fid             serial NOT NULL, 
    2950      gml_id              character(16), 
    2951      identifier          character(44), 
    2952      beginnt             character(20), 
    2953      endet               character(20), 
    2954      advstandardmodell   varchar, 
    2955      anlass              varchar, 
     3189     gml_id              character varying NOT NULL, 
     3190     identifier          character varying, 
     3191     beginnt             character(20), 
     3192     endet               character(20), 
     3193     advstandardmodell   character varying[], 
     3194     sonstigesmodell     character varying[], 
     3195     anlass              character varying, 
    29563196     bauwerksfunktion    integer, 
    29573197     sportart            integer, 
    2958      name                varchar, 
     3198     name                character varying, 
    29593199     CONSTRAINT ax_bauwerkoderanlagefuersportfreizeitunderholung_pk PRIMARY KEY (ogc_fid) 
    29603200); 
     
    29623202SELECT AddGeometryColumn('ax_bauwerkoderanlagefuersportfreizeitunderholung','wkb_geometry',:alkis_epsg,'GEOMETRY',2); -- POLYGON/POINT 
    29633203 
    2964 CREATE INDEX ax_bauwerkoderanlagefuersportfreizeitunderholung_geom_idx ON ax_bauwerkoderanlagefuersportfreizeitunderholung USING gist (wkb_geometry); 
    2965 CREATE UNIQUE INDEX ax_bauwerkoderanlagefuersportfreizeitunderholung_gml ON ax_bauwerkoderanlagefuersportfreizeitunderholung USING btree (gml_id,beginnt); 
    2966  
    2967 COMMENT ON TABLE  ax_bauwerkoderanlagefuersportfreizeitunderholung        IS 'Bauwerk oder Anlage fuer Sport, Freizeit und Erholung'; 
     3204CREATE INDEX ax_bauwerkoderanlagefuersportfreizeitunderholung_geom_idx   ON ax_bauwerkoderanlagefuersportfreizeitunderholung USING gist (wkb_geometry); 
     3205CREATE UNIQUE INDEX ax_bauwerkoderanlagefuersportfreizeitunderholung_gml ON ax_bauwerkoderanlagefuersportfreizeitunderholung USING btree (gml_id, beginnt); 
     3206 
     3207COMMENT ON TABLE  ax_bauwerkoderanlagefuersportfreizeitunderholung        IS 'Bauwerke, Einrichtungen und sonstige Angaben: (REO)"Bauwerk oder Anlage fuer Sport, Freizeit und Erholung"'; 
    29683208COMMENT ON COLUMN ax_bauwerkoderanlagefuersportfreizeitunderholung.gml_id IS 'Identifikator, global eindeutig'; 
    29693209 
     
    29733213CREATE TABLE ax_historischesbauwerkoderhistorischeeinrichtung ( 
    29743214     ogc_fid             serial NOT NULL, 
    2975      gml_id              character(16), 
    2976      identifier          character(44), 
    2977      beginnt             character(20), 
    2978      endet               character(20), 
    2979      advstandardmodell   varchar, 
    2980      sonstigesmodell     varchar[], 
    2981      anlass              varchar, 
     3215     gml_id              character varying NOT NULL, 
     3216     identifier          character varying, 
     3217     beginnt             character(20), 
     3218     endet               character(20), 
     3219     advstandardmodell   character varying[], 
     3220     sonstigesmodell     character varying[], 
     3221     anlass              character varying, 
    29823222     archaeologischertyp integer, 
    2983      name                varchar, 
     3223     name                character varying, 
    29843224     CONSTRAINT ax_historischesbauwerkoderhistorischeeinrichtung_pk PRIMARY KEY (ogc_fid) 
    29853225); 
     
    29873227SELECT AddGeometryColumn('ax_historischesbauwerkoderhistorischeeinrichtung','wkb_geometry',:alkis_epsg,'GEOMETRY',2); -- POLYGON/POINT 
    29883228 
    2989 CREATE INDEX ax_historischesbauwerkoderhistorischeeinrichtung_geom_idx ON ax_historischesbauwerkoderhistorischeeinrichtung USING gist (wkb_geometry); 
    2990 CREATE UNIQUE INDEX ax_historischesbauwerkoderhistorischeeinrichtung_gml ON ax_historischesbauwerkoderhistorischeeinrichtung USING btree (gml_id,beginnt); 
    2991  
    2992 COMMENT ON TABLE  ax_historischesbauwerkoderhistorischeeinrichtung        IS 'Historisches Bauwerk oder historische Einrichtung'; 
     3229CREATE INDEX ax_historischesbauwerkoderhistorischeeinrichtung_geom_idx   ON ax_historischesbauwerkoderhistorischeeinrichtung USING gist (wkb_geometry); 
     3230CREATE UNIQUE INDEX ax_historischesbauwerkoderhistorischeeinrichtung_gml ON ax_historischesbauwerkoderhistorischeeinrichtung USING btree (gml_id, beginnt); 
     3231 
     3232COMMENT ON TABLE  ax_historischesbauwerkoderhistorischeeinrichtung        IS 'Bauwerke, Einrichtungen und sonstige Angaben: (REO) "Historisches Bauwerk oder historische Einrichtung"'; 
    29933233COMMENT ON COLUMN ax_historischesbauwerkoderhistorischeeinrichtung.gml_id IS 'Identifikator, global eindeutig'; 
    29943234 
     
    29983238CREATE TABLE ax_heilquellegasquelle ( 
    29993239     ogc_fid             serial NOT NULL, 
    3000      gml_id              character(16), 
    3001      identifier          character(44), 
    3002      beginnt             character(20), 
    3003      endet               character(20), 
    3004      advstandardmodell   varchar, 
    3005      sonstigesmodell     varchar, 
    3006      anlass              varchar, 
     3240     gml_id              character varying NOT NULL, 
     3241     identifier          character varying, 
     3242     beginnt             character(20), 
     3243     endet               character(20), 
     3244     advstandardmodell   character varying[], 
     3245     sonstigesmodell     character varying[], 
     3246     anlass              character varying, 
    30073247     art                 integer, 
    3008      name                varchar, 
     3248     name                character varying, 
    30093249     CONSTRAINT ax_heilquellegasquelle_pk PRIMARY KEY (ogc_fid) 
    30103250); 
     
    30133253 
    30143254CREATE INDEX ax_heilquellegasquelle_geom_idx ON ax_heilquellegasquelle USING gist (wkb_geometry); 
    3015 CREATE UNIQUE INDEX ax_heilquellegasquelle_gml ON ax_heilquellegasquelle USING btree (gml_id,beginnt); 
    3016  
    3017 COMMENT ON TABLE  ax_heilquellegasquelle        IS 'H e i l q u e l l e  /  G a s q u e l l e'; 
     3255CREATE UNIQUE INDEX ax_heilquellegasquelle_gml ON ax_heilquellegasquelle USING btree (gml_id, beginnt); 
     3256 
     3257COMMENT ON TABLE  ax_heilquellegasquelle        IS 'Bauwerke, Einrichtungen und sonstige Angaben: (REO) "Heilquelle / Gasquelle"'; 
    30183258COMMENT ON COLUMN ax_heilquellegasquelle.gml_id IS 'Identifikator, global eindeutig'; 
    30193259 
     
    30233263CREATE TABLE ax_sonstigesbauwerkodersonstigeeinrichtung ( 
    30243264     ogc_fid             serial NOT NULL, 
    3025      gml_id              character(16), 
    3026      identifier          character(44), 
    3027      beginnt             character(20), 
    3028      endet               character(20), 
    3029      advstandardmodell   varchar, 
    3030      anlass              varchar, 
     3265     gml_id              character varying NOT NULL, 
     3266     identifier          character varying, 
     3267     beginnt             character(20), 
     3268     endet               character(20), 
     3269     advstandardmodell   character varying[], 
     3270     sonstigesmodell     character varying[], 
     3271     anlass              character varying, 
    30313272     description         integer, 
    3032      name                varchar,  -- Lippe immer leer, RLP "Relationsbelegung bei Nachmigration" 
     3273     name                character varying,  -- Lippe immer leer, RLP "Relationsbelegung bei Nachmigration" 
    30333274     bauwerksfunktion    integer, 
     3275     funktion            integer, 
     3276     -- Beziehungen: 
     3277     gehoertzubauwerk    character varying, --> ax_bauwerkeeinrichtungenundsonstigeangaben 
     3278     gehoertzu           character varying, --> ax_gebaeude 
    30343279     CONSTRAINT ax_sonstigesbauwerkodersonstigeeinrichtung_pk PRIMARY KEY (ogc_fid) 
    30353280); 
     
    30383283 
    30393284CREATE INDEX ax_sonstigesbauwerkodersonstigeeinrichtung_geom_idx ON ax_sonstigesbauwerkodersonstigeeinrichtung USING gist (wkb_geometry); 
    3040 CREATE UNIQUE INDEX ax_sonstigesbauwerkodersonstigeeinrichtung_gml ON ax_sonstigesbauwerkodersonstigeeinrichtung USING btree (gml_id,beginnt); 
    3041  
    3042 COMMENT ON TABLE  ax_sonstigesbauwerkodersonstigeeinrichtung        IS 'sonstiges Bauwerk oder sonstige Einrichtung'; 
     3285CREATE UNIQUE INDEX ax_sonstigesbauwerkodersonstigeeinrichtung_gml ON ax_sonstigesbauwerkodersonstigeeinrichtung USING btree (gml_id, beginnt); 
     3286 
     3287CREATE INDEX ax_sonstigesbauwerkodersonstigeeinrichtung_gz  ON ax_sonstigesbauwerkodersonstigeeinrichtung USING btree (gehoertzu); 
     3288CREATE INDEX ax_sonstigesbauwerkodersonstigeeinrichtung_gzb ON ax_sonstigesbauwerkodersonstigeeinrichtung USING btree (gehoertzubauwerk); 
     3289 
     3290COMMENT ON TABLE  ax_sonstigesbauwerkodersonstigeeinrichtung        IS 'Bauwerke, Einrichtungen und sonstige Angaben: (REO) "sonstiges Bauwerk oder sonstige Einrichtung"'; 
    30433291COMMENT ON COLUMN ax_sonstigesbauwerkodersonstigeeinrichtung.gml_id IS 'Identifikator, global eindeutig'; 
    30443292 
    3045  
    3046 -- E i n r i c h t u n g  i n  Ö f f e n t l i c h e n  B e r e i c h e n 
     3293COMMENT ON COLUMN ax_sonstigesbauwerkodersonstigeeinrichtung.gehoertzubauwerk IS '-> Beziehung zu ax_bauwerkeeinrichtungenundsonstigeangaben (0..1): ''AX_SonstigesBauwerkOderSonstigeEinrichtung'' kann einem anderen Bauwerk zugeordnet werden.'; 
     3294COMMENT ON COLUMN ax_sonstigesbauwerkodersonstigeeinrichtung.gehoertzu IS '-> Beziehung zu ax_gebaeude (0..1): ''AX_SonstigesBauwerkOderSonstigeEinrichtung'' kann einem GebÀude zugeordnet werden, soweit dies fachlich erforderlich ist.'; 
     3295 
     3296 
     3297-- B a u w e r k e,  E i n r i c h t u n g e n  und  s o n s t i g e  A n g a b e n 
     3298-- -------------------------------------------------------------------------------- 
     3299 
     3300-- ax_bauwerkeeinrichtungenundsonstigeangaben  
     3301-- in Relation aus ax_sonstigesbauwerkodersonstigeeinrichtung verlinkt aber bisher noch nicht generiert 
     3302 
     3303-- E i n r i c h t u n g   i n   Ã– f f e n t l i c h e n  B e r e i c h e n 
    30473304-- ------------------------------------------------------------------------ 
    30483305CREATE TABLE ax_einrichtunginoeffentlichenbereichen ( 
    30493306     ogc_fid             serial NOT NULL, 
    3050      gml_id              character(16), 
    3051      identifier          character(44), 
    3052      beginnt             character(20), 
    3053      endet               character(20), 
    3054      advstandardmodell   varchar, 
    3055      sonstigesmodell     varchar, 
    3056      anlass              varchar, 
     3307     gml_id              character varying NOT NULL, 
     3308     identifier          character varying, 
     3309     beginnt             character(20), 
     3310     endet               character(20), 
     3311     advstandardmodell   character varying[], 
     3312     sonstigesmodell     character varying[], 
     3313     anlass              character varying, 
    30573314     art                 integer, 
    3058      kilometerangabe     varchar, 
     3315     kilometerangabe     character varying, 
    30593316     CONSTRAINT ax_einrichtunginoeffentlichenbereichen_pk PRIMARY KEY (ogc_fid) 
    30603317); 
     
    30633320 
    30643321CREATE INDEX ax_einrichtunginoeffentlichenbereichen_geom_idx ON ax_einrichtunginoeffentlichenbereichen USING gist (wkb_geometry); 
    3065 CREATE UNIQUE INDEX ax_einrichtunginoeffentlichenbereichen_gml ON ax_einrichtunginoeffentlichenbereichen USING btree (gml_id,beginnt); 
    3066  
    3067 COMMENT ON TABLE  ax_einrichtunginoeffentlichenbereichen        IS 'E i n r i c h t u n g   i n   Ã¶ f f e n t l i c h e n   B e r e i c h e n'; 
     3322CREATE UNIQUE INDEX ax_einrichtunginoeffentlichenbereichen_gml ON ax_einrichtunginoeffentlichenbereichen USING btree (gml_id, beginnt); 
     3323 
     3324COMMENT ON TABLE  ax_einrichtunginoeffentlichenbereichen        IS '__: (REO) "Einrichtung in öffentlichen Bereichen" ist ..'; 
    30683325COMMENT ON COLUMN ax_einrichtunginoeffentlichenbereichen.gml_id IS 'Identifikator, global eindeutig'; 
    3069  
    3070  
    3071 -- E i n r i c h t u n g   f ÃŒ r   d e n   S c h i f f s v e r k e h r 
    3072 -- ------------------------------------------------------------------------ 
    3073 CREATE TABLE ax_einrichtungenfuerdenschiffsverkehr ( 
    3074      ogc_fid             serial NOT NULL, 
    3075      gml_id              character(16), 
    3076      identifier          character(44), 
    3077      beginnt             character(20), 
    3078      endet               character(20), 
    3079      advstandardmodell   varchar, 
    3080      anlass              varchar, 
    3081      art                 integer, 
    3082      kilometerangabe     varchar, 
    3083      name                varchar, 
    3084      CONSTRAINT ax_einrichtungfuerdenschiffsverkehr_pk PRIMARY KEY (ogc_fid) 
    3085 ); 
    3086  
    3087 SELECT AddGeometryColumn('ax_einrichtungenfuerdenschiffsverkehr','wkb_geometry',:alkis_epsg,'POINT',2); 
    3088  
    3089 CREATE INDEX ax_einrichtungenfuerdenschiffsverkehr_geom_idx   ON ax_einrichtungenfuerdenschiffsverkehr USING gist (wkb_geometry); 
    3090 CREATE UNIQUE INDEX ax_einrichtungenfuerdenschiffsverkehr_gml ON ax_einrichtungenfuerdenschiffsverkehr USING btree (gml_id,beginnt); 
    3091  
    3092 COMMENT ON TABLE  ax_einrichtungenfuerdenschiffsverkehr        IS 'E i n r i c h t u n g e n   f ÃŒ r  d e n  S c h i f f s v e r k e h r'; 
    3093 COMMENT ON COLUMN ax_einrichtungenfuerdenschiffsverkehr.gml_id IS 'Identifikator, global eindeutig'; 
    3094  
    30953326 
    30963327-- B e s o n d e r e r   B a u w e r k s p u n k t 
     
    30983329CREATE TABLE ax_besondererbauwerkspunkt ( 
    30993330     ogc_fid             serial NOT NULL, 
    3100      gml_id              character(16), 
    3101      identifier          character(44), 
    3102      beginnt             character(20), 
    3103      endet               character(20), 
    3104      advstandardmodell   varchar, 
    3105      anlass              varchar, 
    3106      punktkennung        varchar, 
     3331     gml_id              character varying NOT NULL, 
     3332     identifier          character varying, 
     3333     beginnt             character(20), 
     3334     endet               character(20), 
     3335     advstandardmodell   character varying[], 
     3336     sonstigesmodell    character varying[], 
     3337     anlass              character varying, 
     3338     punktkennung        character varying, 
    31073339     land                integer, 
    31083340     stelle              integer, 
    3109      sonstigeeigenschaft varchar[], 
     3341     sonstigeeigenschaft character varying[], 
    31103342     CONSTRAINT ax_besondererbauwerkspunkt_pk PRIMARY KEY (ogc_fid) 
    31113343); 
     
    31133345SELECT AddGeometryColumn('ax_besondererbauwerkspunkt','dummy',:alkis_epsg,'POINT',2); 
    31143346 
    3115 CREATE UNIQUE INDEX ax_besondererbauwerkspunkt_gml ON ax_besondererbauwerkspunkt USING btree (gml_id,beginnt); 
    3116  
    3117 COMMENT ON TABLE  ax_besondererbauwerkspunkt        IS 'B e s o n d e r e r   B a u w e r k s p u n k t'; 
     3347CREATE UNIQUE INDEX ax_besondererbauwerkspunkt_gml ON ax_besondererbauwerkspunkt USING btree (gml_id, beginnt); 
     3348 
     3349COMMENT ON TABLE  ax_besondererbauwerkspunkt        IS '__: (NREO) "Besonderer Bauwerkspunkt" ist ..'; 
    31183350COMMENT ON COLUMN ax_besondererbauwerkspunkt.gml_id IS 'Identifikator, global eindeutig'; 
    31193351 
     
    31243356--** Objektartengruppe: Bauwerke, Anlagen und Einrichtungen fÃŒr den Verkehr 
    31253357--   ======================================================================= 
     3358 
     3359-- E i n r i c h t u n g e n  f ÃŒ r   d e n   S c h i f f s v e r k e h r 
     3360-- ------------------------------------------------------------------------ 
     3361CREATE TABLE ax_einrichtungenfuerdenschiffsverkehr ( 
     3362     ogc_fid             serial NOT NULL, 
     3363     gml_id              character varying NOT NULL, 
     3364     identifier          character varying, 
     3365     beginnt             character(20), 
     3366     endet               character(20), 
     3367     advstandardmodell   character varying[], 
     3368     sonstigesmodell     character varying[], 
     3369     anlass              character varying, 
     3370     art                 integer, 
     3371     kilometerangabe     character varying, 
     3372     name                character varying, 
     3373     CONSTRAINT ax_einrichtungfuerdenschiffsverkehr_pk PRIMARY KEY (ogc_fid) 
     3374); 
     3375 
     3376SELECT AddGeometryColumn('ax_einrichtungenfuerdenschiffsverkehr','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
     3377 
     3378CREATE INDEX ax_einrichtungenfuerdenschiffsverkehr_geom_idx   ON ax_einrichtungenfuerdenschiffsverkehr USING gist (wkb_geometry); 
     3379CREATE UNIQUE INDEX ax_einrichtungenfuerdenschiffsverkehr_gml ON ax_einrichtungenfuerdenschiffsverkehr USING btree (gml_id, beginnt); 
     3380 
     3381COMMENT ON TABLE  ax_einrichtungenfuerdenschiffsverkehr        IS 'Bauwerke, Anlagen und Einrichtungen fÃŒr den Verkehr: (REO) "Einrichtungen fÃŒr den Schiffsverkehr"'; 
     3382COMMENT ON COLUMN ax_einrichtungenfuerdenschiffsverkehr.gml_id IS 'Identifikator, global eindeutig'; 
     3383 
    31263384 
    31273385-- B a u w e r k   i m  V e r k e h s b e r e i c h 
     
    31293387CREATE TABLE ax_bauwerkimverkehrsbereich ( 
    31303388     ogc_fid             serial NOT NULL, 
    3131      gml_id              character(16), 
    3132      identifier          character(44), 
    3133      beginnt             character(20), 
    3134      endet               character(20), 
    3135      advstandardmodell   varchar, 
    3136      anlass              varchar, 
     3389     gml_id              character varying NOT NULL, 
     3390     identifier          character varying, 
     3391     beginnt             character(20), 
     3392     endet               character(20), 
     3393     advstandardmodell   character varying[], 
     3394     sonstigesmodell     character varying[], 
     3395     anlass              character varying, 
    31373396     bauwerksfunktion    integer, 
    3138      name                varchar, 
     3397     name                character varying, 
    31393398     zustand             integer, 
    31403399     CONSTRAINT ax_bauwerkimverkehrsbereich_pk PRIMARY KEY (ogc_fid) 
     
    31443403 
    31453404CREATE INDEX ax_bauwerkimverkehrsbereich_geom_idx ON ax_bauwerkimverkehrsbereich USING gist (wkb_geometry); 
    3146 CREATE UNIQUE INDEX ax_bauwerkimverkehrsbereich_gml ON ax_bauwerkimverkehrsbereich USING btree (gml_id,beginnt); 
    3147  
    3148 COMMENT ON TABLE  ax_bauwerkimverkehrsbereich        IS 'B a u w e r k   i m  V e r k e h s b e r e i c h'; 
     3405CREATE UNIQUE INDEX ax_bauwerkimverkehrsbereich_gml ON ax_bauwerkimverkehrsbereich USING btree (gml_id, beginnt); 
     3406 
     3407COMMENT ON TABLE  ax_bauwerkimverkehrsbereich        IS 'Bauwerke, Anlagen und Einrichtungen fÃŒr den Verkehr: (REO) "Bauwerk im Verkehsbereich" ist ..'; 
    31493408COMMENT ON COLUMN ax_bauwerkimverkehrsbereich.gml_id IS 'Identifikator, global eindeutig'; 
    31503409 
    31513410 
    3152 -- S t r a s s e n v e r k e h r s a n l a g e 
    3153 -- ---------------------------------------------- 
     3411-- S t r a ß e n v e r k e h r s a n l a g e 
     3412-- ------------------------------------------ 
    31543413CREATE TABLE ax_strassenverkehrsanlage ( 
    31553414     ogc_fid             serial NOT NULL, 
    3156      gml_id              character(16), 
    3157      identifier          character(44), 
    3158      beginnt             character(20), 
    3159      endet               character(20), 
    3160      advstandardmodell   varchar, 
    3161      sonstigesmodell     varchar[], 
    3162      anlass              varchar, 
     3415     gml_id              character varying NOT NULL, 
     3416     identifier          character varying, 
     3417     beginnt             character(20), 
     3418     endet               character(20), 
     3419     advstandardmodell   character varying[], 
     3420     sonstigesmodell     character varying[], 
     3421     anlass              character varying, 
    31633422     art                 integer, 
    3164      bezeichnung         varchar, 
    3165      name                varchar, 
     3423     bezeichnung         character varying, 
     3424     name                character varying, 
    31663425     CONSTRAINT ax_strassenverkehrsanlage_pk PRIMARY KEY (ogc_fid) 
    31673426); 
     
    31703429 
    31713430CREATE INDEX ax_strassenverkehrsanlage_geom_idx ON ax_strassenverkehrsanlage USING gist (wkb_geometry); 
    3172 CREATE UNIQUE INDEX ax_strassenverkehrsanlage_gml ON ax_strassenverkehrsanlage USING btree (gml_id,beginnt); 
    3173  
    3174 COMMENT ON TABLE  ax_strassenverkehrsanlage        IS 'S t r a s s e n v e r k e h r s a n l a g e'; 
     3431CREATE UNIQUE INDEX ax_strassenverkehrsanlage_gml ON ax_strassenverkehrsanlage USING btree (gml_id, beginnt); 
     3432 
     3433COMMENT ON TABLE  ax_strassenverkehrsanlage        IS 'Bauwerke, Anlagen und Einrichtungen fÃŒr den Verkehr: (REO) "Straßenverkehrsanlage" ist ..'; 
    31753434COMMENT ON COLUMN ax_strassenverkehrsanlage.gml_id IS 'Identifikator, global eindeutig'; 
    31763435 
     
    31803439CREATE TABLE ax_wegpfadsteig ( 
    31813440     ogc_fid             serial NOT NULL, 
    3182      gml_id              character(16), 
    3183      identifier          character(44), 
    3184      beginnt             character(20), 
    3185      endet               character(20), 
    3186      advstandardmodell   varchar, 
    3187      sonstigesmodell     varchar[], 
    3188      anlass              varchar, 
     3441     gml_id              character varying NOT NULL, 
     3442     identifier          character varying, 
     3443     beginnt             character(20), 
     3444     endet               character(20), 
     3445     advstandardmodell   character varying[], 
     3446     sonstigesmodell     character varying[], 
     3447     anlass              character varying, 
    31893448     art                 integer, 
    3190      name                varchar, 
     3449     name                character varying, 
    31913450     CONSTRAINT ax_wegpfadsteig_pk PRIMARY KEY (ogc_fid) 
    31923451); 
     
    31943453SELECT AddGeometryColumn('ax_wegpfadsteig','wkb_geometry',:alkis_epsg,'GEOMETRY',2); -- LINESTRING/POLYGON 
    31953454 
    3196 CREATE INDEX ax_wegpfadsteig_geom_idx ON ax_wegpfadsteig USING gist (wkb_geometry); 
    3197 CREATE UNIQUE INDEX ax_wegpfadsteig_gml ON ax_wegpfadsteig USING btree (gml_id,beginnt); 
    3198  
    3199 COMMENT ON TABLE  ax_wegpfadsteig        IS 'W e g  /  P f a d  /  S t e i g'; 
     3455CREATE INDEX ax_wegpfadsteig_geom_idx   ON ax_wegpfadsteig USING gist (wkb_geometry); 
     3456CREATE UNIQUE INDEX ax_wegpfadsteig_gml ON ax_wegpfadsteig USING btree (gml_id, beginnt); 
     3457 
     3458COMMENT ON TABLE  ax_wegpfadsteig        IS 'Bauwerke, Anlagen und Einrichtungen fÃŒr den Verkehr: (REO) "Weg / Pfad / Steig"'; 
    32003459COMMENT ON COLUMN ax_wegpfadsteig.gml_id IS 'Identifikator, global eindeutig'; 
    32013460 
     
    32053464CREATE TABLE ax_bahnverkehrsanlage ( 
    32063465     ogc_fid             serial NOT NULL, 
    3207      gml_id              character(16), 
    3208      identifier          character(44), 
    3209      beginnt             character(20), 
    3210      endet               character(20), 
    3211      advstandardmodell   varchar, 
    3212      sonstigesmodell     varchar[], 
    3213      anlass              varchar, 
     3466     gml_id              character varying NOT NULL, 
     3467     identifier          character varying, 
     3468     beginnt             character(20), 
     3469     endet               character(20), 
     3470     advstandardmodell   character varying[], 
     3471     sonstigesmodell     character varying[], 
     3472     anlass              character varying, 
    32143473     bahnhofskategorie   integer, 
    32153474     bahnkategorie       integer, 
    3216      name                varchar, 
     3475     name                character varying, 
    32173476     CONSTRAINT ax_bahnverkehrsanlage_pk PRIMARY KEY (ogc_fid) 
    32183477); 
     
    32213480 
    32223481CREATE INDEX ax_bahnverkehrsanlage_geom_idx ON ax_bahnverkehrsanlage USING gist (wkb_geometry); 
    3223 CREATE UNIQUE INDEX ax_bahnverkehrsanlage_gml ON ax_bahnverkehrsanlage USING btree (gml_id,beginnt); 
    3224  
    3225 COMMENT ON TABLE  ax_bahnverkehrsanlage        IS 'B a h n v e r k e h r s a n l a g e'; 
     3482CREATE UNIQUE INDEX ax_bahnverkehrsanlage_gml ON ax_bahnverkehrsanlage USING btree (gml_id, beginnt); 
     3483 
     3484COMMENT ON TABLE  ax_bahnverkehrsanlage        IS 'Bauwerke, Anlagen und Einrichtungen fÃŒr den Verkehr: (REO) "Bahnverkehrsanlage"'; 
    32263485COMMENT ON COLUMN ax_bahnverkehrsanlage.gml_id IS 'Identifikator, global eindeutig'; 
    32273486 
     
    32313490CREATE TABLE ax_seilbahnschwebebahn ( 
    32323491     ogc_fid             serial NOT NULL, 
    3233      gml_id              character(16), 
    3234      identifier          character(44), 
    3235      beginnt             character(20), 
    3236      endet               character(20), 
    3237      advstandardmodell   varchar, 
    3238      sonstigesmodell     varchar[], 
    3239      anlass              varchar, 
     3492     gml_id              character varying NOT NULL, 
     3493     identifier          character varying, 
     3494     beginnt             character(20), 
     3495     endet               character(20), 
     3496     advstandardmodell   character varying[], 
     3497     sonstigesmodell     character varying[], 
     3498     anlass              character varying, 
    32403499     bahnkategorie       integer, 
    3241      name                varchar, 
     3500     name                character varying, 
    32423501     CONSTRAINT ax_seilbahnschwebebahn_pk PRIMARY KEY (ogc_fid) 
    32433502); 
    32443503 
    3245 SELECT AddGeometryColumn('ax_seilbahnschwebebahn','wkb_geometry',:alkis_epsg,'GEOMETRY',2); -- LINESTRING/MULTILINESTRING 
    3246  
     3504SELECT AddGeometryColumn('ax_seilbahnschwebebahn','wkb_geometry',:alkis_epsg,'GEOMETRY',2);  
     3505-- LINESTRING/MULTILINESTRING 
    32473506CREATE INDEX ax_seilbahnschwebebahn_geom_idx ON ax_seilbahnschwebebahn USING gist (wkb_geometry); 
    3248 CREATE UNIQUE INDEX ax_seilbahnschwebebahn_gml ON ax_seilbahnschwebebahn USING btree (gml_id,beginnt); 
    3249  
    3250 COMMENT ON TABLE  ax_seilbahnschwebebahn        IS 'S e i l b a h n, S c h w e b e b a h n'; 
     3507CREATE UNIQUE INDEX ax_seilbahnschwebebahn_gml ON ax_seilbahnschwebebahn USING btree (gml_id, beginnt); 
     3508 
     3509COMMENT ON TABLE  ax_seilbahnschwebebahn        IS 'Bauwerke, Anlagen und Einrichtungen fÃŒr den Verkehr: (REO) "Seilbahn, Schwebebahn"'; 
    32513510COMMENT ON COLUMN ax_seilbahnschwebebahn.gml_id IS 'Identifikator, global eindeutig'; 
    32523511 
    32533512 
    3254  
    32553513-- G l e i s 
    32563514-- ---------------------------------------------- 
    32573515CREATE TABLE ax_gleis ( 
    32583516     ogc_fid             serial NOT NULL, 
    3259      gml_id              character(16), 
    3260      identifier          character(44), 
    3261      beginnt             character(20), 
    3262      endet               character(20), 
    3263      advstandardmodell   varchar, 
    3264      sonstigesmodell     varchar[], 
    3265      anlass              varchar, 
     3517     gml_id              character varying NOT NULL, 
     3518     identifier          character varying, 
     3519     beginnt             character(20), 
     3520     endet               character(20), 
     3521     advstandardmodell   character varying[], 
     3522     sonstigesmodell     character varying[], 
     3523     anlass              character varying, 
    32663524     bahnkategorie       integer, 
    32673525     art                 integer, 
    32683526     lagezuroberflaeche  integer, 
    3269      name                varchar, 
     3527     name                character varying, 
    32703528     CONSTRAINT ax_gleis_pk PRIMARY KEY (ogc_fid) 
    32713529); 
     
    32743532 
    32753533CREATE INDEX ax_gleis_geom_idx ON ax_gleis USING gist (wkb_geometry); 
    3276 CREATE UNIQUE INDEX ax_gleis_gml ON ax_gleis USING btree (gml_id,beginnt); 
    3277  
    3278 COMMENT ON TABLE  ax_gleis        IS 'G l e i s'; 
     3534CREATE UNIQUE INDEX ax_gleis_gml ON ax_gleis USING btree (gml_id, beginnt); 
     3535 
     3536COMMENT ON TABLE  ax_gleis        IS 'Bauwerke, Anlagen und Einrichtungen fÃŒr den Verkehr: (REO) "Gleis"'; 
    32793537COMMENT ON COLUMN ax_gleis.gml_id IS 'Identifikator, global eindeutig'; 
    32803538 
     
    32843542CREATE TABLE ax_flugverkehrsanlage ( 
    32853543     ogc_fid             serial NOT NULL, 
    3286      gml_id              character(16), 
    3287      identifier          character(44), 
    3288      beginnt             character(20), 
    3289      endet               character(20), 
    3290      advstandardmodell   varchar, 
    3291      sonstigesmodell     varchar, 
    3292      anlass              varchar, 
     3544     gml_id              character varying NOT NULL, 
     3545     identifier          character varying, 
     3546     beginnt             character(20), 
     3547     endet               character(20), 
     3548     advstandardmodell   character varying[], 
     3549     sonstigesmodell     character varying[], 
     3550     anlass              character varying, 
    32933551     art                 integer, 
    32943552     oberflaechenmaterial integer, 
    3295      name                varchar, 
     3553     name                character varying, 
    32963554     CONSTRAINT ax_flugverkehrsanlage_pk PRIMARY KEY (ogc_fid) 
    32973555); 
     
    33003558 
    33013559CREATE INDEX ax_flugverkehrsanlage_geom_idx ON ax_flugverkehrsanlage USING gist (wkb_geometry); 
    3302 CREATE UNIQUE INDEX ax_flugverkehrsanlage_gml ON ax_flugverkehrsanlage USING btree (gml_id,beginnt); 
    3303  
    3304 COMMENT ON TABLE  ax_flugverkehrsanlage             IS 'F l u g v e r k e h r s a n l a g e'; 
    3305 COMMENT ON COLUMN ax_flugverkehrsanlage.gml_id      IS 'Identifikator, global eindeutig'; 
    3306  
    3307  
    3308 --AX_EinrichtungenFuerDenSchiffsverkehr 
    3309 -- ** Tabelle bisher noch nicht generiert 
     3560CREATE UNIQUE INDEX ax_flugverkehrsanlage_gml ON ax_flugverkehrsanlage USING btree (gml_id, beginnt); 
     3561 
     3562COMMENT ON TABLE  ax_flugverkehrsanlage          IS 'Bauwerke, Anlagen und Einrichtungen fÃŒr den Verkehr: (REO) "Flugverkehrsanlage"'; 
     3563COMMENT ON COLUMN ax_flugverkehrsanlage.gml_id   IS 'Identifikator, global eindeutig'; 
    33103564 
    33113565 
     
    33143568CREATE TABLE ax_bauwerkimgewaesserbereich ( 
    33153569     ogc_fid             serial NOT NULL, 
    3316      gml_id              character(16), 
    3317      identifier          character(44), 
    3318      beginnt             character(20), 
    3319      endet               character(20), 
    3320      advstandardmodell   varchar, 
    3321      anlass              varchar, 
     3570     gml_id              character varying NOT NULL, 
     3571     identifier          character varying, 
     3572     beginnt             character(20), 
     3573     endet               character(20), 
     3574     advstandardmodell   character varying[], 
     3575     sonstigesmodell     character varying[], 
     3576     anlass              character varying, 
    33223577     bauwerksfunktion    integer, 
    3323      name                varchar, 
     3578     name                character varying, 
    33243579     zustand             integer, 
    33253580     CONSTRAINT ax_bauwerkimgewaesserbereich_pk PRIMARY KEY (ogc_fid) 
     
    33293584 
    33303585CREATE INDEX ax_bauwerkimgewaesserbereich_geom_idx ON ax_bauwerkimgewaesserbereich USING gist (wkb_geometry); 
    3331 CREATE UNIQUE INDEX ax_bauwerkimgewaesserbereich_gml ON ax_bauwerkimgewaesserbereich USING btree (gml_id,beginnt); 
    3332  
    3333 COMMENT ON TABLE  ax_bauwerkimgewaesserbereich        IS 'B a u w e r k   i m   G e w À s s e r b e r e i c h'; 
     3586CREATE UNIQUE INDEX ax_bauwerkimgewaesserbereich_gml ON ax_bauwerkimgewaesserbereich USING btree (gml_id, beginnt); 
     3587 
     3588COMMENT ON TABLE  ax_bauwerkimgewaesserbereich        IS 'Bauwerke, Anlagen und Einrichtungen fÃŒr den Verkehr: (REO) "Bauwerk im GewÀsserbereich"'; 
    33343589COMMENT ON COLUMN ax_bauwerkimgewaesserbereich.gml_id IS 'Identifikator, global eindeutig'; 
    33353590 
     
    33423597CREATE TABLE ax_vegetationsmerkmal ( 
    33433598     ogc_fid             serial NOT NULL, 
    3344      gml_id              character(16), 
    3345      identifier          character(44), 
    3346      beginnt             character(20), 
    3347      endet               character(20), 
    3348      advstandardmodell   varchar, 
    3349      anlass              varchar, 
     3599     gml_id              character varying NOT NULL, 
     3600     identifier          character varying, 
     3601     beginnt             character(20), 
     3602     endet               character(20), 
     3603     advstandardmodell   character varying[], 
     3604     sonstigesmodell     character varying[], 
     3605     anlass              character varying, 
    33503606     bewuchs             integer, 
    33513607     zustand             integer, 
    3352      name                varchar, 
     3608     name                character varying, 
    33533609     CONSTRAINT ax_vegetationsmerkmal_pk PRIMARY KEY (ogc_fid) 
    33543610); 
     
    33573613 
    33583614CREATE INDEX ax_vegetationsmerkmal_geom_idx ON ax_vegetationsmerkmal USING gist (wkb_geometry); 
    3359 CREATE UNIQUE INDEX ax_vegetationsmerkmal_gml ON ax_vegetationsmerkmal USING btree (gml_id,beginnt); 
    3360  
    3361 COMMENT ON TABLE  ax_vegetationsmerkmal        IS 'V e g a t a t i o n s m e r k m a l'; 
     3615CREATE UNIQUE INDEX ax_vegetationsmerkmal_gml ON ax_vegetationsmerkmal USING btree (gml_id, beginnt); 
     3616 
     3617COMMENT ON TABLE  ax_vegetationsmerkmal        IS 'Besondere Vegetationsmerkmale: (REO) "Vegatationsmerkmal"'; 
    33623618COMMENT ON COLUMN ax_vegetationsmerkmal.gml_id IS 'Identifikator, global eindeutig'; 
    33633619 
     
    33703626CREATE TABLE ax_gewaessermerkmal ( 
    33713627     ogc_fid                  serial NOT NULL, 
    3372      gml_id                   character(16), 
    3373      identifier               character(44), 
     3628     gml_id                   character varying NOT NULL, 
     3629     identifier               character varying, 
    33743630     beginnt                  character(20), 
    33753631     endet                    character(20), 
    3376      advstandardmodell        varchar, 
    3377      anlass                   varchar, 
     3632     advstandardmodell        character varying[], 
     3633     sonstigesmodell          character varying[], 
     3634     anlass                   character varying, 
    33783635     art                      integer, 
    3379      name                     varchar, 
     3636     name                     character varying, 
    33803637     CONSTRAINT ax_gewaessermerkmal_pk PRIMARY KEY (ogc_fid) 
    33813638); 
     
    33843641 
    33853642CREATE INDEX ax_gewaessermerkmal_geom_idx ON ax_gewaessermerkmal USING gist (wkb_geometry); 
    3386 CREATE UNIQUE INDEX ax_gewaessermerkmal_gml ON ax_gewaessermerkmal USING btree (gml_id,beginnt); 
    3387  
    3388 COMMENT ON TABLE  ax_gewaessermerkmal        IS 'G e w À s s e r m e r k m a l'; 
     3643CREATE UNIQUE INDEX ax_gewaessermerkmal_gml ON ax_gewaessermerkmal USING btree (gml_id, beginnt); 
     3644 
     3645COMMENT ON TABLE  ax_gewaessermerkmal        IS 'Besondere Eigenschaften von GewÀssern: (REO) "GewÀssermerkmal"'; 
    33893646COMMENT ON COLUMN ax_gewaessermerkmal.gml_id IS 'Identifikator, global eindeutig'; 
    33903647 
     
    33943651CREATE TABLE ax_untergeordnetesgewaesser ( 
    33953652     ogc_fid                  serial NOT NULL, 
    3396      gml_id                   character(16), 
    3397      identifier               character(44), 
     3653     gml_id                   character varying NOT NULL, 
     3654     identifier               character varying, 
    33983655     beginnt                  character(20), 
    33993656     endet                    character(20), 
    3400      advstandardmodell        varchar, 
    3401      anlass                   varchar, 
     3657     advstandardmodell        character varying[], 
     3658     sonstigesmodell          character varying[], 
     3659     anlass                   character varying, 
    34023660     funktion                 integer, 
    34033661     lagezurerdoberflaeche    integer, 
    34043662     hydrologischesmerkmal    integer, 
    3405      name                     varchar, 
     3663     name                     character varying, 
    34063664     CONSTRAINT ax_untergeordnetesgewaesser_pk PRIMARY KEY (ogc_fid) 
    34073665); 
     
    34103668 
    34113669CREATE INDEX ax_untergeordnetesgewaesser_geom_idx ON ax_untergeordnetesgewaesser USING gist (wkb_geometry); 
    3412 CREATE UNIQUE INDEX ax_untergeordnetesgewaesser_gml ON ax_untergeordnetesgewaesser USING btree (gml_id,beginnt); 
    3413  
    3414 COMMENT ON TABLE  ax_untergeordnetesgewaesser        IS 'u n t e r g e o r d n e t e s   G e w À s s e r'; 
     3670CREATE UNIQUE INDEX ax_untergeordnetesgewaesser_gml ON ax_untergeordnetesgewaesser USING btree (gml_id, beginnt); 
     3671 
     3672COMMENT ON TABLE  ax_untergeordnetesgewaesser        IS 'Besondere Eigenschaften von GewÀssern: (REO) "untergeordnetes GewÀsser"'; 
    34153673COMMENT ON COLUMN ax_untergeordnetesgewaesser.gml_id IS 'Identifikator, global eindeutig'; 
    34163674 
     
    34263684CREATE TABLE ax_wasserspiegelhoehe ( 
    34273685     ogc_fid                  serial NOT NULL, 
    3428      gml_id                   character(16), 
    3429      identifier               character(44), 
     3686     gml_id                   character varying NOT NULL, 
     3687     identifier               character varying, 
    34303688     beginnt                  character(20), 
    34313689     endet                    character(20), 
    3432      advstandardmodell        varchar, 
    3433      anlass                   varchar, 
     3690     advstandardmodell        character varying[], 
     3691     sonstigesmodell          character varying[], 
     3692     anlass                   character varying, 
    34343693     hoehedeswasserspiegels   double precision, 
    34353694     CONSTRAINT ax_wasserspiegelhoehe_pk PRIMARY KEY (ogc_fid) 
     
    34393698 
    34403699CREATE INDEX ax_wasserspiegelhoehe_geom_idx ON ax_wasserspiegelhoehe USING gist (wkb_geometry); 
    3441 CREATE UNIQUE INDEX ax_wasserspiegelhoehe_gml ON ax_wasserspiegelhoehe USING btree (gml_id,beginnt); 
    3442  
    3443 COMMENT ON TABLE  ax_wasserspiegelhoehe  IS 'W a s s e r s p i e g e l h ö h e'; 
     3700CREATE UNIQUE INDEX ax_wasserspiegelhoehe_gml ON ax_wasserspiegelhoehe USING btree (gml_id, beginnt); 
     3701 
     3702COMMENT ON TABLE  ax_wasserspiegelhoehe  IS 'Besondere Angaben zum GewÀsser: (REO) "Wasserspiegelhöhe"'; 
    34443703 
    34453704 
     
    34483707CREATE TABLE ax_schifffahrtsliniefaehrverkehr ( 
    34493708     ogc_fid                  serial NOT NULL, 
    3450      gml_id                   character(16), 
    3451      identifier               character(44), 
     3709     gml_id                   character varying NOT NULL, 
     3710     identifier               character varying, 
    34523711     beginnt                  character(20), 
    34533712     endet                    character(20), 
    3454      advstandardmodell        varchar, 
    3455      anlass                   varchar, 
    3456      art                      integer, 
     3713     advstandardmodell        character varying[], 
     3714     sonstigesmodell          character varying[], 
     3715     anlass                   character varying, 
     3716     art                      integer[], 
     3717     name                     character varying, 
    34573718     CONSTRAINT ax_schifffahrtsliniefaehrverkehr_pk PRIMARY KEY (ogc_fid) 
    34583719); 
     
    34613722 
    34623723CREATE INDEX ax_schifffahrtsliniefaehrverkehr_geom_idx ON ax_schifffahrtsliniefaehrverkehr USING gist (wkb_geometry); 
    3463 CREATE UNIQUE INDEX ax_schifffahrtsliniefaehrverkehr_gml ON ax_schifffahrtsliniefaehrverkehr USING btree (gml_id,beginnt); 
    3464  
    3465 COMMENT ON TABLE  ax_schifffahrtsliniefaehrverkehr  IS 'S c h i f f f a h r t s l i n i e  /  F À h r v e r k e h r'; 
     3724CREATE UNIQUE INDEX ax_schifffahrtsliniefaehrverkehr_gml ON ax_schifffahrtsliniefaehrverkehr USING btree (gml_id, beginnt); 
     3725 
     3726COMMENT ON TABLE  ax_schifffahrtsliniefaehrverkehr  IS 'Besondere Angaben zum GewÀsser: (REO) "Schifffahrtslinie / FÀhrverkehr"'; 
    34663727 
    34673728--*** ############################################################ 
     
    34773738CREATE TABLE ax_boeschungkliff ( 
    34783739     ogc_fid                  serial NOT NULL, 
    3479      gml_id                   character(16), 
    3480      identifier               character(44), 
     3740     gml_id                   character varying NOT NULL, 
     3741     identifier               character varying, 
    34813742     beginnt                  character(20), 
    34823743     endet                    character(20), 
    3483      advstandardmodell        varchar, 
    3484      sonstigesmodell          varchar[], 
    3485      anlass                   varchar, 
     3744     advstandardmodell        character varying[], 
     3745     sonstigesmodell          character varying[], 
     3746     anlass                   character varying, 
    34863747     objekthoehe              double precision, 
    34873748     CONSTRAINT ax_boeschungkliff_pk PRIMARY KEY (ogc_fid) 
     
    34903751SELECT AddGeometryColumn('ax_boeschungkliff','dummy',:alkis_epsg,'POINT',2); 
    34913752 
    3492 CREATE UNIQUE INDEX ax_boeschungkliff_gml ON ax_boeschungkliff USING btree (gml_id,beginnt); 
    3493  
    3494 COMMENT ON TABLE  ax_boeschungkliff        IS 'B ö s c h u n g s k l i f f'; 
     3753CREATE UNIQUE INDEX ax_boeschungkliff_gml ON ax_boeschungkliff USING btree (gml_id, beginnt); 
     3754 
     3755COMMENT ON TABLE  ax_boeschungkliff        IS 'Relief / Reliefformen: (NREO) "Böschungskliff"'; 
    34953756COMMENT ON COLUMN ax_boeschungkliff.gml_id IS 'Identifikator, global eindeutig'; 
    34963757 
     
    34983759-- B ö s c h u n g s f l À c h e 
    34993760-- --------------------------------- 
    3500 --AX_Boeschungsflaeche GeÀndert (Revisionsnummer: 1623) 
     3761-- AX_Boeschungsflaeche GeÀndert (Revisionsnummer: 1623) 
    35013762CREATE TABLE ax_boeschungsflaeche ( 
    35023763     ogc_fid                  serial NOT NULL, 
    3503      gml_id                   character(16), 
    3504      identifier               character(44), 
     3764     gml_id                   character varying NOT NULL, 
     3765     identifier               character varying, 
    35053766     beginnt                  character(20), 
    35063767     endet                    character(20), 
    3507      advstandardmodell        varchar, 
    3508      sonstigesmodell          varchar[], 
    3509      anlass                   varchar, 
     3768     advstandardmodell        character varying[], 
     3769     sonstigesmodell          character varying[], 
     3770     anlass                   character varying, 
     3771     -- Beziehungen: 
     3772     istteilvon               character varying,  -- Index drauf? 
    35103773     CONSTRAINT ax_boeschungsflaeche_pk PRIMARY KEY (ogc_fid) 
    35113774); 
     
    35133776SELECT AddGeometryColumn('ax_boeschungsflaeche','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
    35143777 
    3515 CREATE INDEX ax_boeschungsflaeche_geom_idx ON ax_boeschungsflaeche USING gist (wkb_geometry); 
    3516 CREATE UNIQUE INDEX ax_boeschungsflaeche_gml ON ax_boeschungsflaeche USING btree (gml_id,beginnt); 
    3517  
    3518 COMMENT ON TABLE  ax_boeschungsflaeche        IS 'B ö s c h u n g s f l À c h e'; 
     3778CREATE INDEX ax_boeschungsflaeche_geom_idx   ON ax_boeschungsflaeche USING gist (wkb_geometry); 
     3779CREATE UNIQUE INDEX ax_boeschungsflaeche_gml ON ax_boeschungsflaeche USING btree (gml_id, beginnt); 
     3780CREATE INDEX ax_boeschungsflaeche_itv        ON ax_boeschungsflaeche USING btree (istteilvon); 
     3781 
     3782COMMENT ON TABLE  ax_boeschungsflaeche        IS 'Relief / Reliefformen: (REO) "BöschungsflÀche"'; 
    35193783COMMENT ON COLUMN ax_boeschungsflaeche.gml_id IS 'Identifikator, global eindeutig'; 
    35203784 
     
    35243788CREATE TABLE ax_dammwalldeich ( 
    35253789     ogc_fid                  serial NOT NULL, 
    3526      gml_id                   character(16), 
    3527      identifier               character(44), 
     3790     gml_id                   character varying NOT NULL, 
     3791     identifier               character varying, 
    35283792     beginnt                  character(20), 
    35293793     endet                    character(20), 
    3530      advstandardmodell        varchar, 
    3531      anlass                   varchar, 
     3794     advstandardmodell        character varying[], 
     3795     sonstigesmodell          character varying[], 
     3796     anlass                   character varying, 
    35323797     art                      integer, 
    3533      name                     varchar, 
     3798     name                     character varying, 
    35343799     funktion                 integer, 
    35353800     CONSTRAINT ax_dammwalldeich_pk PRIMARY KEY (ogc_fid) 
     
    35393804 
    35403805CREATE INDEX ax_dammwalldeich_geom_idx ON ax_dammwalldeich USING gist (wkb_geometry); 
    3541 CREATE UNIQUE INDEX ax_dammwalldeich_gml ON ax_dammwalldeich USING btree (gml_id,beginnt); 
    3542  
    3543 COMMENT ON TABLE  ax_dammwalldeich        IS 'D a m m  /  W a l l  /  D e i c h'; 
     3806CREATE UNIQUE INDEX ax_dammwalldeich_gml ON ax_dammwalldeich USING btree (gml_id, beginnt); 
     3807 
     3808COMMENT ON TABLE  ax_dammwalldeich        IS 'Relief / Reliefformen: (REO) "Damm / Wall / Deich"'; 
    35443809COMMENT ON COLUMN ax_dammwalldeich.gml_id IS 'Identifikator, global eindeutig'; 
    35453810 
     
    35493814CREATE TABLE ax_hoehleneingang ( 
    35503815     ogc_fid                  serial NOT NULL, 
    3551      gml_id                   character(16), 
    3552      identifier               character(44), 
     3816     gml_id                   character varying NOT NULL, 
     3817     identifier               character varying, 
    35533818     beginnt                  character(20), 
    35543819     endet                    character(20), 
    3555      advstandardmodell        varchar, 
    3556      anlass                   varchar, 
    3557      name                     varchar, 
     3820     advstandardmodell        character varying[], 
     3821     sonstigesmodell          character varying[], 
     3822     anlass                   character varying, 
     3823     name                     character varying, 
    35583824     ax_datenerhebung         integer, 
    35593825     CONSTRAINT ax_hoehleneingang_pk PRIMARY KEY (ogc_fid) 
     
    35633829 
    35643830CREATE INDEX ax_hoehleneingang_geom_idx ON ax_hoehleneingang USING gist (wkb_geometry); 
    3565 CREATE UNIQUE INDEX ax_hoehleneingang_gml ON ax_hoehleneingang USING btree (gml_id,beginnt); 
    3566  
    3567 COMMENT ON TABLE  ax_hoehleneingang        IS 'Höhleneingang'; 
     3831CREATE UNIQUE INDEX ax_hoehleneingang_gml ON ax_hoehleneingang USING btree (gml_id, beginnt); 
     3832 
     3833COMMENT ON TABLE  ax_hoehleneingang        IS 'Relief / Reliefformen: (REO) "Höhleneingang"'; 
    35683834COMMENT ON COLUMN ax_hoehleneingang.gml_id IS 'Identifikator, global eindeutig'; 
    35693835 
     
    35743840CREATE TABLE ax_felsenfelsblockfelsnadel ( 
    35753841     ogc_fid                  serial NOT NULL, 
    3576      gml_id                   character(16), 
    3577      identifier               character(44), 
     3842     gml_id                   character varying NOT NULL, 
     3843     identifier               character varying, 
    35783844     beginnt                  character(20), 
    35793845     endet                    character(20), 
    3580      advstandardmodell        varchar, 
    3581      anlass                   varchar, 
    3582      name                     varchar, 
     3846     advstandardmodell        character varying[], 
     3847     sonstigesmodell          character varying[], 
     3848     anlass                   character varying, 
     3849     name                     character varying, 
    35833850     CONSTRAINT ax_felsenfelsblockfelsnadel_pk PRIMARY KEY (ogc_fid) 
    35843851); 
     
    35873854 
    35883855CREATE INDEX ax_felsenfelsblockfelsnadel_geom_idx ON ax_felsenfelsblockfelsnadel USING gist (wkb_geometry); 
    3589 CREATE UNIQUE INDEX ax_felsenfelsblockfelsnadel_gml ON ax_felsenfelsblockfelsnadel USING btree (gml_id,beginnt); 
    3590  
    3591 COMMENT ON TABLE  ax_felsenfelsblockfelsnadel        IS 'F e l s e n ,  F e l s b l o c k ,   F e l s n a d e l'; 
     3856CREATE UNIQUE INDEX ax_felsenfelsblockfelsnadel_gml ON ax_felsenfelsblockfelsnadel USING btree (gml_id, beginnt); 
     3857 
     3858COMMENT ON TABLE  ax_felsenfelsblockfelsnadel        IS 'Relief / Reliefformen: (REO) "Felsen, Felsblock, Felsnadel"'; 
    35923859COMMENT ON COLUMN ax_felsenfelsblockfelsnadel.gml_id IS 'Identifikator, global eindeutig'; 
    35933860 
     
    35973864CREATE TABLE ax_duene ( 
    35983865     ogc_fid                  serial NOT NULL, 
    3599      gml_id                   character(16), 
    3600      identifier               character(44), 
     3866     gml_id                   character varying NOT NULL, 
     3867     identifier               character varying, 
    36013868     beginnt                  character(20), 
    36023869     endet                    character(20), 
    3603      advstandardmodell        varchar, 
    3604      anlass                   varchar, 
    3605      name                     varchar, 
     3870     advstandardmodell        character varying[], 
     3871     sonstigesmodell          character varying[], 
     3872     anlass                   character varying, 
     3873     name                     character varying, 
    36063874     CONSTRAINT ax_duene_pk PRIMARY KEY (ogc_fid) 
    36073875); 
    3608  
    36093876SELECT AddGeometryColumn('ax_duene','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
    36103877 
    36113878CREATE INDEX ax_duene_geom_idx ON ax_duene USING gist (wkb_geometry); 
    3612 CREATE UNIQUE INDEX ax_duene_gml ON ax_duene USING btree (gml_id,beginnt); 
    3613  
    3614 COMMENT ON TABLE  ax_duene IS 'D ÃŒ n e'; 
     3879CREATE UNIQUE INDEX ax_duene_gml ON ax_duene USING btree (gml_id, beginnt); 
     3880 
     3881COMMENT ON TABLE  ax_duene IS 'Relief / Reliefformen: (REO) "DÃŒne"'; 
    36153882 
    36163883 
     
    36193886CREATE TABLE ax_hoehenlinie ( 
    36203887     ogc_fid                  serial NOT NULL, 
    3621      gml_id                   character(16), 
    3622      identifier               character(44), 
     3888     gml_id                   character varying NOT NULL, 
     3889     identifier               character varying, 
    36233890     beginnt                  character(20), 
    36243891     endet                    character(20), 
    3625      advstandardmodell        varchar, 
    3626      anlass                   varchar, 
     3892     advstandardmodell        character varying[], 
     3893     sonstigesmodell          character varying[], 
     3894     anlass                   character varying, 
    36273895     hoehevonhoehenlinie      double precision, 
    36283896     CONSTRAINT ax_hoehenlinie_pk PRIMARY KEY (ogc_fid) 
     
    36323900 
    36333901CREATE INDEX ax_hoehenlinie_geom_idx ON ax_hoehenlinie USING gist (wkb_geometry); 
    3634 CREATE UNIQUE INDEX ax_hoehenlinie_gml ON ax_hoehenlinie USING btree (gml_id,beginnt); 
    3635  
    3636 COMMENT ON TABLE  ax_hoehenlinie        IS 'H ö h e n l i n i e'; 
     3902CREATE UNIQUE INDEX ax_hoehenlinie_gml ON ax_hoehenlinie USING btree (gml_id, beginnt); 
     3903 
     3904COMMENT ON TABLE  ax_hoehenlinie        IS 'Relief / Reliefformen: (REO) "Höhenlinie"'; 
    36373905COMMENT ON COLUMN ax_hoehenlinie.gml_id IS 'Identifikator, global eindeutig'; 
    36383906 
     
    36453913-- ** Tabelle bisher noch nicht generiert 
    36463914 
    3647  
    36483915--AX_ErfassungMarkanterGelaendepunkt 
    36493916-- ** Tabelle bisher noch nicht generiert 
    36503917 
    3651  
    36523918-- G e l À n d e k a n t e 
    36533919-- ---------------------------------------------- 
    36543920CREATE TABLE ax_gelaendekante ( 
    36553921     ogc_fid                  serial NOT NULL, 
    3656      gml_id                   character(16), 
    3657      identifier               character(44), 
     3922     gml_id                   character varying NOT NULL, 
     3923     identifier               character varying, 
    36583924     beginnt                  character(20), 
    36593925     endet                    character(20), 
    3660      advstandardmodell        varchar, 
    3661      sonstigesmodell          varchar, 
    3662      anlass                   varchar, 
    3663      istteilvon               varchar, -- Beziehung? 
     3926     advstandardmodell        character varying[], 
     3927     sonstigesmodell          character varying[], 
     3928     anlass                   character varying, 
    36643929     artdergelaendekante      integer, 
    36653930     ax_dqerfassungsmethode   integer, 
    36663931     identifikation           integer, 
    36673932     art                      integer, 
     3933     -- Beziehungen: 
     3934     istteilvon                 character varying, 
    36683935     CONSTRAINT ax_gelaendekante_pk PRIMARY KEY (ogc_fid) 
    36693936); 
     
    36713938SELECT AddGeometryColumn('ax_gelaendekante','wkb_geometry',:alkis_epsg,'LINESTRING',2); 
    36723939 
    3673 CREATE INDEX ax_gelaendekante_geom_idx ON ax_gelaendekante USING gist (wkb_geometry); 
    3674 CREATE UNIQUE INDEX ax_gelaendekante_gml ON ax_gelaendekante USING btree (gml_id,beginnt); 
    3675  
    3676 COMMENT ON TABLE  ax_gelaendekante        IS 'G e l À n d e k a n t e'; 
     3940CREATE INDEX ax_gelaendekante_geom_idx   ON ax_gelaendekante USING gist  (wkb_geometry); 
     3941CREATE UNIQUE INDEX ax_gelaendekante_gml ON ax_gelaendekante USING btree (gml_id, beginnt); 
     3942CREATE INDEX ax_gelaendekante_itv_idx    ON ax_gelaendekante USING btree (istteilvon); 
     3943 
     3944COMMENT ON TABLE  ax_gelaendekante        IS 'PrimÀres DGM: (REO) "GelÀndekante"'; 
    36773945COMMENT ON COLUMN ax_gelaendekante.gml_id IS 'Identifikator, global eindeutig'; 
    3678  
    36793946 
    36803947--AX_MarkanterGelaendepunkt 
     
    36863953CREATE TABLE ax_besondererhoehenpunkt ( 
    36873954     ogc_fid                  serial NOT NULL, 
    3688      gml_id                   character(16), 
    3689      identifier               character(44), 
     3955     gml_id                   character varying NOT NULL, 
     3956     identifier               character varying, 
    36903957     beginnt                  character(20), 
    36913958     endet                    character(20), 
    3692      advstandardmodell        varchar, 
    3693      sonstigesmodell          varchar, 
    3694      anlass                   varchar, 
     3959     advstandardmodell        character varying[], 
     3960     sonstigesmodell          character varying[], 
     3961     anlass                   character varying, 
    36953962     besonderebedeutung       integer, 
    36963963     CONSTRAINT ax_besondererhoehenpunkt_pk PRIMARY KEY (ogc_fid) 
     
    37003967 
    37013968CREATE INDEX ax_besondererhoehenpunkt_geom_idx ON ax_besondererhoehenpunkt USING gist (wkb_geometry); 
    3702 CREATE UNIQUE INDEX ax_besondererhoehenpunkt_gml ON ax_besondererhoehenpunkt USING btree (gml_id,beginnt); 
    3703  
    3704 COMMENT ON TABLE  ax_besondererhoehenpunkt        IS 'B e s o n d e r e r   H ö h e n - P u n k t'; 
     3969CREATE UNIQUE INDEX ax_besondererhoehenpunkt_gml ON ax_besondererhoehenpunkt USING btree (gml_id, beginnt); 
     3970 
     3971COMMENT ON TABLE  ax_besondererhoehenpunkt        IS 'PrimÀres DGM: (REO) "Besonderer Höhen-Punkt"'; 
    37053972COMMENT ON COLUMN ax_besondererhoehenpunkt.gml_id IS 'Identifikator, global eindeutig'; 
    37063973 
    3707  
    3708  
    3709 --** Objektartengruppe:SekundÀres DGM 
     3974--** Objektartengruppe: SekundÀres DGM 
    37103975--   =================================================================== 
    37113976 
     
    37223987CREATE TABLE ax_klassifizierungnachstrassenrecht ( 
    37233988     ogc_fid                  serial NOT NULL, 
    3724      gml_id                   character(16), 
    3725      identifier               character(44), 
     3989     gml_id                   character varying NOT NULL, 
     3990     identifier               character varying, 
    37263991     beginnt                  character(20), 
    37273992     endet                    character(20), 
    3728      advstandardmodell        varchar, 
    3729      anlass                   varchar, 
     3993     advstandardmodell        character varying[], 
     3994     sonstigesmodell          character varying[], 
     3995     anlass                   character varying, 
    37303996     artderfestlegung         integer, 
    37313997     land                     integer, 
    3732      stelle                   varchar, 
    3733      bezeichnung              varchar, 
     3998     stelle                   character varying, 
     3999     bezeichnung              character varying, 
    37344000     CONSTRAINT ax_klassifizierungnachstrassenrecht_pk PRIMARY KEY (ogc_fid) 
    37354001); 
     
    37384004 
    37394005CREATE INDEX ax_klassifizierungnachstrassenrecht_geom_idx   ON ax_klassifizierungnachstrassenrecht USING gist  (wkb_geometry); 
    3740 CREATE UNIQUE INDEX ax_klassifizierungnachstrassenrecht_gml ON ax_klassifizierungnachstrassenrecht USING btree (gml_id,beginnt); 
    3741 CREATE INDEX ax_klassifizierungnachstrassenrecht_afs ON ax_klassifizierungnachstrassenrecht(land,stelle); 
    3742  
    3743 COMMENT ON TABLE  ax_klassifizierungnachstrassenrecht        IS 'K l a s s i f i z i e r u n g   n a c h   S t r a s s e n r e c h t'; 
     4006CREATE UNIQUE INDEX ax_klassifizierungnachstrassenrecht_gml ON ax_klassifizierungnachstrassenrecht USING btree (gml_id, beginnt); 
     4007CREATE INDEX ax_klassifizierungnachstrassenrecht_afs        ON ax_klassifizierungnachstrassenrecht USING btree (land, stelle); 
     4008 
     4009COMMENT ON TABLE  ax_klassifizierungnachstrassenrecht        IS 'Gesetzliche Festlegungen, Gebietseinheiten, Kataloge / Öffentlich-rechtliche und sonstige Festlegungen: (REO) "Klassifizierung nach Strassenrecht'; 
    37444010COMMENT ON COLUMN ax_klassifizierungnachstrassenrecht.gml_id IS 'Identifikator, global eindeutig'; 
    37454011 
     
    37494015CREATE TABLE ax_klassifizierungnachwasserrecht ( 
    37504016     ogc_fid                  serial NOT NULL, 
    3751      gml_id                   character(16), 
    3752      identifier               character(44), 
     4017     gml_id                   character varying NOT NULL, 
     4018     identifier               character varying, 
    37534019     beginnt                  character(20), 
    37544020     endet                    character(20), 
    3755      advstandardmodell        varchar, 
    3756      anlass                   varchar, 
     4021     advstandardmodell        character varying[], 
     4022     sonstigesmodell          character varying[], 
     4023     anlass                   character varying, 
    37574024     artderfestlegung         integer, 
    37584025     land                     integer, 
    3759      stelle                   varchar, 
     4026     stelle                   character varying, 
    37604027     CONSTRAINT ax_klassifizierungnachwasserrecht_pk PRIMARY KEY (ogc_fid) 
    37614028); 
     
    37644031 
    37654032CREATE INDEX ax_klassifizierungnachwasserrecht_geom_idx ON ax_klassifizierungnachwasserrecht USING gist (wkb_geometry); 
    3766 CREATE INDEX ax_klassifizierungnachwasserrecht_afs ON ax_klassifizierungnachwasserrecht(land,stelle); 
    3767  
    3768 COMMENT ON TABLE  ax_klassifizierungnachwasserrecht        IS 'K l a s s i f i z i e r u n g   n a c h   W a s s e r r e c h t'; 
     4033CREATE INDEX ax_klassifizierungnachwasserrecht_afs      ON ax_klassifizierungnachwasserrecht USING btree (land, stelle); 
     4034 
     4035COMMENT ON TABLE  ax_klassifizierungnachwasserrecht        IS 'Gesetzliche Festlegungen, Gebietseinheiten, Kataloge / Öffentlich-rechtliche und sonstige Festlegungen: (REO) "Klassifizierung nach Wasserrecht"'; 
    37694036COMMENT ON COLUMN ax_klassifizierungnachwasserrecht.gml_id IS 'Identifikator, global eindeutig'; 
    37704037 
     
    37724039-- B a u - ,   R a u m -   o d e r   B o d e n o r d n u n g s r e c h t 
    37734040-- --------------------------------------------------------------------- 
    3774 -- 'Bau-, Raum- oder Bodenordnungsrecht' ist ein fachlich ÃŒbergeordnetes Gebiet von FlÀchen 
    3775 -- mit bodenbezogenen BeschrÀnkungen, Belastungen oder anderen Eigenschaften nach öffentlichen Vorschriften. 
    37764041CREATE TABLE ax_bauraumoderbodenordnungsrecht ( 
    37774042     ogc_fid                  serial NOT NULL, 
    3778      gml_id                   character(16), 
    3779      identifier               character(44), 
     4043     gml_id                   character varying NOT NULL, 
     4044     identifier               character varying, 
    37804045     beginnt                  character(20), 
    37814046     endet                    character(20), 
    3782      advstandardmodell        varchar, 
    3783      anlass                   varchar, 
    3784      art                      varchar, 
    3785      name                     varchar, 
     4047     advstandardmodell        character varying[], 
     4048     sonstigesmodell          character varying[], 
     4049     anlass                   character varying, 
     4050     art                      character varying, 
     4051     name                     character varying, 
    37864052     artderfestlegung         integer, 
    37874053     land                     integer, 
    3788      stelle                   varchar, 
    3789      bezeichnung              varchar, 
     4054     stelle                   character varying, 
     4055     bezeichnung              character varying, 
     4056     datumanordnung           character varying, 
    37904057     CONSTRAINT ax_bauraumoderbodenordnungsrecht_pk PRIMARY KEY (ogc_fid) 
    37914058); 
    3792  
    37934059SELECT AddGeometryColumn('ax_bauraumoderbodenordnungsrecht','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
    37944060 
    3795 CREATE INDEX ax_bauraumoderbodenordnungsrecht_geom_idx ON ax_bauraumoderbodenordnungsrecht USING gist (wkb_geometry); 
    3796 CREATE UNIQUE INDEX ax_bauraumoderbodenordnungsrecht_gml ON ax_bauraumoderbodenordnungsrecht USING btree (gml_id,beginnt); 
    3797  
    3798 COMMENT ON TABLE  ax_bauraumoderbodenordnungsrecht             IS 'REO: Bau-, Raum- oder Bodenordnungsrecht'; 
     4061CREATE INDEX ax_bauraumoderbodenordnungsrecht_geom_idx   ON ax_bauraumoderbodenordnungsrecht USING gist (wkb_geometry); 
     4062CREATE UNIQUE INDEX ax_bauraumoderbodenordnungsrecht_gml ON ax_bauraumoderbodenordnungsrecht USING btree (gml_id, beginnt); 
     4063 
     4064COMMENT ON TABLE  ax_bauraumoderbodenordnungsrecht             IS 'Gesetzliche Festlegungen, Gebietseinheiten, Kataloge / Öffentlich-rechtliche und sonstige Festlegungen: (REO) "Bau-, Raum- oder Bodenordnungsrecht" ist ein fachlich ÃŒbergeordnetes Gebiet von FlÀchen mit bodenbezogenen BeschrÀnkungen, Belastungen oder anderen Eigenschaften nach öffentlichen Vorschriften.'; 
    37994065COMMENT ON COLUMN ax_bauraumoderbodenordnungsrecht.gml_id      IS 'Identifikator, global eindeutig'; 
    38004066COMMENT ON COLUMN ax_bauraumoderbodenordnungsrecht.artderfestlegung IS 'ADF'; 
     
    38074073CREATE TABLE ax_sonstigesrecht ( 
    38084074     ogc_fid                  serial NOT NULL, 
    3809      gml_id                   character(16), 
    3810      identifier               character(44), 
     4075     gml_id                   character varying NOT NULL, 
     4076     identifier               character varying, 
    38114077     beginnt                  character(20), 
    38124078     endet                    character(20), 
    3813      advstandardmodell        varchar, 
    3814      anlass                   varchar, 
     4079     advstandardmodell        character varying[], 
     4080     sonstigesmodell          character varying[], 
     4081     anlass                   character varying, 
    38154082     artderfestlegung         integer, 
    38164083     land                     integer, 
    3817      stelle                   varchar, 
    3818      bezeichnung              varchar, 
    3819      characterstring          varchar, 
    3820      art                      varchar, 
    3821      name                     varchar, 
     4084     stelle                   character varying, 
     4085     bezeichnung              character varying, 
     4086     characterstring          character varying, 
     4087     art                      character varying, 
     4088     name                     character varying, 
    38224089     funktion                 integer, 
    38234090     CONSTRAINT ax_sonstigesrecht_pk PRIMARY KEY (ogc_fid) 
     
    38274094 
    38284095CREATE INDEX ax_sonstigesrecht_geom_idx ON ax_sonstigesrecht USING gist (wkb_geometry); 
    3829 CREATE UNIQUE INDEX ax_sonstigesrecht_gml ON ax_sonstigesrecht USING btree (gml_id,beginnt); 
    3830  
    3831 COMMENT ON TABLE  ax_sonstigesrecht        IS 'S o n s t i g e s   R e c h t'; 
     4096CREATE UNIQUE INDEX ax_sonstigesrecht_gml ON ax_sonstigesrecht USING btree (gml_id, beginnt); 
     4097 
     4098COMMENT ON TABLE  ax_sonstigesrecht        IS 'Gesetzliche Festlegungen, Gebietseinheiten, Kataloge / Öffentlich-rechtliche und sonstige Festlegungen: (REO) "Sonstiges Recht"'; 
    38324099COMMENT ON COLUMN ax_sonstigesrecht.gml_id IS 'Identifikator, global eindeutig'; 
    38334100 
     
    38364103--   =================================================================== 
    38374104 
    3838  
    38394105-- B o d e n s c h À t z u n g 
    38404106-- ---------------------------------------------- 
    38414107CREATE TABLE ax_bodenschaetzung ( 
    38424108     ogc_fid                       serial NOT NULL, 
    3843      gml_id                        character(16), 
    3844      identifier                    character(44), 
     4109     gml_id                        character varying NOT NULL, 
     4110     identifier                    character varying, 
    38454111     beginnt                       character(20), 
    38464112     endet                         character(20), 
    3847      advstandardmodell             varchar, 
    3848      anlass                        varchar, 
     4113     advstandardmodell             character varying[], 
     4114     sonstigesmodell               character varying[], 
     4115     anlass                        character varying, 
     4116     art                           character varying, 
     4117     name                          character varying, 
    38494118     kulturart                     integer, 
    38504119     bodenart                      integer, 
    38514120     zustandsstufeoderbodenstufe   integer, 
    38524121     entstehungsartoderklimastufewasserverhaeltnisse integer[], 
    3853      bodenzahlodergruenlandgrundzahl  integer, 
     4122     bodenzahlodergruenlandgrundzahl integer, 
    38544123     ackerzahlodergruenlandzahl    integer, 
    38554124     sonstigeangaben               integer[], 
     
    38614130 
    38624131CREATE INDEX ax_bodenschaetzung_geom_idx ON ax_bodenschaetzung USING gist (wkb_geometry); 
    3863 CREATE UNIQUE INDEX ax_bodenschaetzung_gml ON ax_bodenschaetzung USING btree (gml_id,beginnt); 
    3864  
    3865 COMMENT ON TABLE  ax_bodenschaetzung              IS '"B o d e n s c h À t z u n g" ist die kleinste Einheit einer bodengeschÀtzten FlÀche nach dem BodenschÀtzungsgesetz, fÃŒr die eine ErtragsfÀhigkeit im Liegenschaftskataster nachzuweisen ist (BodenschÀtzungsflÀche). Ausgenommen sind MusterstÃŒcke, LandesmusterstÃŒcke und VergleichsstÃŒcke der BodenschÀtzung.'; 
     4132CREATE UNIQUE INDEX ax_bodenschaetzung_gml ON ax_bodenschaetzung USING btree (gml_id, beginnt); 
     4133 
     4134COMMENT ON TABLE  ax_bodenschaetzung              IS 'BodenschÀtzung, Bewertung: (REO) "BodenschÀtzung" ist die kleinste Einheit einer bodengeschÀtzten FlÀche nach dem BodenschÀtzungsgesetz, fÃŒr die eine ErtragsfÀhigkeit im Liegenschaftskataster nachzuweisen ist (BodenschÀtzungsflÀche). Ausgenommen sind MusterstÃŒcke, LandesmusterstÃŒcke und VergleichsstÃŒcke der BodenschÀtzung.'; 
    38664135 
    38674136COMMENT ON COLUMN ax_bodenschaetzung.gml_id       IS 'Identifikator, global eindeutig'; 
     
    38804149CREATE TABLE ax_musterlandesmusterundvergleichsstueck ( 
    38814150     ogc_fid                       serial NOT NULL, 
    3882      gml_id                        character(16), 
    3883      identifier                    character(44), 
     4151     gml_id                        character varying NOT NULL, 
     4152     identifier                    character varying, 
    38844153     beginnt                       character(20), 
    38854154     endet                         character(20), 
    3886      advstandardmodell             varchar, 
    3887      anlass                        varchar, 
     4155     advstandardmodell             character varying[], 
     4156     sonstigesmodell               character varying[], 
     4157     anlass                        character varying, 
     4158     art                           character varying, 
     4159     name                          character varying, 
    38884160     merkmal                       integer, 
    38894161     nummer                        integer, 
     
    39014173 
    39024174CREATE INDEX ax_musterlandesmusterundvergleichsstueck_geom_idx   ON ax_musterlandesmusterundvergleichsstueck USING gist (wkb_geometry); 
    3903 CREATE UNIQUE INDEX ax_musterlandesmusterundvergleichsstueck_gml ON ax_musterlandesmusterundvergleichsstueck USING btree (gml_id,beginnt); 
    3904  
    3905 COMMENT ON TABLE  ax_musterlandesmusterundvergleichsstueck           IS '"Muster-, Landesmuster- und VergleichsstÃŒck" ist eine besondere bodengeschÀtzte FlÀche nach dem BodenschÀtzungsgesetz, fÃŒr die eine ErtragsfÀhigkeit im Liegenschaftskataster nachzuweisen ist.'; 
     4175CREATE UNIQUE INDEX ax_musterlandesmusterundvergleichsstueck_gml ON ax_musterlandesmusterundvergleichsstueck USING btree (gml_id, beginnt); 
     4176 
     4177COMMENT ON TABLE  ax_musterlandesmusterundvergleichsstueck           IS 'BodenschÀtzung, Bewertung: (REO) "Muster-, Landesmuster- und VergleichsstÃŒck" ist eine besondere bodengeschÀtzte FlÀche nach dem BodenschÀtzungsgesetz, fÃŒr die eine ErtragsfÀhigkeit im Liegenschaftskataster nachzuweisen ist.'; 
    39064178COMMENT ON COLUMN ax_musterlandesmusterundvergleichsstueck.gml_id    IS 'Identifikator, global eindeutig'; 
    39074179 
     
    39194191--   =================================================================== 
    39204192 
    3921  
    39224193-- B u n d e s l a n d 
    39234194-- ---------------------------------------------- 
    39244195CREATE TABLE ax_bundesland ( 
    39254196     ogc_fid             serial NOT NULL, 
    3926      gml_id              character(16), 
    3927      identifier          character(44), 
    3928      beginnt             character(20), 
    3929      endet               character(20), 
    3930      advstandardmodell   varchar, 
    3931      anlass              varchar, 
     4197     gml_id              character varying NOT NULL, 
     4198     identifier          character varying, 
     4199     beginnt             character(20), 
     4200     endet               character(20), 
     4201     advstandardmodell   character varying[], 
     4202     sonstigesmodell     character varying[], 
     4203     anlass              character varying, 
    39324204     schluesselgesamt    integer, 
    3933      bezeichnung         varchar, 
     4205     bezeichnung         character varying, 
    39344206     land                integer, 
    3935      stelle              varchar, 
     4207     stelle              character varying, 
    39364208     CONSTRAINT ax_bundesland_pk PRIMARY KEY (ogc_fid) 
    39374209); 
     
    39394211SELECT AddGeometryColumn('ax_bundesland','dummy',:alkis_epsg,'POINT',2); 
    39404212 
    3941 CREATE UNIQUE INDEX ax_bundesland_gml ON ax_bundesland USING btree (gml_id,beginnt); 
    3942  
    3943 COMMENT ON TABLE  ax_bundesland        IS 'B u n d e s l a n d'; 
     4213CREATE UNIQUE INDEX ax_bundesland_gml ON ax_bundesland USING btree (gml_id, beginnt); 
     4214 
     4215COMMENT ON TABLE  ax_bundesland        IS 'Kataloge: "Bundesland"'; 
    39444216COMMENT ON COLUMN ax_bundesland.gml_id IS 'Identifikator, global eindeutig'; 
    39454217 
     
    39494221CREATE TABLE ax_regierungsbezirk ( 
    39504222     ogc_fid                  serial NOT NULL, 
    3951      gml_id                   character(16), 
    3952      identifier               character(44), 
     4223     gml_id                   character varying NOT NULL, 
     4224     identifier               character varying, 
    39534225     beginnt                  character(20), 
    39544226     endet                    character(20), 
    3955      advstandardmodell        varchar, 
    3956      anlass                   varchar, 
     4227     advstandardmodell        character varying[], 
     4228     sonstigesmodell          character varying[], 
     4229     anlass                   character varying, 
    39574230     schluesselgesamt         integer, 
    3958      bezeichnung              varchar, 
     4231     bezeichnung              character varying, 
    39594232     land                     integer, 
    39604233     regierungsbezirk         integer, 
     
    39644237SELECT AddGeometryColumn('ax_regierungsbezirk','dummy',:alkis_epsg,'POINT',2); 
    39654238 
    3966 -- Verbindungstabellen indizieren 
    3967 CREATE UNIQUE INDEX ax_regierungsbezirk_gml ON ax_regierungsbezirk USING btree (gml_id,beginnt); 
    3968  
    3969 COMMENT ON TABLE  ax_regierungsbezirk        IS 'R e g i e r u n g s b e z i r k'; 
     4239CREATE UNIQUE INDEX ax_regierungsbezirk_gml ON ax_regierungsbezirk USING btree (gml_id, beginnt); 
     4240 
     4241COMMENT ON TABLE  ax_regierungsbezirk        IS 'Kataloge: "Regierungsbezirk"'; 
    39704242COMMENT ON COLUMN ax_regierungsbezirk.gml_id IS 'Identifikator, global eindeutig'; 
    39714243 
    3972  
    3973 --AX_KreisRegion GeÀndert (Revisionsnummer: 1658) 
    39744244 
    39754245-- K r e i s   /   R e g i o n 
    39764246-- --------------------------- 
     4247-- AX_KreisRegion GeÀndert (Revisionsnummer: 1658) 
    39774248CREATE TABLE ax_kreisregion ( 
    39784249     ogc_fid                  serial NOT NULL, 
    3979      gml_id                   character(16), 
    3980      identifier               character(44), 
     4250     gml_id                   character varying NOT NULL, 
     4251     identifier               character varying, 
    39814252     beginnt                  character(20), 
    39824253     endet                    character(20), 
    3983      advstandardmodell        varchar, 
    3984      anlass                   varchar, 
     4254     advstandardmodell        character varying[], 
     4255     sonstigesmodell          character varying[], 
     4256     anlass                   character varying, 
    39854257     schluesselgesamt         integer, 
    3986      bezeichnung              varchar, 
     4258     bezeichnung              character varying, 
    39874259     land                     integer, 
    39884260     regierungsbezirk         integer, 
     
    39934265SELECT AddGeometryColumn('ax_kreisregion','dummy',:alkis_epsg,'POINT',2); 
    39944266 
    3995 CREATE UNIQUE INDEX ax_kreisregion_gml ON ax_kreisregion USING btree (gml_id,beginnt); 
    3996  
    3997 COMMENT ON TABLE  ax_kreisregion        IS 'K r e i s  /  R e g i o n'; 
     4267CREATE UNIQUE INDEX ax_kreisregion_gml ON ax_kreisregion USING btree (gml_id, beginnt); 
     4268 
     4269COMMENT ON TABLE  ax_kreisregion        IS 'Kataloge: "Kreis / Region"'; 
    39984270COMMENT ON COLUMN ax_kreisregion.gml_id IS 'Identifikator, global eindeutig'; 
    39994271 
     
    40034275CREATE TABLE ax_gemeinde ( 
    40044276     ogc_fid             serial NOT NULL, 
    4005      gml_id              character(16), 
    4006      identifier          character(44), 
    4007      beginnt             character(20), 
    4008      endet               character(20), 
    4009      advstandardmodell   varchar, 
    4010      anlass              varchar, 
     4277     gml_id              character varying NOT NULL, 
     4278     identifier          character varying, 
     4279     beginnt             character(20), 
     4280     endet               character(20), 
     4281     advstandardmodell   character varying[], 
     4282     sonstigesmodell     character varying[], 
     4283     anlass              character varying, 
    40114284     schluesselgesamt    integer, 
    4012      bezeichnung         varchar, 
     4285     bezeichnung         character varying, 
    40134286     land                integer, 
    40144287     regierungsbezirk    integer, 
    40154288     kreis               integer, 
    40164289     gemeinde            integer, 
     4290     stelle              integer, 
     4291     -- Beziehungen: 
     4292     istamtsbezirkvon   character varying[], --> ax_dienststelle  
    40174293     CONSTRAINT ax_gemeinde_pk PRIMARY KEY (ogc_fid) 
    40184294); 
     
    40204296SELECT AddGeometryColumn('ax_gemeinde','dummy',:alkis_epsg,'POINT',2); 
    40214297 
    4022 -- Index fÃŒr alkis_beziehungen 
    4023 CREATE UNIQUE INDEX ax_gemeinde_gml ON ax_gemeinde USING btree (gml_id,beginnt); 
    4024  
    4025 COMMENT ON TABLE  ax_gemeinde        IS 'G e m e i n d e'; 
     4298CREATE UNIQUE INDEX ax_gemeinde_gml ON ax_gemeinde USING btree (gml_id, beginnt); 
     4299CREATE INDEX ax_gemeinde_iabv       ON ax_gemeinde USING gin   (istamtsbezirkvon); 
     4300 
     4301COMMENT ON TABLE  ax_gemeinde        IS 'Kataloge: "Gemeinde"'; 
    40264302COMMENT ON COLUMN ax_gemeinde.gml_id IS 'Identifikator, global eindeutig'; 
     4303 
     4304COMMENT ON COLUMN ax_gemeinde.istamtsbezirkvon IS '-> Beziehung zu ax_dienststelle (0..*): ''Gemeinde'' ist Verwaltungsbezirk einer Dienststelle.'; 
    40274305 
    40284306 
     
    40314309CREATE TABLE ax_gemeindeteil ( 
    40324310     ogc_fid             serial NOT NULL, 
    4033      gml_id              character(16), 
    4034      identifier          character(44), 
    4035      beginnt             character(20), 
    4036      endet               character(20), 
    4037      advstandardmodell   varchar, 
    4038      anlass              varchar, 
     4311     gml_id              character varying NOT NULL, 
     4312     identifier          character varying, 
     4313     beginnt             character(20), 
     4314     endet               character(20), 
     4315     advstandardmodell   character varying[], 
     4316     sonstigesmodell     character varying[], 
     4317     anlass              character varying, 
    40394318     schluesselgesamt    double precision, 
    4040      bezeichnung         varchar, 
     4319     bezeichnung         character varying, 
    40414320     administrativefunktion integer, 
    40424321     land                integer, 
     
    40504329SELECT AddGeometryColumn('ax_gemeindeteil','dummy',:alkis_epsg,'POINT',2); 
    40514330 
    4052 -- Index fÃŒr alkis_beziehungen 
    4053 CREATE UNIQUE INDEX ax_gemeindeteil_gml ON ax_gemeindeteil USING btree (gml_id,beginnt); 
    4054  
    4055 COMMENT ON TABLE  ax_gemeindeteil        IS 'G e m e i n d e - T e i l'; 
     4331CREATE UNIQUE INDEX ax_gemeindeteil_gml ON ax_gemeindeteil USING btree (gml_id, beginnt); 
     4332 
     4333COMMENT ON TABLE  ax_gemeindeteil        IS 'Kataloge: "Gemeinde-Teil"'; 
    40564334COMMENT ON COLUMN ax_gemeindeteil.gml_id IS 'Identifikator, global eindeutig'; 
    40574335 
     
    40624340CREATE TABLE ax_gemarkung ( 
    40634341     ogc_fid             serial NOT NULL, 
    4064      gml_id              character(16), 
    4065      identifier          character(44), 
    4066      beginnt             character(20), 
    4067      endet               character(20), 
    4068      advstandardmodell   varchar[], 
    4069      anlass              varchar, 
     4342     gml_id              character varying NOT NULL, 
     4343     identifier          character varying, 
     4344     beginnt             character(20), 
     4345     endet               character(20), 
     4346     advstandardmodell   character varying[], 
     4347     sonstigesmodell     character varying[], 
     4348     anlass              character varying, 
    40704349     schluesselgesamt    integer, 
    4071      bezeichnung         varchar, 
     4350     bezeichnung         character varying, 
    40724351     land                integer, 
    40734352     gemarkungsnummer    integer, 
     
    40784357SELECT AddGeometryColumn('ax_gemarkung','dummy',:alkis_epsg,'POINT',2); 
    40794358 
    4080 CREATE UNIQUE INDEX ax_gemarkung_gml ON ax_gemarkung USING btree (gml_id,beginnt);         -- Index fÃŒr alkis_beziehungen 
     4359CREATE UNIQUE INDEX ax_gemarkung_gml ON ax_gemarkung USING btree (gml_id, beginnt);         -- Index fÃŒr alkis_beziehungen 
    40814360CREATE INDEX ax_gemarkung_nr         ON ax_gemarkung USING btree (land, gemarkungsnummer); -- Such-Index, Verweis aus ax_Flurstueck 
    40824361 
    4083 COMMENT ON TABLE  ax_gemarkung        IS 'G e m a r k u n g'; 
     4362COMMENT ON TABLE  ax_gemarkung        IS 'Kataloge: "Gemarkung"'; 
    40844363COMMENT ON COLUMN ax_gemarkung.gml_id IS 'Identifikator, global eindeutig'; 
    40854364 
     
    40874366-- G e m a r k u n g s t e i l   /   F l u r 
    40884367-- ---------------------------------------------- 
    4089 -- Schluesseltabelle: Geometrie entbehrlich 
    40904368CREATE TABLE ax_gemarkungsteilflur ( 
    40914369     ogc_fid             serial NOT NULL, 
    4092      gml_id              character(16), 
    4093      identifier          character(44), 
    4094      beginnt             character(20), 
    4095      endet               character(20), 
    4096      advstandardmodell   varchar, 
    4097      anlass              varchar, 
     4370     gml_id              character varying NOT NULL, 
     4371     identifier          character varying, 
     4372     beginnt             character(20), 
     4373     endet               character(20), 
     4374     advstandardmodell   character varying[], 
     4375     sonstigesmodell     character varying[], 
     4376     anlass              character varying, 
    40984377     schluesselgesamt    integer, 
    4099      bezeichnung         varchar, 
     4378     bezeichnung         character varying, 
    41004379     land                integer, 
    41014380     gemarkung           integer, 
     
    41064385SELECT AddGeometryColumn('ax_gemarkungsteilflur','dummy',:alkis_epsg,'POINT',2); 
    41074386 
    4108 -- Index fÃŒr alkis_beziehungen 
    4109 CREATE UNIQUE INDEX ax_gemarkungsteilflur_gml ON ax_gemarkungsteilflur USING btree (gml_id,beginnt); 
    4110  
    4111 COMMENT ON TABLE  ax_gemarkungsteilflur        IS 'G e m a r k u n g s t e i l   /   F l u r'; 
     4387CREATE UNIQUE INDEX ax_gemarkungsteilflur_gml ON ax_gemarkungsteilflur USING btree (gml_id, beginnt); 
     4388 
     4389COMMENT ON TABLE  ax_gemarkungsteilflur        IS 'Kataloge: "Gemarkungsteil / Flur"'; 
    41124390COMMENT ON COLUMN ax_gemarkungsteilflur.gml_id IS 'Identifikator, global eindeutig'; 
    41134391 
     
    41174395CREATE TABLE ax_buchungsblattbezirk ( 
    41184396     ogc_fid             serial NOT NULL, 
    4119      gml_id              character(16), 
    4120      identifier          character(44), 
    4121      beginnt             character(20), 
    4122      endet               character(20), 
    4123      advstandardmodell   varchar, 
    4124      anlass              varchar, 
     4397     gml_id              character varying NOT NULL, 
     4398     identifier          character varying, 
     4399     beginnt             character(20), 
     4400     endet               character(20), 
     4401     advstandardmodell   character varying[], 
     4402     sonstigesmodell     character varying[], 
     4403     anlass              character varying, 
    41254404     schluesselgesamt    integer, 
    4126      bezeichnung         varchar, 
     4405     bezeichnung         character varying, 
    41274406     land                integer, 
    41284407     bezirk              integer, 
    4129      stelle              varchar, 
     4408     stelle              character varying, 
     4409     -- Beziehungen: 
     4410     gehoertzu          character varying, --> ax_dienststelle 
    41304411     CONSTRAINT ax_buchungsblattbezirk_pk PRIMARY KEY (ogc_fid) 
    41314412); 
    4132  
    41334413SELECT AddGeometryColumn('ax_buchungsblattbezirk','dummy',:alkis_epsg,'POINT',2); 
    41344414 
    4135 CREATE UNIQUE INDEX ax_buchungsblattbezirk_gml ON ax_buchungsblattbezirk USING btree (gml_id,beginnt); 
    4136  
    4137 -- Such-Index auf Land + Bezirk 
    4138 -- Der Verweis von ax_buchungsblatt hat keine alkis_beziehung. 
     4415CREATE UNIQUE INDEX ax_buchungsblattbezirk_gml ON ax_buchungsblattbezirk USING btree (gml_id, beginnt); 
     4416CREATE INDEX ax_buchungsblattbez_ghz  ON ax_buchungsblattbezirk  USING btree  (gehoertzu); 
     4417 
    41394418CREATE INDEX ax_buchungsblattbez_key ON ax_buchungsblattbezirk USING btree (land, bezirk); 
    41404419 
    4141 COMMENT ON TABLE  ax_buchungsblattbezirk        IS 'Buchungsblatt- B e z i r k'; 
     4420COMMENT ON TABLE  ax_buchungsblattbezirk        IS 'Kataloge: "Buchungsblatt-Bezirk"'; 
    41424421COMMENT ON COLUMN ax_buchungsblattbezirk.gml_id IS 'Identifikator, global eindeutig'; 
    41434422 
     4423COMMENT ON COLUMN ax_buchungsblattbezirk.gehoertzu IS '-> Beziehung zu ax_dienststelle (0..1): Buchungsblattbezirk" wird von einem Grundbuchamt verwaltet, das im Katalog der Dienststellen gefÃŒhrt wird. Die Relation wird nur gebildet, wenn die Dienststelle ein Grundbuchamt ist.'; 
     4424 
    41444425 
    41454426-- D i e n s t s t e l l e 
    41464427-- ---------------------------------------------- 
    4147 -- NREO, nur Schluesseltabelle: Geometrie entbehrlich 
    41484428CREATE TABLE ax_dienststelle ( 
    41494429     ogc_fid             serial NOT NULL, 
    4150      gml_id              character(16), 
    4151      identifier          character(44), 
    4152      beginnt             character(20), 
    4153      endet               character(20), 
    4154      advstandardmodell   varchar, 
    4155      sonstigesmodell     varchar, 
    4156      anlass              varchar, 
    4157      schluesselgesamt    varchar, 
    4158      bezeichnung         varchar, 
     4430     gml_id              character varying NOT NULL, 
     4431     identifier          character varying, 
     4432     beginnt             character(20), 
     4433     endet               character(20), 
     4434     advstandardmodell   character varying[], 
     4435     sonstigesmodell     character varying[], 
     4436     anlass              character varying, 
     4437     schluesselgesamt    character varying, 
     4438     bezeichnung         character varying, 
    41594439     land                integer, 
    4160      stelle              varchar, 
     4440     stelle              character varying, 
    41614441     stellenart          integer, 
     4442     -- Beziehungen: 
     4443     hat                 character varying, --> ax_anschrift 
    41624444     CONSTRAINT ax_dienststelle_pk PRIMARY KEY (ogc_fid) 
    41634445); 
     
    41654447SELECT AddGeometryColumn('ax_dienststelle','dummy',:alkis_epsg,'POINT',2); 
    41664448 
    4167 -- Index fÃŒr alkis_beziehungen 
    4168 CREATE UNIQUE INDEX ax_dienststelle_gml ON ax_dienststelle USING btree (gml_id,beginnt); 
    4169  
    4170 COMMENT ON TABLE  ax_dienststelle        IS 'D i e n s t s t e l l e'; 
     4449CREATE UNIQUE INDEX ax_dienststelle_gml ON ax_dienststelle USING btree (gml_id, beginnt); 
     4450 
     4451COMMENT ON TABLE  ax_dienststelle        IS 'Kataloge: "Dienststelle"'; 
    41714452COMMENT ON COLUMN ax_dienststelle.gml_id IS 'Identifikator, global eindeutig'; 
     4453 
     4454COMMENT ON COLUMN ax_dienststelle.hat    IS '-> Beziehung zu ax_anschrift (0..1): ''Dienststelle'' hat eine Anschrift.'; 
    41724455 
    41734456 
     
    41764459CREATE TABLE ax_lagebezeichnungkatalogeintrag ( 
    41774460     ogc_fid             serial NOT NULL, 
    4178      gml_id              character(16), 
    4179      identifier          character(44), 
    4180      beginnt             character(20), 
    4181      endet               character(20), 
    4182      advstandardmodell   varchar, 
    4183      anlass              varchar, 
    4184      schluesselgesamt    varchar, 
    4185      bezeichnung         varchar, 
     4461     gml_id              character varying NOT NULL, 
     4462     identifier          character varying, 
     4463     beginnt             character(20), 
     4464     endet               character(20), 
     4465     advstandardmodell   character varying[], 
     4466     sonstigesmodell     character varying[], 
     4467     anlass              character varying, 
     4468     schluesselgesamt    character varying, 
     4469     bezeichnung         character varying, 
    41864470     land                integer, 
    41874471     regierungsbezirk    integer, 
    41884472     kreis               integer, 
    41894473     gemeinde            integer, 
    4190      lage                varchar, 
     4474     lage                character varying, -- StraßenschlÃŒssel 
    41914475     CONSTRAINT ax_lagebezeichnungkatalogeintrag_pk PRIMARY KEY (ogc_fid) 
    41924476); 
     
    41944478SELECT AddGeometryColumn('ax_lagebezeichnungkatalogeintrag','dummy',:alkis_epsg,'POINT',2); 
    41954479 
    4196 CREATE UNIQUE INDEX ax_lagebezeichnungkatalogeintrag_gml ON ax_lagebezeichnungkatalogeintrag USING btree (gml_id,beginnt); 
     4480CREATE UNIQUE INDEX ax_lagebezeichnungkatalogeintrag_gml ON ax_lagebezeichnungkatalogeintrag USING btree (gml_id, beginnt); 
    41974481 
    41984482-- NRW: Nummerierung Strassenschluessel innerhalb einer Gemeinde 
     
    42044488CREATE INDEX ax_lagebezeichnungkatalogeintrag_bez  ON ax_lagebezeichnungkatalogeintrag USING btree (bezeichnung); 
    42054489 
    4206 COMMENT ON TABLE  ax_lagebezeichnungkatalogeintrag              IS 'Straßentabelle'; 
     4490COMMENT ON TABLE  ax_lagebezeichnungkatalogeintrag              IS 'Kataloge: "Lagebezeichnung-Katalogeintrag" ist die zentrale Straßentabelle'; 
    42074491COMMENT ON COLUMN ax_lagebezeichnungkatalogeintrag.gml_id       IS 'Identifikator, global eindeutig'; 
    42084492COMMENT ON COLUMN ax_lagebezeichnungkatalogeintrag.lage         IS 'StraßenschlÃŒssel'; 
     
    42104494 
    42114495 
     4496-- V e r w a l t u n g s g e m e i n s c h a f t 
     4497-- ---------------------------------------------  Objektartengruppe: Kataloge 
     4498CREATE TABLE ax_verwaltungsgemeinschaft ( 
     4499     ogc_fid             serial NOT NULL, 
     4500     gml_id              character varying NOT NULL, 
     4501     identifier          character varying, 
     4502     beginnt             character(20), 
     4503     endet               character(20), 
     4504     advstandardmodell   character varying[], 
     4505     sonstigesmodell     character varying[], 
     4506     anlass              character varying, 
     4507     schluesselgesamt    integer, 
     4508     bezeichnung         character varying, 
     4509     bezeichnungart      integer, 
     4510     land                integer, 
     4511     regierungsbezirk    integer, 
     4512     kreis               integer, 
     4513     verwaltungsgemeinschaft  integer, 
     4514     CONSTRAINT ax_verwaltungsgemeinschaft_pk PRIMARY KEY (ogc_fid) 
     4515); 
     4516 
     4517SELECT AddGeometryColumn('ax_verwaltungsgemeinschaft','dummy',:alkis_epsg,'POINT',2); 
     4518 
     4519COMMENT ON TABLE  ax_verwaltungsgemeinschaft  IS 'Kataloge: "Verwaltungsgemeinschaft" ist ..'; 
     4520 
     4521 
    42124522--** Objektartengruppe: Geographische Gebietseinheiten 
    42134523--   =================================================================== 
     
    42174527CREATE TABLE ax_kleinraeumigerlandschaftsteil ( 
    42184528     ogc_fid             serial NOT NULL, 
    4219      gml_id              character(16), 
    4220      identifier          character(44), 
    4221      beginnt             character(20), 
    4222      endet               character(20), 
    4223      advstandardmodell   varchar, 
    4224      sonstigesmodell     varchar[], 
    4225      anlass              varchar, 
     4529     gml_id              character varying NOT NULL, 
     4530     identifier          character varying, 
     4531     beginnt             character(20), 
     4532     endet               character(20), 
     4533     advstandardmodell   character varying[], 
     4534     sonstigesmodell     character varying[], 
     4535     anlass              character varying, 
    42264536     landschaftstyp      integer, 
    4227      name                varchar 
     4537     name                character varying, 
     4538     CONSTRAINT ax_kleinraeumigerlandschaftsteil_pk PRIMARY KEY (ogc_fid) 
    42284539); 
    42294540 
     
    42314542 
    42324543CREATE INDEX ax_kleinraeumigerlandschaftsteil_geom_idx   ON ax_kleinraeumigerlandschaftsteil USING gist (wkb_geometry); 
    4233 CREATE UNIQUE INDEX ax_kleinraeumigerlandschaftsteil_gml ON ax_kleinraeumigerlandschaftsteil USING btree (gml_id,beginnt); 
    4234  
    4235 COMMENT ON TABLE  ax_kleinraeumigerlandschaftsteil        IS 'k l e i n r À u m i g e r   L a n d s c h a f t s t e i l'; 
     4544CREATE UNIQUE INDEX ax_kleinraeumigerlandschaftsteil_gml ON ax_kleinraeumigerlandschaftsteil USING btree (gml_id, beginnt); 
     4545 
     4546COMMENT ON TABLE  ax_kleinraeumigerlandschaftsteil        IS 'Geographische Gebietseinheiten: (REO) "kleinrÀumiger Landschaftsteil"'; 
    42364547COMMENT ON COLUMN ax_kleinraeumigerlandschaftsteil.gml_id IS 'Identifikator, global eindeutig'; 
    42374548 
     
    42414552CREATE TABLE ax_wohnplatz ( 
    42424553     ogc_fid             serial NOT NULL, 
    4243      gml_id              character(16), 
    4244      identifier          character(44), 
    4245      beginnt             character(20), 
    4246      endet               character(20), 
    4247      advstandardmodell   varchar, 
    4248      anlass              varchar, 
    4249      name                varchar, 
     4554     gml_id              character varying NOT NULL, 
     4555     identifier          character varying, 
     4556     beginnt             character(20), 
     4557     endet               character(20), 
     4558     advstandardmodell   character varying[], 
     4559     sonstigesmodell     character varying[], 
     4560     anlass              character varying, 
     4561     name                character varying, 
    42504562     CONSTRAINT ax_wohnplatz_pk PRIMARY KEY (ogc_fid) 
    42514563); 
    4252  
    42534564SELECT AddGeometryColumn('ax_wohnplatz','wkb_geometry',:alkis_epsg,'POINT',2); 
    42544565 
    42554566CREATE INDEX ax_wohnplatz_geom_idx   ON ax_wohnplatz USING gist (wkb_geometry); 
    4256 CREATE UNIQUE INDEX ax_wohnplatz_gml ON ax_wohnplatz USING btree (gml_id,beginnt); 
    4257  
    4258 COMMENT ON TABLE  ax_wohnplatz        IS 'W o h n p l a t z'; 
     4567CREATE UNIQUE INDEX ax_wohnplatz_gml ON ax_wohnplatz USING btree (gml_id, beginnt); 
     4568 
     4569COMMENT ON TABLE  ax_wohnplatz        IS 'REO Geographische Gebietseinheiten: "Wohnplatz" ..'; 
    42594570COMMENT ON COLUMN ax_wohnplatz.gml_id IS 'Identifikator, global eindeutig'; 
    42604571 
     
    42634574--   =================================================================== 
    42644575 
    4265 -- ax_baublock 
     4576-- B a u b l o c k 
     4577-- ---------------------------------------------- 
     4578CREATE TABLE ax_baublock ( 
     4579     ogc_fid             serial NOT NULL, 
     4580     gml_id              character varying NOT NULL, 
     4581     identifier          character varying, 
     4582     beginnt             character(20), 
     4583     endet               character(20), 
     4584     advstandardmodell   character varying[], 
     4585     sonstigesmodell     character varying[], 
     4586     anlass              character varying, 
     4587     baublockbezeichnung integer, 
     4588     CONSTRAINT ax_baublock_pk PRIMARY KEY (ogc_fid) 
     4589); 
     4590 
     4591SELECT AddGeometryColumn('ax_baublock','wkb_geometry',:alkis_epsg,'GEOMETRY',2); 
     4592 
     4593CREATE INDEX ax_baublock_geom_idx   ON ax_baublock USING gist (wkb_geometry); 
     4594CREATE UNIQUE INDEX ax_baublock_gml ON ax_baublock USING btree (gml_id, beginnt); 
     4595 
     4596COMMENT ON TABLE  ax_baublock        IS 'Administrative Gebietseinheiten: (REO) "Blaubock" war eine Unterhaltungsshow des Hessischen Rundfunks im Deutschen Fernsehen, von der zwischen 1957 und 1987 insgesamt 208 Folgen produziert wurden. Der Sendetitel war "Zum Blauen Bock".'; 
     4597 
     4598COMMENT ON COLUMN ax_baublock.gml_id IS 'Identifikator, global eindeutig'; 
    42664599 
    42674600 
    42684601-- w i r t s c h a f t l i c h e   E i n h e i t 
    42694602-- --------------------------------------------- 
    4270 -- neu 2013-04-15 
     4603-- fehlt in norBIT/QGIS-Version? 
    42714604CREATE TABLE ax_wirtschaftlicheeinheit ( 
    4272   ogc_fid           serial NOT NULL, 
    4273   gml_id            character varying(16), 
    4274   identifier        character varying(28), 
    4275   beginnt           character varying(20), 
    4276   advstandardmodell character varying(4), 
    4277   sonstigesmodell   character varying[], 
    4278   anlass            integer, 
    4279   CONSTRAINT        ax_wirtschaftlicheeinheit_pk PRIMARY KEY (ogc_fid) 
     4605     ogc_fid           serial NOT NULL, 
     4606     gml_id            character varying(16), 
     4607     identifier        character varying(28), 
     4608     beginnt           character varying(20), 
     4609     advstandardmodell character varying[], 
     4610     sonstigesmodell   character varying[], 
     4611     anlass            integer, 
     4612     CONSTRAINT        ax_wirtschaftlicheeinheit_pk PRIMARY KEY (ogc_fid) 
    42804613); 
    42814614 
    42824615SELECT AddGeometryColumn('ax_wirtschaftlicheeinheit','dummy',:alkis_epsg,'POINT',2); 
    42834616 
    4284 COMMENT ON TABLE  ax_wirtschaftlicheeinheit  IS 'w i r t s c h a f t l i c h e   E i n h e i t'; 
     4617COMMENT ON TABLE  ax_wirtschaftlicheeinheit  IS 'Administrative Gebietseinheiten: (REO) "Wirtschaftliche Einheit" ..'; 
    42854618 
    42864619 
     
    42894622CREATE TABLE ax_kommunalesgebiet ( 
    42904623     ogc_fid             serial NOT NULL, 
    4291      gml_id              character(16), 
    4292      identifier          character(44), 
    4293      beginnt             character(20), 
    4294      endet               character(20), 
    4295      advstandardmodell   varchar, 
    4296      anlass              varchar, 
    4297      schluesselgesamt    varchar, 
     4624     gml_id              character varying NOT NULL, 
     4625     identifier          character varying, 
     4626     beginnt             character(20), 
     4627     endet               character(20), 
     4628     advstandardmodell   character varying[], 
     4629     sonstigesmodell     character varying[], 
     4630     anlass              character varying, 
     4631     schluesselgesamt    character varying, 
    42984632     land                integer, 
    42994633     regierungsbezirk    integer, 
     
    43074641 
    43084642CREATE INDEX ax_kommunalesgebiet_geom_idx   ON ax_kommunalesgebiet USING gist (wkb_geometry); 
    4309 CREATE UNIQUE INDEX ax_kommunalesgebiet_gml ON ax_kommunalesgebiet USING btree (gml_id,beginnt); 
    4310  
    4311 COMMENT ON TABLE  ax_kommunalesgebiet        IS 'K o m m u n a l e s   G e b i e t'; 
     4643CREATE UNIQUE INDEX ax_kommunalesgebiet_gml ON ax_kommunalesgebiet USING btree (gml_id, beginnt); 
     4644 
     4645COMMENT ON TABLE  ax_kommunalesgebiet        IS 'Administrative Gebietseinheiten: (REO) "Kommunales Gebiet"'; 
    43124646COMMENT ON COLUMN ax_kommunalesgebiet.gml_id IS 'Identifikator, global eindeutig'; 
    43134647 
     
    43234657CREATE TABLE ax_vertretung ( 
    43244658     ogc_fid             serial NOT NULL, 
    4325      gml_id              character(16), 
    4326      identifier          character(44), 
    4327      beginnt             character(20), 
    4328      endet               character(20), 
    4329      advstandardmodell   varchar(4), 
    4330      anlass              varchar, 
    4331      CONSTRAINT ax_vertretung_pk PRIMARY KEY (ogc_fid) 
    4332 ); 
    4333  
     4659     gml_id              character varying NOT NULL, 
     4660     identifier          character varying, 
     4661     beginnt             character(20), 
     4662     endet               character(20), 
     4663     advstandardmodell   character varying[], 
     4664     sonstigesmodell     character varying[], 
     4665     anlass              character varying, 
     4666     -- Beziehungen: 
     4667     vertritt            character varying[],  -- <- ax_person 
     4668     haengtan            character varying,    --> ax_person 
     4669     beziehtsichauf      character varying[],  --> ax_flurstueck 
     4670      CONSTRAINT ax_vertretung_pk PRIMARY KEY (ogc_fid) 
     4671); 
    43344672SELECT AddGeometryColumn('ax_vertretung','dummy',:alkis_epsg,'POINT',2); 
    43354673 
    4336 COMMENT ON TABLE  ax_vertretung IS 'V e r t r e t u n g'; 
    4337  
    4338  
    4339 -- V e r w a l t u n g s g e m e i n s c h a f t 
    4340 -- ---------------------------------------------  Objektartengruppe: Kataloge 
    4341 CREATE TABLE ax_verwaltungsgemeinschaft ( 
    4342      ogc_fid             serial NOT NULL, 
    4343      gml_id              character(16), 
    4344      identifier          character(44), 
    4345      beginnt             character(20), 
    4346      endet               character(20), 
    4347      advstandardmodell   varchar(4), 
    4348      anlass              varchar, 
    4349      schluesselgesamt    integer, 
    4350      bezeichnung         varchar, 
    4351      bezeichnungart      integer, 
    4352      land                integer, 
    4353      regierungsbezirk    integer, 
    4354      kreis               integer, 
    4355      verwaltungsgemeinschaft  integer, 
    4356      CONSTRAINT ax_verwaltungsgemeinschaft_pk PRIMARY KEY (ogc_fid) 
    4357 ); 
    4358  
    4359 SELECT AddGeometryColumn('ax_verwaltungsgemeinschaft','dummy',:alkis_epsg,'POINT',2); 
    4360  
    4361 COMMENT ON TABLE  ax_verwaltungsgemeinschaft  IS 'V e r w a l t u n g s g e m e i n s c h a f t'; 
     4674COMMENT ON TABLE  ax_vertretung IS 'Personen- und Bestandsdaten: (NREO) "Vertretung" ist ..'; 
     4675 
     4676COMMENT ON COLUMN ax_vertretung.vertritt       IS '<- Beziehung zu ax_person (1..*): Die Relation ''Vertretung'' vertritt ''Person'' sagt aus, welche Person durch die Vertretung vertreten wird. 
     4677Es handelt sich um die inverse Relationsrichtung.'; 
     4678COMMENT ON COLUMN ax_vertretung.haengtan       IS '-> Beziehung zu ax_person (1): Die Relation ''Vertretung'' hÀngt an ''Person'' sagt aus, welche Person die Vertretung wahrnimmt.'; 
     4679COMMENT ON COLUMN ax_vertretung.beziehtsichauf IS '-> Beziehung zu ax_flurstueck (0..*): Die Relation ''Vertretung'' bezieht sich auf ''FlurstÃŒck'' sagt aus, fÃŒr welche FlurstÃŒcke die Vertretung wahrgenommen wird.'; 
    43624680 
    43634681 
     
    43664684CREATE TABLE ax_verwaltung ( 
    43674685     ogc_fid             serial NOT NULL, 
    4368      gml_id              character(16), 
    4369      identifier          character(44), 
    4370      beginnt             character(20), 
    4371      endet               character(20), 
    4372      advstandardmodell   varchar(4), 
    4373      anlass              varchar, 
     4686     gml_id              character varying NOT NULL, 
     4687     identifier          character varying, 
     4688     beginnt             character(20), 
     4689     endet               character(20), 
     4690     advstandardmodell   character varying[], 
     4691     sonstigesmodell     character varying[], 
     4692     anlass              character varying, 
     4693     -- Beziehungen: 
     4694     beziehtsichauf     character varying[],  -- <- ax_buchungsstelle 
     4695     haengtan           character varying,    --> ax_person 
    43744696     CONSTRAINT ax_verwaltung_pk PRIMARY KEY (ogc_fid) 
    43754697); 
    4376  
    43774698SELECT AddGeometryColumn('ax_verwaltung','dummy',:alkis_epsg,'POINT',2); 
    43784699 
    4379 COMMENT ON TABLE  ax_verwaltung  IS 'V e r w a l t u n g'; 
     4700COMMENT ON TABLE  ax_verwaltung  IS 'Personen- und Bestandsdaten: (NREO) "Verwaltung" ist ..'; 
     4701 
     4702COMMENT ON COLUMN ax_verwaltung.beziehtsichauf IS '<- Beziehung zu ax_buchungsstelle (1..*): Durch die Relation ''Verwaltung'' bezieht sich auf ''Buchungsstelle'' wird augedrÃŒckt, fÃŒr welche Buchungsstellen die Verwaltung bestellt wurde. 
     4703Es handelt sich um die inverse Relationsrichtung.'; 
     4704COMMENT ON COLUMN ax_verwaltung.haengtan       IS '-> Beziehung zu ax_person (1): Durch die Relation ''Verwaltung'' hÀngt an ''Person'' wird die Verwaltung namentlich benannt.'; 
     4705 
    43804706 
    43814707 
     
    44214747 
    44224748 
    4423 -- wenn schon, dann auch alle Tabellen mit Kommentaren versehen: 
    4424 --COMMENT ON TABLE geometry_columns IS 'Metatabelle der Geometrie-Tabellen, Tabellen ohne Geometrie bekommen Dummy-Eintrag fÃŒr PostNAS-Konverter (GDAL/OGR)'; 
    4425 COMMENT ON TABLE spatial_ref_sys  IS 'Koordinatensysteme und ihre Projektionssparameter'; 
    4426  
    4427 -- Schema aktualisieren (setzt auch die Indizes neu) 
    4428 -- SELECT alkis_update_schema(); 
    4429  
    4430 -- In allen Tabellen die Objekte Löschen, die ein Ende-Datum haben 
    4431 -- SELECT alkis_delete_all_endet(); 
     4749-- Wenn schon, dann auch alle Tabellen mit Kommentaren versehen: 
     4750-- COMMENT ON TABLE geometry_columns IS 'Metatabelle der Geometrie-Tabellen, Tabellen ohne Geometrie bekommen Dummy-Eintrag fÃŒr PostNAS-Konverter (GDAL/OGR)'; 
     4751   COMMENT ON TABLE spatial_ref_sys  IS 'PostGIS: Koordinatensysteme und ihre Projektionssparameter'; 
    44324752 
    44334753-- 
  • Version-0.8/import/alkis_PostNAS_schema_ohneHist.sql

    r314 r324  
    2424DROP FUNCTION delete_feature_hist(); 
    2525 
    26  
    27 --  +++ In "alkis_beziehungen" wird die Spalte "beginnt" nicht mehr verwendet. 
    28 --  +++ Die wurde gefÃŒllt mit dem Trigger "update_fields" Procedure "update_fields_beziehungen()" 
    29 --  +++ Spalte löschen?  In Hist noch verwendet? 
    30  
    3126-- 
    3227--          THE  (happy)  END 
  • Version-0.8/import/datenbank_anlegen.sh

    r316 r324  
    77## Stand: 
    88##  2012-02-10 PostNAS 07, Umbenennung 
    9 ##  2013-01-15 Zwischenstopp um Meldungen lesen zu können bevor, sie aus dem Scrollbereich verschwinden 
     9##  2013-01-15 Zwischenstopp um Meldungen lesen zu können bevor, sie aus dem Scrollbereich verschwinden 
    1010##  2013-04-16 Vers.-Nr. "0.7" aus dem Dateinamen von Schema und Keytable entfernt, sichten_wms.sql 
    11 ##  2013-10-16 F.J. krz: Neues Sript "pp_praesentation_sichten.sql" für Reparatur Präsentationsobjekte Straßennamen 
     11##  2013-10-16 F.J. krz: Neues Sript "pp_praesentation_sichten.sql" fÃŒr Reparatur PrÀsentationsobjekte Straßennamen 
    1212##  2013-12-03 F.J. krz: Script "sichten.sql" einbeziehen. Darin View "doppelverbindung" fuer WMS FS-Kommunal. 
    13 ##  2014-01-31 F.J. krz: Unterschiede der Datenbank-Struktur für die Varianten MIT/OHNE Historie. 
     13##  2014-01-31 F.J. krz: Unterschiede der Datenbank-Struktur fÃŒr die Varianten MIT/OHNE Historie. 
     14##  2014-08-26 F.J. krz: Feinheiten, Kommentare 
    1415 
    1516POSTNAS_HOME=$(dirname $0) 
    1617MANDANT_HOME=$PWD 
    1718 
    18 # Koordinatensystem fuer Geometriefelder: 
     19# Koniguration: Koordinatensystem fuer Geometriefelder. 
     20# Wird im Folgenden mit Parameter "-v" an psql ÃŒbergeben. 
    1921EPSG=25832 
    2022 
     
    2224function get_db_config(){ 
    2325        # welches Datenbank-Template? 
    24         echo "" 
     26        echo " " 
    2527        echo "Datenbank-Template fuer die neue ALKIS-Datenbank?" 
    2628        echo " (einfach Enter fuer die Voreinstellung template_postgis)" 
     
    3133        until [ -n "$DBNAME" ] 
    3234        do 
    33                 echo "" 
     35                echo " " 
    3436                echo "Name der ALKIS-Datenbank?" 
    3537                read DBNAME 
    3638        done 
    37         echo "" 
     39        echo " " 
    3840        echo "Datenbank-User?  (Dieser muss eine gleichnamige Service-Datenbank haben)" 
    3941        read DBUSER 
     
    4143        until [ "$JEIN" = "j" -o "$JEIN" = "n" ] 
    4244        do 
    43                 echo "" 
     45                echo " " 
    4446                echo "Datenbank $DBNAME wird GELOESCHT und neu angelegt  - j oder n?" 
    4547                read JEIN 
     
    7173echo "connection " $con 
    7274 
    73 echo "******************************" 
    74 echo "**  Neue ALKIS-Datenbank    **" 
    75 echo "******************************" 
    76 echo " " 
    77 echo "** Loeschen Datenbank " ${DBNAME} 
     75echo "  
     76****************************** 
     77**  Neue ALKIS-Datenbank    ** 
     78****************************** 
     79   
     80** Loeschen Datenbank " ${DBNAME} 
     81 
    7882## Hier wird vorausgesetzt, dass der User eine Service-DB hat, die seinen Namen traegt 
    79 echo  "DROP database ${DBNAME};" | psql -p 5432 -d ${DBUSER} -U ${DBUSER}  
    80 echo " " 
    81 echo "** Anlegen (leere) PostGIS-Datenbank" 
     83psql -p 5432 -d ${DBUSER} -U ${DBUSER} -c "DROP database ${DBNAME};" 
     84 
     85echo "  
     86** Anlegen (leere) PostGIS-Datenbank" 
    8287createdb --port=5432 --username=${DBUSER} -E utf8  -T ${DBTEMPLATE} ${DBNAME} 
    83 echo " " 
    84 echo "** Anlegen der Datenbank-Struktur fuer PostNAS (alkis_PostNAS_0.7_schema.sql)" 
     88 
     89echo "  
     90** Anlegen der Datenbank-Struktur fuer PostNAS (alkis_PostNAS_0.7_schema.sql)" 
    8591psql $con -v alkis_epsg=$EPSG -U ${DBUSER} -f alkis_PostNAS_schema.sql >$MANDANT_HOME/log/schema.log 
    8692 
    87 # Zwischenstopp. Die Ausgabe-Zeilen sind sonst nicht mehr lesbar. 
     93# Zwischenstopp zum Betrachten der Ausgabe. 
     94# Die Menge der Zeilen ist sonst nicht mehr lesbar. 
    8895until [ "$CHECK" = "j" -o "$CHECK" = "n" ] 
    8996do 
     
    102109## Kann man das Ziel des Symlinks abfragen? Wenn Kill, dann ... 
    103110##   if [ -e alkis-trigger.sql ]; then 
    104 echo " " 
    105 echo "** Besonderheiten der Datenbank OHNE Historie" 
    106 ## auskommentieren, wenn die Datenbank MIT Historie geführt wird 
    107 ## Import-ID: Tabelle und Spalte in "alkis_beziehungen" anlegen 
    108 psql $con -U ${DBUSER} -f alkis_PostNAS_schema_ohneHist.sql >$MANDANT_HOME/log/schema.log 
    109 ## Spalte "identifier" aus allen Tabellen entfernen (die wird nur vom Trigger MIT Historie benoetigt) 
    110 ##psql $con -U ${DBUSER} -c "SELECT alkis_drop_all_identifier();" 
    111 psql $con -U ${DBUSER} -c "COMMENT ON DATABASE ${DBNAME} IS 'ALKIS - Konverter PostNAS 0.7 - Ohne Historie';" 
     111 
     112        # echo "  
     113        # ** Besonderheiten der Datenbank OHNE Historie" 
     114        ## Zeilen auskommentieren, wenn die Datenbank MIT Historie gefÃŒhrt wird. 
     115        ## Import-ID: Tabelle und Spalte in "alkis_beziehungen" anlegen 
     116 
     117        # psql $con -U ${DBUSER} -f alkis_PostNAS_schema_ohneHist.sql >$MANDANT_HOME/log/schema.log 
     118        # psql $con -U ${DBUSER} -c "COMMENT ON DATABASE ${DBNAME} IS 'ALKIS - Konverter PostNAS 0.7 - Ohne Historie';" 
     119 
    112120## fi 
    113121 
    114 echo " " 
    115 echo "** Anlegen der Datenbank-Struktur - zusaetzliche Schluesseltabellen" 
     122echo "  
     123** Anlegen der Datenbank-Struktur - zusaetzliche Schluesseltabellen" 
    116124## Nur die benoetigten Tabellen fuer die Buchauskunft 
    117125psql $con -U ${DBUSER} -f alkis_PostNAS_keytables.sql >$MANDANT_HOME/log/keytables.log 
    118126 
    119 echo " " 
    120 echo "** Anlegen Optimierung Nutzungsarten (nutzungsart_definition.sql)" 
     127echo "  
     128** Anlegen Optimierung Nutzungsarten (nutzungsart_definition.sql)" 
    121129psql $con -U ${DBUSER} -f nutzungsart_definition.sql 
    122130 
    123 echo " " 
    124 echo "** Laden NUA-Metadaten (nutzungsart_metadaten.sql) Protokoll siehe log" 
     131echo "  
     132** Laden NUA-Metadaten (nutzungsart_metadaten.sql) Protokoll siehe log" 
    125133psql $con -U ${DBUSER} -f nutzungsart_metadaten.sql >$MANDANT_HOME/log/meta.log 
    126134 
    127 echo " " 
    128 echo "** Anlegen Post Processing Tabellen (pp_definition.sql)" 
    129 psql $con -U ${DBUSER} -v alkis_epsg=$EPSG -f pp_definition.sql >$MANDANT_HOME/log/pp_definition.log 
     135echo "  
     136** Anlegen Post Processing Tabellen (pp_definition.sql)" 
     137psql $con -v alkis_epsg=$EPSG  -U ${DBUSER} -f pp_definition.sql >$MANDANT_HOME/log/pp_definition.log 
    130138 
    131 echo " " 
    132 echo "** Anlegen Post Processing Views (pp_praesentation_sichten.sql)" 
     139echo "  
     140** Anlegen Post Processing Views (pp_praesentation_sichten.sql)" 
    133141psql $con -U ${DBUSER} -f pp_praesentation_sichten.sql >$MANDANT_HOME/log/pp_praesentation_sichten.log 
    134142 
    135 echo " " 
    136 echo "** Definition von Views fuer Kartendienste (sichten_wms.sql)" 
     143echo "  
     144** Definition von Views fuer Kartendienste (sichten_wms.sql)" 
    137145psql $con -U ${DBUSER} -f sichten_wms.sql >$MANDANT_HOME/log/sichten_wms.log 
    138146 
    139 echo " " 
    140 echo "** Definition von Views (sichten.sql)" 
     147echo "  
     148** Definition von Views (sichten.sql)" 
    141149psql $con -U ${DBUSER} -f sichten.sql >$MANDANT_HOME/log/sichten.log 
    142150 
    143 echo "** Berechtigung (grant.sql) Protokoll siehe log" 
     151echo "  
     152** Berechtigung (grant.sql) Protokoll siehe log" 
    144153psql $con -U ${DBUSER} -f grant.sql >$MANDANT_HOME/log/log_grant.log 
     154 
    145155echo "  
    146156*************************** 
    147157**  Ende Neue Datenbank  ** 
    148158*************************** 
    149 " 
     159 " 
  • Version-0.8/import/grant.sql

    r320 r324  
    1111--  2012-02-17  PostNAS 0.7, pp_Tabellen, ms5 -> ms6 
    1212--  2012-04-25  Tabelle pp_flurstueck_nr 
    13 --  2013-01-15  mehr Schlüsseltabellen rein 
     13--  2013-01-15  mehr SchlÃŒsseltabellen rein 
    1414--  2013-03-05  View "s_beschriftung" wird durch "ap_pto_stra" und "ap_pto_rest" ersetzt. 
    1515--              View "s_nummer_nebengebaeude" wird durch "lfdnr_nebengebaeude" ersetzt. 
    1616--  2013-03-25  View "grenzpunkt" und "gebaeude_txt" 
    17 --  2013-04-19  Neues zum Thema "Bodenschätzung", Views entfallen 
     17--  2013-04-19  Neues zum Thema "BodenschÀtzung", Views entfallen 
    1818--  2013-10-24  Table "pp_strassenname" ersetzt View "ap_pto_stra" im WMS (ms6) 
    19 --  2014-01-22  Neue Views für CSV-Export, neue Schlüsseltabelle "ax_namensnummer_eigentuemerart" 
     19--  2014-01-22  Neue Views fÃŒr CSV-Export, neue SchlÃŒsseltabelle "ax_namensnummer_eigentuemerart" 
    2020 
    2121 
     
    3232-- ALKIS / PostNAS 
    3333-- --------------- 
    34 -- Berechtigung für Kartendarstellung 
     34-- Berechtigung fÃŒr Kartendarstellung 
    3535  GRANT SELECT ON TABLE alkis_beziehungen TO ms6; 
    3636  GRANT SELECT ON TABLE ap_darstellung TO ms6; 
     
    270270  GRANT SELECT ON TABLE  pp_flur                           TO mb27; 
    271271  GRANT SELECT ON TABLE  pp_flurstueck_nr                  TO ms6; 
    272   GRANT SELECT ON TABLE  pp_strassenname                   TO ms6; 
     272 
     273  GRANT SELECT ON TABLE  pp_strassenname_p                 TO ms6; 
     274  GRANT SELECT ON TABLE  pp_strassenname_l                 TO ms6; 
     275 
    273276  GRANT SELECT ON TABLE  gemeinde_person                   TO ms6; 
    274277  GRANT SELECT ON TABLE  gemeinde_person                   TO mb27; 
     
    278281-- ------------------ 
    279282 
    280 -- Gebäude 
     283-- GebÀude 
    281284GRANT SELECT ON TABLE ax_gebaeude_bauweise                 TO ms6; 
    282285GRANT SELECT ON TABLE ax_gebaeude_bauweise                 TO mb27; 
     
    292295GRANT SELECT ON TABLE ax_bauteil_bauart                    TO mb27; 
    293296 
    294 -- Bodenschätzung 
     297-- BodenschÀtzung 
    295298GRANT SELECT ON TABLE ax_bodenschaetzung_bodenart          TO ms6; 
    296299GRANT SELECT ON TABLE ax_bodenschaetzung_bodenart          TO mb27; 
     
    310313GRANT SELECT ON TABLE ax_bewertung_klassifizierung         TO mb27; 
    311314 
    312 -- Bodenschätzung Views 
     315-- BodenschÀtzung Views 
    313316GRANT SELECT ON TABLE s_bodensch_wms                       TO ms6; 
    314317GRANT SELECT ON TABLE s_bodensch_ent                       TO ms6; 
     
    338341GRANT SELECT ON TABLE ax_sonstigesrecht_artdf              TO mb27; 
    339342 
    340 -- Sonstige Schlüsseltabellen 
     343-- Sonstige SchlÃŒsseltabellen 
    341344GRANT SELECT ON TABLE ax_buchungsstelle_buchungsart        TO ms6; 
    342345GRANT SELECT ON TABLE ax_buchungsstelle_buchungsart        TO mb27; 
  • Version-0.8/import/nutzungsart_definition.sql

    r314 r324  
    1818--  2013-11-15 In nutzung_class.class können NULL-Werte auftreten. 
    1919--  2013-11-26 NULL wird durch Zahl "0" ersetzt, "NOT NULL" wieder aktivieren 
     20--  2014-08-26 erweiterte gml_id (wie in den primÀren Tabellen) 
    2021 
    2122SET client_encoding = 'UTF-8'; 
    2223 
    2324-- Alles auf Anfang! 
    24  
    25 -- DROP TABLE nutzung; 
    26 -- DROP TABLE nutzung_class; 
    27 -- DROP TABLE nutzung_meta; 
    28  
     25/* 
     26  DROP TABLE nutzung; 
     27  DROP TABLE nutzung_class; 
     28  DROP TABLE nutzung_meta; 
     29*/ 
    2930 
    3031-- Meta-Informationen ueber die Zusammenfassung und Gruppierung 
    3132-- ------------------------------------------------------------ 
    32  
    3333CREATE TABLE nutzung_meta ( 
    3434        nutz_id           integer NOT NULL, 
     
    5252-- Alle Abschnitte der "tatsÀchlichen Nutzung" vereinigt in einer Tabelle  
    5353-- Sie sind dann mit einem gemeinsamen Geometrie-Index mit einer SQL-Abfrage auffindbar. 
    54 -- Dies ist die Voraussetzung fÃŒr eine performante Auskunft. 
     54-- Dies ist die förderlich fÃŒr eine performante Auskunft. 
    5555 
    56 --DROP TABLE nutzung; 
    5756CREATE TABLE nutzung ( 
    58         gml_id          character(16), 
    59         beginnt         character(20),      -- mehrfache gml_id eindeutig machen, Datenfehler? 
    60         nutz_id         integer, 
    61         class           integer  NOT NULL,  -- NULL-Werte der Quelltabelle durch den num. Wert 0 ersetzen 
    62         info                 integer, 
    63         zustand         integer, 
    64         "name"          varchar, 
    65         bezeichnung     varchar, 
    66 --      CONSTRAINT      nutzung_pk      PRIMARY KEY (gml_id),               -- sollte so sein 
    67         CONSTRAINT      nutzung_pk      PRIMARY KEY (gml_id, beginnt),  -- wÃŒrg arround (gml_id mehrfach!) 
    68         CONSTRAINT      nutzung_meta_id FOREIGN KEY (nutz_id) 
     57        gml_id               character varying NOT NULL, 
     58        beginnt              character(20),          -- mehrfache gml_id eindeutig machen 
     59--   endet               character(20),      -- nur "ended IS NULL" kopieren 
     60        nutz_id              integer, 
     61        class                integer NOT NULL,   -- NULL-Werte der Quelltabelle durch den num. Wert 0 ersetzen 
     62        info                      integer, 
     63        zustand              integer, 
     64        "name"               character varying, 
     65        bezeichnung          character varying, 
     66        CONSTRAINT nutzung_pk      PRIMARY KEY (gml_id, beginnt), 
     67        CONSTRAINT nutzung_meta_id FOREIGN KEY (nutz_id) 
    6968                REFERENCES nutzung_meta (nutz_id) MATCH SIMPLE 
    7069                ON UPDATE NO ACTION ON DELETE CASCADE 
     
    7271WITH (OIDS=FALSE); 
    7372 
    74 -- ALTER TABLE nutzung ADD COLUMN beginnt character(20); 
    75 -- ALTER TABLE nutzung DROP CONSTRAINT nutzung_pk; 
    76 -- ALTER TABLE nutzung ADD  CONSTRAINT nutzung_pk PRIMARY KEY(gml_id, beginnt); 
    77  
    7873 
    7974SELECT AddGeometryColumn('nutzung','wkb_geometry','25832','POLYGON',2); 
    80 -- Vereinzelt vorkommende MULTIPOLYGON, zulÀssig? 
     75-- Vereinzelt auch vorkommende MULTIPOLYGON 
    8176 
    8277-- 'class' ist nur innerhalb einer Gruppe ein sinvoller Index 
     
    8681CREATE INDEX nutzung_geom_idx ON nutzung USING gist (wkb_geometry); 
    8782 
    88 -- Kommentare 
    8983COMMENT ON TABLE  nutzung             IS 'Zusammenfassung von 26 Tabellen des Objektbereiches "TatsÀchliche Nutzung".'; 
    9084COMMENT ON COLUMN nutzung.gml_id      IS 'Identifikator, global eindeutig'; 
     
    9993-- Schluesseltabelle: classes innerhalb einer Nutzungsart. 
    10094-- Wird nicht aus NAS geladen sondern durch das manuell zu pflegende Script "nutzungsart_metadaten.sql" 
    101  
    102  
    103 --DROP TABLE nutzung_class; 
    10495CREATE TABLE nutzung_class ( 
    10596        nutz_id       integer NOT NULL, 
     
    114105 
    115106  COMMENT ON TABLE  nutzung_class            IS 'SchlÃŒsseltabelle. Feinere Klassifizierung der zusammen gefassten Nutzungsarten.'; 
    116 --COMMENT ON COLUMN nutzung_class.ser        IS 'Automatisches SchlÃŒsselfeld'; 
    117107  COMMENT ON COLUMN nutzung_class.nutz_id    IS 'Index fuer die Quell-Tabelle bei der Zusammenfassung in der Tabelle nutzung.'; 
    118108  COMMENT ON COLUMN nutzung_class.class      IS 'Key, SchlÃŒsselwert oder NULL'; 
     
    124114-- Da nun gml_id nicht mehr PRIMARY KEY der Ausgangstabellen ist , kommt es auch zu Doppelbelegungen der Zusammenfassung. 
    125115-- Diese FÀlle suchen. 
    126  
    127 -- SELECT a.gml_id, a.artderbebauung, a.ogc_fid, a.beginnt, b.ogc_fid , b.beginnt 
    128 -- FROM ax_wohnbauflaeche a JOIN ax_wohnbauflaeche b ON a.gml_id = b.gml_id 
    129 -- WHERE a.ogc_fid < b.ogc_fid LIMIT 100;  
    130  
    131116CREATE OR REPLACE VIEW nutzung_mehrfache_gml AS 
    132         SELECT  a.gml_id,  
    133                 a.nutz_id, 
    134                 a.beginnt as beginnt1,  
    135                 b.beginnt as beginnt2 
     117        SELECT a.gml_id, a.nutz_id, a.beginnt as beginnt1, b.beginnt as beginnt2 
    136118        FROM nutzung a  
    137         JOIN nutzung b  
    138           ON a.gml_id = b.gml_id 
     119        JOIN nutzung b ON a.gml_id = b.gml_id 
    139120        WHERE a.beginnt < b.beginnt 
    140121        --LIMIT 100 
  • Version-0.8/import/ordner_konvertieren.sh

    r215 r324  
    5656        # 
    5757        echo " " 
    58         echo "Abschließende Bestätigung:" 
     58        echo "Abschließende BestÀtigung:" 
    5959        until [ "$JEIN" = "j" -o "$JEIN" = "n" ] 
    6060        do 
  • Version-0.8/import/pp_definition.sql

    r316 r324  
    44-- Post Processing (pp_) Teil 1: Anlegen der Tabellen und Views 
    55 
    6 -- ACHTUNG! 
    7 -- Systemvariable vorher setzen fÃŒr das Koordinatensystem, z.B. 
    8 -- EPSG=25832 
     6-- ACHTUNG! Systemvariable vorher setzen fÃŒr das Koordinatensystem 
     7-- :alkis_epsg=25832 
    98 
    109-- Stand  
    11  
    1210--  2012-02-13 PostNAS 07, Umbenennung 
    1311--  2012-02-17 Optimierung 
     
    1917--  2013-04-18 Kommentare. 
    2018--  2012-10-24 Neue Tabelle fÃŒr die PrÀsentation von Straßennamen und -Klassifikationen 
    21  
     19--  2014-08-26 Aus "pp_strassenname" werden die Varianten *_p und *_l 
     20--             Erweiterte gml_id wie bei den primÀren Tabellen, bisher (16). 
    2221 
    2322-- ============================ 
     
    3534 
    3635-- ToDo: 
    37  
    3836-- Muss *multi*-Polygon sein? Gibt es "zerrissene" Fluren/Gemarkungen? 
    3937-- Der View "gemeinde_gemarkung" kann entfallen, wenn Navigation umgestellt wurde. 
     
    4240 
    4341-- Alles auf Anfang! 
    44  
    45 -- DROP VIEW gemeinde_person_typ1; 
    46 -- DROP VIEW gemeinde_person_typ2; 
    47 -- DROP VIEW gemeinde_gemarkung; 
    48 -- DROP TABLE pp_gemeinde; 
    49 -- DROP TABLE pp_gemarkung; 
    50 -- DROP TABLE pp_flur; 
    51  
     42/* 
     43 DROP VIEW gemeinde_person_typ1; 
     44 DROP VIEW gemeinde_person_typ2; 
     45 DROP VIEW gemeinde_gemarkung; 
     46 DROP TABLE pp_gemeinde; 
     47 DROP TABLE pp_gemarkung; 
     48 DROP TABLE pp_flur; 
     49*/ 
    5250 
    5351-- Tabelle fuer Gemeinden 
     
    5553 
    5654  CREATE TABLE pp_gemeinde ( 
    57     gid                 serial, 
    58     land                integer NOT NULL, 
    59     regierungsbezirk    integer, 
    60     kreis               integer, 
    61     gemeinde            integer NOT NULL, 
    62     gemeindename        character varying(80), 
    63  -- gkz                 character varying(03),  -- wird (noch) nicht benutzt 
    64     anz_gemarkg         integer,                -- Anzahl Gemarkungen 
     55    gid                serial, 
     56    land               integer NOT NULL, 
     57    regierungsbezirk   integer, 
     58    kreis              integer, 
     59    gemeinde           integer NOT NULL, 
     60    gemeindename       character varying(80), 
     61 -- gkz                character varying(03),    -- wird (noch) nicht benutzt 
     62    anz_gemarkg        integer,                  -- Anzahl Gemarkungen 
    6563    CONSTRAINT pp_gemeinde_pk PRIMARY KEY (land, gemeinde) 
    6664  ); 
     
    9593 
    9694  CREATE TABLE pp_gemarkung ( 
    97     gid                 serial, 
    98     land                integer NOT NULL, 
    99     regierungsbezirk    integer, 
    100     kreis               integer, 
    101     gemeinde            integer NOT NULL,       -- fast ein Foreign-Key Constraint 
    102     gemarkung           integer NOT NULL, 
    103     gemarkungsname      character varying(80), 
    104     anz_flur            integer,                -- Anzahl Fluren 
     95    gid                serial, 
     96    land               integer NOT NULL, 
     97    regierungsbezirk   integer, 
     98    kreis              integer, 
     99    gemeinde           integer NOT NULL,       -- fast ein Foreign-Key Constraint 
     100    gemarkung          integer NOT NULL, 
     101    gemarkungsname     character varying(80), 
     102    anz_flur           integer,                -- Anzahl Fluren 
    105103    CONSTRAINT pp_gemarkung_pk PRIMARY KEY (land, gemarkung) 
    106104  ); 
     
    128126 
    129127  CREATE TABLE pp_flur ( 
    130     gid                 serial, 
    131     land                integer NOT NULL, 
    132     regierungsbezirk    integer, 
    133     kreis               integer, 
    134     gemarkung           integer NOT NULL, 
    135     flurnummer          integer NOT NULL, 
    136     anz_fs              integer,                -- Anzahl FlurstÃŒcke 
     128    gid                serial, 
     129    land               integer NOT NULL, 
     130    regierungsbezirk   integer, 
     131    kreis              integer, 
     132    gemarkung          integer NOT NULL, 
     133    flurnummer         integer NOT NULL, 
     134    anz_fs             integer,              -- Anzahl FlurstÃŒcke 
    137135    CONSTRAINT pp_flur_pk PRIMARY KEY (land, gemarkung, flurnummer) 
    138136  ); 
     
    172170 
    173171  CREATE TABLE gemeinde_person ( 
    174     land                integer, 
    175     regierungsbezirk    integer, 
    176     kreis               integer, 
    177     gemeinde            integer, 
    178     person              character varying(16), 
    179     buchtyp             integer, 
     172    land                integer, 
     173    regierungsbezirk    integer, 
     174    kreis               integer, 
     175    gemeinde            integer, 
     176    person              character varying, 
     177    buchtyp             integer, 
    180178    CONSTRAINT gemeinde_person_pk PRIMARY KEY (gemeinde, person) 
    181179  ); 
     
    197195  CREATE TABLE pp_flurstueck_nr ( 
    198196    gid         serial, 
    199     fsgml       character(16), 
    200     fsnum       character varying(10),  -- zzzzz/nnnn 
     197    fsgml            character varying, 
     198    fsnum            character varying(10),  -- zzzzz/nnnn 
    201199    CONSTRAINT pp_flurstueck_nr_pk  PRIMARY KEY (gid)  --, 
    202200-- Foreign Key 
     
    212210 
    213211-- Geometrischer Index 
    214 CREATE INDEX pp_flurstueck_nr_gidx ON pp_flurstueck_nr USING gist(the_geom); 
    215  
    216 -- Foreig-Key Index 
    217 CREATE INDEX fki_pp_flurstueck_nr_gml ON pp_flurstueck_nr(fsgml); 
     212CREATE INDEX pp_flurstueck_nr_gidx    ON pp_flurstueck_nr USING gist  (the_geom); 
     213CREATE INDEX fki_pp_flurstueck_nr_gml ON pp_flurstueck_nr USING btree (fsgml); 
    218214 
    219215COMMENT ON TABLE  pp_flurstueck_nr           IS 'Post-Processing: Position der FlurstÃŒcksnummer in der Karte'; 
     
    363359  FROM pp_gemarkung; 
    364360 
    365  
    366 -- NEU 2013-10-24 
    367 -- Tabelle fÃŒr die PrÀsentation von Straßen-Namen und -Klassifikationen 
    368 -- Tabelle "pp_strassenname" speichert den VIEW "ap_pto_stra". 
    369  
    370 --DROP TABLE pp_strassenname; 
    371 CREATE TABLE pp_strassenname  
    372 (   gid         serial NOT NULL, 
    373     gml_id character(16), 
    374  -- advstandardmodell character varying[], 
    375     schriftinhalt character varying, -- Label: anzuzeigender Text 
    376     hor character varying, 
    377     ver character varying, 
    378  -- signaturnummer character varying, 
     361-- 2014-08-26 Aus Version "pp_strassenname" werden die Varianten *_p und *_l 
     362 
     363-- Variante fÃŒr Punkt-Geometrie 
     364CREATE TABLE pp_strassenname_p  
     365(   gid                    serial NOT NULL, 
     366    gml_id                 character varying, 
     367 -- advstandardmodell      character varying[], 
     368    schriftinhalt          character varying,      -- Label: anzuzeigender Text 
     369    hor                    character varying, 
     370    ver                    character varying, 
     371 -- signaturnummer         character varying, 
    379372 -- darstellungsprioritaet integer, 
    380     art character varying, 
    381     winkel double precision, 
    382     CONSTRAINT pp_snam_pk  PRIMARY KEY (gid) 
     373    art                    character varying, 
     374    winkel                 double precision, 
     375    CONSTRAINT pp_snamp_pk  PRIMARY KEY (gid) 
    383376) WITH (OIDS=FALSE); 
    384377 
    385 SELECT AddGeometryColumn('pp_strassenname','the_geom',:alkis_epsg,'POINT',2); 
    386 CREATE INDEX pp_snam_gidx ON pp_strassenname USING gist(the_geom);  
    387  
    388   COMMENT ON TABLE  pp_strassenname                IS 'Post-Processing: Label der Straßennamen in der Karte. Auszug aus ap_pto.'; 
    389  
    390   COMMENT ON COLUMN pp_strassenname.gid            IS 'EditierschlÃŒssel der Tabelle'; 
    391   COMMENT ON COLUMN pp_strassenname.gml_id         IS 'ObjektschlÃŒssel des PrÀsentationsobjektes aus ap_pto. Zur Verbindung mit Katalog.'; 
    392   COMMENT ON COLUMN pp_strassenname.schriftinhalt  IS 'Label, darzustellender Name der Straße oder Klassifikation'; 
    393   COMMENT ON COLUMN pp_strassenname.hor            IS 'Horizontale Ausrichtung des Textes zur Punkt-Koordinate: linksbÃŒndig, zentrisch, ...'; 
    394   COMMENT ON COLUMN pp_strassenname.ver            IS 'Vertikale   Ausrichtung des Textes zur Punkt-Koordinate: Basis, ..'; 
    395   COMMENT ON COLUMN pp_strassenname.art            IS 'Klasse der Straße: Straße, Weg, .. , BezKlassifizierungStrasse'; 
    396   COMMENT ON COLUMN pp_strassenname.winkel         IS 'Drehung des Textes'; 
    397   COMMENT ON COLUMN pp_strassenname.the_geom       IS 'Position (Punkt) der Labels in der Karte'; 
     378-- :alkis_epsg = 25832 
     379SELECT AddGeometryColumn('pp_strassenname_p','the_geom',:alkis_epsg,'POINT',2); 
     380CREATE INDEX pp_snamp_gidx ON pp_strassenname_p USING gist(the_geom);  
     381 
     382  COMMENT ON TABLE  pp_strassenname_p                IS 'Post-Processing: Label der Straßennamen in der Karte, Punktgeometrie. Auszug aus ap_pto.'; 
     383 
     384  COMMENT ON COLUMN pp_strassenname_p.gid            IS 'EditierschlÃŒssel der Tabelle'; 
     385  COMMENT ON COLUMN pp_strassenname_p.gml_id         IS 'ObjektschlÃŒssel des PrÀsentationsobjektes aus "ax_lagebezeichnungohnehausnummer". Zur Verbindung mit Katalog beim Nachladen leerer Felder.'; 
     386  COMMENT ON COLUMN pp_strassenname_p.schriftinhalt  IS 'Label, darzustellender Name der Straße oder Klassifikation'; 
     387  COMMENT ON COLUMN pp_strassenname_p.hor            IS 'Horizontale Ausrichtung des Textes zur Punkt-Koordinate: linksbÃŒndig, zentrisch, ...'; 
     388  COMMENT ON COLUMN pp_strassenname_p.ver            IS 'Vertikale   Ausrichtung des Textes zur Punkt-Koordinate: Basis, ..'; 
     389  COMMENT ON COLUMN pp_strassenname_p.art            IS 'Klasse der Straße: Straße, Weg, .. , BezKlassifizierungStrasse'; 
     390  COMMENT ON COLUMN pp_strassenname_p.winkel         IS 'Drehung des Textes'; 
     391  COMMENT ON COLUMN pp_strassenname_p.the_geom       IS 'Position (Punkt) der Labels in der Karte'; 
     392 
     393-- Variante fÃŒr Linien-Geometrie 
     394CREATE TABLE pp_strassenname_l  
     395(   gid                    serial NOT NULL, 
     396    gml_id                 character varying, 
     397    schriftinhalt          character varying,      -- Label: anzuzeigender Text 
     398    hor                    character varying, 
     399    ver                    character varying, 
     400    art                    character varying, 
     401 -- winkel                 double precision,       -- bei Linien-Variante nicht benötigt 
     402    CONSTRAINT pp_snaml_pk  PRIMARY KEY (gid) 
     403) WITH (OIDS=FALSE); 
     404 
     405-- :alkis_epsg = 25832 
     406SELECT AddGeometryColumn('pp_strassenname_l','the_geom',:alkis_epsg,'LINESTRING',2); -- Hier liegt der Unterschied 
     407CREATE INDEX pp_snaml_gidx ON pp_strassenname_l USING gist(the_geom);  
     408 
     409  COMMENT ON TABLE  pp_strassenname_l                IS 'Post-Processing: Label der Straßennamen in der Karte, Liniengeometrie. Auszug aus ap_lto.'; 
     410 
     411  COMMENT ON COLUMN pp_strassenname_l.gid            IS 'EditierschlÃŒssel der Tabelle'; 
     412  COMMENT ON COLUMN pp_strassenname_l.gml_id         IS 'ObjektschlÃŒssel des PrÀsentationsobjektes aus "ax_lagebezeichnungohnehausnummer". Zur Verbindung mit Katalog beim Nachladen leerer Felder.'; 
     413  COMMENT ON COLUMN pp_strassenname_l.schriftinhalt  IS 'Label, darzustellender Name der Straße oder Klassifikation'; 
     414  COMMENT ON COLUMN pp_strassenname_l.hor            IS 'Horizontale Ausrichtung des Textes: linksbÃŒndig, zentrisch, ...'; 
     415  COMMENT ON COLUMN pp_strassenname_l.ver            IS 'Vertikale   Ausrichtung des Textes: Basis, ..'; 
     416  COMMENT ON COLUMN pp_strassenname_l.art            IS 'Klasse der Straße: Straße, Weg, .. , BezKlassifizierungStrasse'; 
     417  COMMENT ON COLUMN pp_strassenname_l.the_geom       IS 'Position (Punkt) der Labels in der Karte'; 
     418 
    398419 
    399420-- ENDE -- 
  • Version-0.8/import/pp_laden.sql

    r319 r324  
    11 
    2 -- ALKIS PostNAS 0.7 
     2-- ALKIS PostNAS 
    33 
    44-- Post Processing (pp_) Teil 2: Laden der Tabellen 
     
    1010--  2012-04-17 Flurstuecksnummern auf Standardposition 
    1111--  2012-04-24 Generell Filter 'endet IS NULL' um historische Objekte auszublenden 
    12 --  2012-04-25 Abstürze und Fehler (durch kaputte Geometrie?) beim Zusammenfassen der Flächen 
     12--  2012-04-25 AbstÃŒrze und Fehler (durch kaputte Geometrie?) beim Zusammenfassen der FlÀchen 
    1313--  2012-10-29 F.J. Redundanzen aus alkis_beziehungen beseitigen, die nach NAS replace auftreten 
    1414--  2013-02-06 A.E. Function-Name an PostGIS 2 angepasst: multi() -> st_multi(), simplify() -> st_simplify() 
    15 --  2013-02-21 F.J. doppelte Buchungen zum Flurstück aus alkis_beziehungen beseitigen, die nach NAS replace auftreten 
    16 --  2013-07-10 F.J. Bereinigen der alkis_beziehungen auskommentiert, wird jetzt im Trigger gelöst. 
    17 --  2012-10-24 Neue Tabelle für die Präsentation von Straßennamen und -Klassifikationen 
    18 --  2014-02-05 Bereits auskommentierte Aktionen gelöscht für die Beseitigung von Rdundanzen aus fehlerhaften Triggern 
    19 --  2014-02-12 Zusammen fassen Flur->Gemarkung->Gemeinde nicht aus simple_geom weil dadurch Löscher entstehen können. 
     15--  2013-02-21 F.J. doppelte Buchungen zum FlurstÃŒck aus alkis_beziehungen beseitigen, die nach NAS replace auftreten 
     16--  2013-07-10 F.J. Bereinigen der alkis_beziehungen auskommentiert, wird jetzt im Trigger gelöst. 
     17--  2012-10-24 Neue Tabelle fÃŒr die PrÀsentation von Straßennamen und -Klassifikationen 
     18--  2014-02-05 Bereits auskommentierte Aktionen gelöscht fÃŒr die Beseitigung von Rdundanzen aus fehlerhaften Triggern 
     19--  2014-02-12 Zusammen fassen Flur->Gemarkung->Gemeinde nicht aus simple_geom weil dadurch Löscher entstehen können. 
     20--  2014-08-26 Beseitigung eines Fehlers beim Laden der Straßennamen-Label. 
     21--             Dabei Trennung in pp_strassenname_p und -_l (Punkt- und Liniengeometrie). 
    2022 
    2123-- ============================ 
     
    2426 
    2527-- Einige Informationen liegen nach der NAS-Konvertierung in der Datenbank "verstreut" vor. 
    26 -- Die dynamische Aufbereitung über Views und Functions würde zu lange dauern und somit lange  
     28-- Die dynamische Aufbereitung ÃŒber Views und Functions wÃŒrde zu lange dauern und somit lange  
    2729-- Antwortzeiten in WMS, WFS, Buchauskunft oder Navigation (Suche) verursachen. 
    2830 
    2931-- Im Rahmen eines "Post-Processing" werden diese Daten nach jeder Konvertierung (NBA-Aktualisierung)  
    30 -- einmal komplett aufbereitet. Die benötigten Informationen stehen somit den Anwendungen mundgerecht zur Verfügung. 
    31  
    32 -- Die per PostProcessing gefüllten Tabellen bekommen den Profix "pp_".  
    33  
    34 -- Die Ausführung dieses Scriptes auf einer Datenbank für eine 80T-Einwohner-Stadt dauert ca.: 500 Sek. ! 
     32-- einmal komplett aufbereitet. Die benötigten Informationen stehen somit den Anwendungen mundgerecht zur VerfÃŒgung. 
     33 
     34-- Die per PostProcessing gefÃŒllten Tabellen bekommen den Profix "pp_".  
     35 
     36-- Die AusfÃŒhrung dieses Scriptes auf einer Datenbank fÃŒr eine 80T-Einwohner-Stadt dauert ca.: 500 Sek. ! 
    3537 
    3638SET client_encoding = 'UTF-8'; 
     
    4143-- ============================================================================ 
    4244-- Workaround: alle Redundazen nach einem Lauf entfernen. 
    43 -- Besser wäre: sofort im Trigger bei replace entfernen. 
     45-- Besser wÀre: sofort im Trigger bei replace entfernen. 
    4446-- Siehe Schema in FUNCTION delete_feature_kill 
    4547 
     
    4951-- ================================= 
    5052 
    51 -- ersetzt den View "s_flurstueck_nr" für WMS-Layer "ag_t_flurstueck" 
     53-- ersetzt den View "s_flurstueck_nr" fÃŒr WMS-Layer "ag_t_flurstueck" 
    5254 
    5355--DELETE FROM pp_flurstueck_nr; 
     
    7577       AND f.endet IS NULL  
    7678  ; 
    77 -- Ausführung: mittlere Stadt: ca. 4 - 18 Sec. 
    78  
    79  
    80 -- Straßen - N a m e n  und  - K l a s s i f i k a t i o n 
    81 -- Tabellen für die Präsentation von Straßen-Namen und -Klassifikationen 
     79-- AusfÃŒhrung: mittlere Stadt: ca. 4 - 18 Sec. 
     80 
     81 
     82-- Straßen - N a m e n  und  - K l a s s i f i k a t i o n 
     83-- Tabellen fÃŒr die PrÀsentation von Straßen-Namen und -Klassifikationen 
    8284-- Daten aus dem View "ap_pto_stra" werden im PostProcessing gespeichert in der Tabelle "pp_strassenname". 
    83 -- Der View übernimmt die Auswahl des passenden "advstandardmodell" und rechnet den Winkel passend um. 
    84 -- In der Tabelle werden dann die leer gebliebenen Label aus dem Katalog noch ergänzt.  
    85  
    86 -- Tabelle aus View befüllen 
    87 TRUNCATE pp_strassenname; 
    88 INSERT INTO pp_strassenname (schriftinhalt, hor, ver, art, winkel, the_geom) 
    89        SELECT schriftinhalt, hor, ver, art, winkel, wkb_geometry 
    90        FROM ap_pto_stra; -- View sucht das passende advstandardmodell 
    91  
    92 -- Schriftinhalt ergänzen 
    93 --DATE ap_pto           p  -- Präsentationsobjekte Punktförmig 
    94 UPDATE pp_strassenname  p 
    95    SET schriftinhalt =     -- Hier fehlt der Label 
    96    -- Subquery "Gib mir den Straßennamen": 
    97    ( SELECT k.bezeichnung                       -- Straßenname .. 
    98        FROM ax_lagebezeichnungkatalogeintrag k  --  .. aus Katalog 
    99        JOIN ax_lagebezeichnungohnehausnummer l  -- verwendet als Lage o.H. 
    100          ON (k.land=l.land AND k.regierungsbezirk=l.regierungsbezirk  
    101              AND k.kreis=l.kreis AND k.gemeinde=l.gemeinde AND k.lage=l.lage ) 
    102        JOIN alkis_beziehungen x ON l.gml_id = x.beziehung_zu  -- Relation zum Präsentationsobjekt 
    103       WHERE p.gml_id = x.beziehung_von 
    104         AND x.beziehungsart = 'dientZurDarstellungVon' 
    105       -- LIMIT 1 -- war in einem Fall notwendig, wo 2mal der gleiche Text zugeordnet war, Ursache? 
    106    ) 
     85-- Der View ÃŒbernimmt die Auswahl des passenden "advstandardmodell" und rechnet den Winkel passend um. 
     86-- In der Tabelle werden dann die leer gebliebenen Label aus dem Katalog noch ergÀnzt.  
     87 
     88-- Tabelle aus View befÃŒllen 
     89-- 2014-08-22  
     90--  Variante "_p" = Punktgeometrie, Spalte gml_id ergÀnzt. 
     91--  Es werden nun auch SÀtze mit leerem "schriftinhalt" angelegt. Das wird dann nachtrÀglich gefÃŒllt. 
     92 
     93-- Alles auf Anfang 
     94TRUNCATE pp_strassenname_p; 
     95 
     96-- ZunÀchst die Sonderschreibweisen (AbkÃŒrzungen) und die Standardschreibweisen,  
     97-- die von der Migration redundant abgelegt wurden. 
     98INSERT INTO pp_strassenname_p (gml_id, schriftinhalt, hor, ver, art, winkel, the_geom) 
     99       SELECT gml_id, schriftinhalt, hor, ver, art, winkel, wkb_geometry 
     100       FROM ap_pto_stra; -- Der View sucht das passende advstandardmodell 
     101 
     102-- Schriftinhalt ergÀnzen 
     103-- Das sind die Standardschreibweisen aus dem Katalog, die nicht mehr redundant in ap_pto sind. 
     104UPDATE pp_strassenname_p  p 
     105   SET schriftinhalt =     -- Hier ist der Label noch leer 
     106   -- Subquery "Gib mir den Straßennamen": 
     107   ( SELECT k.bezeichnung                         -- Straßenname .. 
     108       FROM ax_lagebezeichnungkatalogeintrag k    --  .. aus Katalog 
     109       JOIN ax_lagebezeichnungohnehausnummer l    -- verwendet als Lage o.H. 
     110         ON (k.land=l.land AND k.regierungsbezirk=l.regierungsbezirk AND k.kreis=l.kreis AND k.gemeinde=l.gemeinde AND k.lage=l.lage ) 
     111      WHERE p.gml_id = l.gml_id                   -- die gml_id wurde aus View importiert 
     112    ) 
    107113 WHERE     p.schriftinhalt IS NULL 
    108114   AND NOT p.the_geom      IS NULL; 
     115 
     116-- FEHLER:  als Ausdruck verwendete Unteranfrage ergab mehr als eine Zeile 
     117-- Ursache: Trigger anpassen an "character varying", arbeitet bisher nur mit "caharacter(16)" korrekt 
     118 
     119 
     120-- Die immer noch leeren Texte sind nun sinnlos. 
     121-- Die finden sich ggf. in der Variante "_l" mit Liniengeometrie. 
     122DELETE FROM pp_strassenname_p WHERE schriftinhalt IS NULL; 
     123 
     124-- Nun das Gleiche noch einmal fÃŒr Linien-Geometrie 
     125 
     126-- Auf Anfang 
     127TRUNCATE pp_strassenname_l; 
     128 
     129-- ZunÀchst die Sonderschreibweisen (AbkÃŒrzungen) und die Standardschreibweisen,  
     130-- die von der Migration redundant abgelegt wurden. 
     131INSERT INTO pp_strassenname_l (gml_id, schriftinhalt, hor, ver, art, the_geom) 
     132       SELECT gml_id, schriftinhalt, hor, ver, art, wkb_geometry 
     133       FROM ap_lto_stra; -- Der View sucht das passende advstandardmodell 
     134 
     135-- Schriftinhalt ergÀnzen (korrigiert 2014-08-25) 
     136-- Das sind die Standardschreibweisen aus dem Katalog, die nicht mehr redundant in ap_pto sind. 
     137-- Der Satz mit der passenen gml_id (Lage o.H.) ist aus dem View bereits importiert. 
     138-- Jetzt noch den dazu passenen Schriftinhalt aus dem Katalog holen. 
     139UPDATE pp_strassenname_l  p 
     140   SET schriftinhalt =     -- Hier ist der Label noch leer 
     141   -- Subquery "Gib mir den Straßennamen": 
     142   ( SELECT k.bezeichnung                         -- Straßenname .. 
     143       FROM ax_lagebezeichnungkatalogeintrag k    --  .. aus Katalog 
     144       JOIN ax_lagebezeichnungohnehausnummer l    -- verwendet als Lage o.H. 
     145         ON (k.land=l.land AND k.regierungsbezirk=l.regierungsbezirk AND k.kreis=l.kreis AND k.gemeinde=l.gemeinde AND k.lage=l.lage ) 
     146      WHERE p.gml_id = l.gml_id                   -- die gml_id wurde aus View importiert 
     147    ) 
     148 WHERE     p.schriftinhalt IS NULL 
     149   AND NOT p.the_geom      IS NULL; 
     150 
     151-- Die immer noch leeren Texte sind sinnlos. 
     152DELETE FROM pp_strassenname_l WHERE schriftinhalt IS NULL; 
    109153 
    110154 
     
    113157-- ======================================================== 
    114158 
    115 -- Für die Regelung der Zugriffsberechtigung einer Gemeindeverwaltung auf die  
    116 -- Flurstücke in ihrem Gebiet braucht man die Information, in welcher Gemeinde eine Gemarkung liegt. 
     159-- FÃŒr die Regelung der Zugriffsberechtigung einer Gemeindeverwaltung auf die  
     160-- FlurstÃŒcke in ihrem Gebiet braucht man die Information, in welcher Gemeinde eine Gemarkung liegt. 
    117161-- 'ax_gemeinde' und 'ax_gemarkung' haben aber im ALKIS keinerlei Beziehung zueinander - kaum zu glauben! 
    118 -- Nur über die Auswertung der Flurstücke kann man die Zuordnung ermitteln. 
    119 -- Da nicht ständig mit 'SELECT DISTINCT' sämtliche Flurstücke durchsucht werden können,  
     162-- Nur ÃŒber die Auswertung der FlurstÃŒcke kann man die Zuordnung ermitteln. 
     163-- Da nicht stÀndig mit 'SELECT DISTINCT' sÀmtliche FlurstÃŒcke durchsucht werden können,  
    120164-- muss diese Information als (redundante) Tabelle nach dem Laden zwischengespeichert werden.  
    121165 
     
    174218 
    175219-- ============================================================================== 
    176 -- Geometrien der Flurstücke schrittweise zu groesseren Einheiten zusammen fassen 
     220-- Geometrien der FlurstÃŒcke schrittweise zu groesseren Einheiten zusammen fassen 
    177221-- ============================================================================== 
    178222 
    179 -- Dies macht nur Sinn, wenn der Inhalt der Datenbank einen ganzen Katasterbezirk enthält. 
     223-- Dies macht nur Sinn, wenn der Inhalt der Datenbank einen ganzen Katasterbezirk enthÀlt. 
    180224-- Wenn ein Gebiet durch geometrische Filter im NBA ausgegeben wurde, dann gibt es Randstreifen,  
    181225-- die zu Pseudo-Fluren zusammen gefasst werden. Fachlich falsch! 
    182226 
    183 -- Ausführungszeit: 1 mittlere Stadt mit ca. 14.000 Flurstücken > 100 Sek 
     227-- AusfÃŒhrungszeit: 1 mittlere Stadt mit ca. 14.000 FlurstÃŒcken > 100 Sek 
    184228 
    185229DELETE FROM pp_flur; 
     
    188232   SELECT  f.land, f.regierungsbezirk, f.kreis, f.gemarkungsnummer as gemarkung, f.flurnummer,  
    189233           count(gml_id) as anz_fs, 
    190            st_multi(st_union(st_buffer(f.wkb_geometry,0.05))) AS the_geom -- Zugabe um Zwischenräume zu vermeiden 
     234           st_multi(st_union(st_buffer(f.wkb_geometry,0.05))) AS the_geom -- Zugabe um ZwischenrÀume zu vermeiden 
    191235     FROM  ax_flurstueck f 
    192236     WHERE f.endet IS NULL 
     
    196240-- ------------------------------------- 
    197241 
    198 -- FEHLER: 290 Absturz PG! Bei Verwendung der ungebufferten präzisen Geometrie.   
     242-- FEHLER: 290 Absturz PG! Bei Verwendung der ungebufferten prÀzisen Geometrie.   
    199243-- bufferOriginalPrecision failed (TopologyException: unable to assign hole to a shell), trying with reduced precision 
    200 -- UPDATE: ../../source/headers/geos/noding/SegmentString.h:175: void geos::noding::SegmentString::testInvariant() const: Zusicherung »pts->size() > 1« nicht erfüllt. 
    201  
    202 -- Flächen vereinigen 
     244-- UPDATE: ../../source/headers/geos/noding/SegmentString.h:175: void geos::noding::SegmentString::testInvariant() const: Zusicherung »pts->size() > 1« nicht erfÃŒllt. 
     245 
     246-- FlÀchen vereinigen 
    203247UPDATE pp_gemarkung a 
    204248  SET the_geom =  
    205    ( SELECT st_multi(st_union(st_buffer(b.the_geom,0.1))) AS the_geom -- Puffer/Zugabe um Löcher zu vermeiden 
     249   ( SELECT st_multi(st_union(st_buffer(b.the_geom,0.1))) AS the_geom -- Puffer/Zugabe um Löcher zu vermeiden 
    206250       FROM pp_flur b 
    207251      WHERE a.land      = b.land  
     
    222266-- ---------------------------------------- 
    223267 
    224 -- Flächen vereinigen (aus der bereits vereinfachten Geometrie) 
     268-- FlÀchen vereinigen (aus der bereits vereinfachten Geometrie) 
    225269UPDATE pp_gemeinde a 
    226270  SET the_geom =  
     
    231275   ); 
    232276 
    233 -- Gemarkungen zählen 
     277-- Gemarkungen zÀhlen 
    234278UPDATE pp_gemeinde a 
    235279  SET anz_gemarkg =  
     
    241285 
    242286 
    243 -- Geometrie glätten / vereinfachen 
    244 -- Diese "simplen" Geometrien sollen nur für die Darstellung einer Übersicht verwendet werden. 
     287-- Geometrie glÀtten / vereinfachen 
     288-- Diese "simplen" Geometrien sollen nur fÃŒr die Darstellung einer Übersicht verwendet werden. 
    245289-- Ablage der simplen Geometrie in einem alternativen Geometriefeld im gleichen Datensatz. 
    246290 
     
    253297 
    254298-- ======================================================= 
    255 -- Tabelle fuer die Zuordnung vom Eigentümern zu Gemeinden 
     299-- Tabelle fuer die Zuordnung vom EigentÃŒmern zu Gemeinden 
    256300-- ======================================================= 
    257301 
     
    261305 
    262306-- alle direkten Buchungen mit View ermitteln und in Tabelle speichern 
    263 -- Für eine Stadt: ca. 20 Sekunden 
     307-- FÃŒr eine Stadt: ca. 20 Sekunden 
    264308INSERT INTO  gemeinde_person  
    265309       (land, regierungsbezirk, kreis, gemeinde, person, buchtyp) 
     
    268312 
    269313 
    270 -- noch die komplexeren Buchungen ergänzen (Recht an ..) 
     314-- noch die komplexeren Buchungen ergÀnzen (Recht an ..) 
    271315-- Mit View ermitteln und in Tabelle speichern 
    272 -- Für eine Stadt: ca. 10 Sekunden 
     316-- FÃŒr eine Stadt: ca. 10 Sekunden 
    273317INSERT INTO  gemeinde_person  
    274318       (  land,   regierungsbezirk,   kreis,   gemeinde,   person,  buchtyp) 
  • Version-0.8/import/sichten.sql

    r320 r324  
    1010--  Es werden zusÀtzliche Views eingerichtet, die nur bei Fehlersuche und Analyse (vom Entwickler) benötigt werden. 
    1111 
    12 --  PostNAS 0.7 
     12--  PostNAS 
    1313 
    1414--  2012-04-17 flstnr_ohne_position 
     
    3030--  2014-01-31 Kommentar 
    3131--  2014-02-06 nachmigration_aehnliche_anschriften 
     32--  2014-08-27 Die Tabelle "alkis_beziehungen" ÃŒberflÃŒssig machen. 
     33--             Relationen nun direkt ÃŒber neue Spalten in den Objekttabellen.  
     34 
    3235 
    3336-- Bausteine fÃŒr andere Views: 
     
    4750 
    4851--           DROP VIEW public.doppelverbindung; 
     52/*  
     53-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    4954CREATE OR REPLACE VIEW public.doppelverbindung 
    5055AS 
     
    6873   WHERE v2.beziehungsart = 'istGebucht'   -- FS --> Buchung 
    6974     AND an.beziehungsart = 'an'; 
     75*/ 
     76 
     77-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     78CREATE OR REPLACE VIEW public.doppelverbindung 
     79AS 
     80  -- FS >istGebucht> Buchungstelle 
     81  SELECT f1.gml_id             AS fsgml,    -- gml_id FlurstÃŒck 
     82         b1.gml_id             AS bsgml,    -- gml_id Buchungs 
     83         0                     AS ba_dien 
     84    FROM ax_flurstueck f1 
     85    JOIN ax_buchungsstelle b1   ON f1.istgebucht = b1.gml_id 
     86 UNION 
     87  -- FS >istGebucht> Buchungstelle  <an<  Buchungstelle 
     88  SELECT f2.gml_id              AS fsgml,   -- gml_id FlurstÃŒck 
     89         b2.gml_id              AS bsgml,   -- gml_id Buchung - (herrschendes GB) 
     90         dien.buchungsart       AS ba_dien  -- Ein Feld aus der Zwischen-Buchung zur Fall-Unterscheidung 
     91    FROM ax_flurstueck f2 
     92    JOIN ax_buchungsstelle dien ON f2.istGebucht = dien.gml_id 
     93    JOIN ax_buchungsstelle b2   ON dien.gml_id = ANY (b2.an); 
     94 
    7095 
    7196COMMENT ON VIEW public.doppelverbindung  
     
    81106-- Dies kann als "MittelstÃŒck" in den anderen Views eingefÃŒgt werden. 
    82107 
    83 --   FlurstÃŒck  >weistAuf> ax_lagebezeichnungmithausnummer  <JOIN> ax_lagebezeichnungkatalogeintrag 
    84 --   FlurstÃŒck  >zeigtAuf> ax_lagebezeichnungohnehausnummer <JOIN> ax_lagebezeichnungkatalogeintrag 
    85  
    86108--           DROP VIEW public.flst_an_strasse; 
     109/*  
     110-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     111 
    87112CREATE OR REPLACE VIEW public.flst_an_strasse 
    88113AS 
     
    117142     AND lo.lage=so.lage; 
    118143 
     144*/ 
     145 
     146-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     147CREATE OR REPLACE VIEW public.flst_an_strasse 
     148AS 
     149  -- FlurstÃŒck >weistAuf> ax_lagebezeichnungmithausnummer <JOIN> ax_lagebezeichnungkatalogeintrag 
     150  SELECT fm.gml_id AS fsgml, 
     151         sm.gml_id AS stgml,                 -- Filter: gml_id der Straße 
     152         'm' AS fall                         -- SÀtze unterschieden: Mit HsNr 
     153    FROM ax_flurstueck fm                    -- FlurstÃŒck Mit 
     154    JOIN ax_lagebezeichnungmithausnummer lm  -- Lage MIT 
     155      ON lm.gml_id = ANY (fm.weistauf)   
     156    JOIN ax_lagebezeichnungkatalogeintrag sm 
     157      ON lm.land=sm.land AND lm.regierungsbezirk=sm.regierungsbezirk AND lm.kreis=sm.kreis  AND lm.gemeinde=sm.gemeinde AND lm.lage=sm.lage  
     158 UNION 
     159  -- FlurstÃŒck >zeigtAuf> ax_lagebezeichnungohnehausnummer <JOIN> ax_lagebezeichnungkatalogeintrag 
     160  SELECT fo.gml_id AS fsgml, 
     161         so.gml_id AS stgml,                 -- Filter: gml_id der Straße 
     162         'o' AS fall                         -- SÀtze unterschieden: Ohne HsNr 
     163    FROM ax_flurstueck fo                    -- FlurstÃŒck OHNE 
     164    JOIN ax_lagebezeichnungohnehausnummer lo -- Lage OHNE 
     165      ON lo.gml_id = ANY (fo.zeigtauf)   
     166    JOIN ax_lagebezeichnungkatalogeintrag so -- Straße OHNE 
     167      ON lo.land=so.land AND lo.regierungsbezirk=so.regierungsbezirk AND lo.kreis=so.kreis AND lo.gemeinde=so.gemeinde AND lo.lage=so.lage; 
     168 
    119169COMMENT ON VIEW public.flst_an_strasse  
    120170 IS 'ALKIS-Beziehung von FlurstÃŒck zu Straßentabelle. UNION-Zusammenfassung der FÀlle MIT und OHNE Hausnummer.'; 
     
    145195 
    146196-- 2014-01-21: "Rechtsgemeinschaft" in den Datensatz aller anderen Namen 
     197 
    147198--           DROP VIEW exp_csv; 
     199 
     200/*  
     201-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     202 
     203    +++ HIER HIN KOPPIEREN ++++ 
     204 
     205*/ 
     206-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     207-- +++ ToDo 
     208 
     209 
    148210CREATE OR REPLACE VIEW exp_csv 
    149211AS 
     
    261323-- um alle FlurstÃŒcke zu bekommen, die an einer Straße liegen. 
    262324-- DROP           VIEW exp_csv_str; 
     325 
     326/*  
     327-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     328 
     329    +++ HIER HIN KOPPIEREN ++++ 
     330 
     331*/ 
     332-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     333-- +++ ToDo 
     334 
     335 
    263336CREATE OR REPLACE VIEW exp_csv_str 
    264337AS 
     
    384457-- (Diese Frage stellte sich beim Design des View "exp_csv".) 
    385458-- Schritt 1: alle vorhandenen 
     459 
     460/*  
     461-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     462 
     463    +++ HIER HIN KOPPIEREN ++++ 
     464 
     465*/ 
     466-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     467-- +++ ToDo 
     468 
     469 
    386470CREATE OR REPLACE VIEW rechtsgemeinschaften_zum_grundbuch 
    387471AS 
     
    405489 
    406490-- Schritt 2: Wo gibt es mehrere zu einem GB-Blatt 
     491 
     492/*  
     493-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     494 
     495    +++ HIER HIN KOPPIEREN ++++ 
     496 
     497*/ 
     498-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     499-- +++ ToDo 
     500 
    407501CREATE OR REPLACE VIEW rechtsgemeinschaften_zaehlen 
    408502AS 
     
    418512 
    419513-- Schritt 3: alle vorhandenen Zeilen anzeigen zu den GB-BlÀttern, bei denen es mehrere gibt. 
     514 
     515/*  
     516-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     517 
     518    +++ HIER HIN KOPPIEREN ++++ 
     519 
     520*/ 
     521-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     522-- +++ ToDo 
     523 
    420524CREATE OR REPLACE VIEW rechtsgemeinschaften_mehrfachzeilen 
    421525AS 
     
    477581 
    478582-- Diese FÀlle identifizieren 
     583 
     584/*  
     585-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     586 
     587    +++ HIER HIN KOPPIEREN ++++ 
     588 
     589*/ 
     590-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     591-- +++ ToDo 
     592 
     593 
    479594CREATE OR REPLACE VIEW flstnr_ohne_position 
    480595AS  
     
    586701-- Zuordnung dieser Adressen zu Flurstuecken 
    587702-- Schluessel der Gemeinde nach Bedarf anpassen! 
     703 
     704/*  
     705-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     706 
     707    +++ HIER HIN KOPPIEREN ++++ 
     708 
     709*/ 
     710-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     711-- +++ ToDo 
     712 
    588713CREATE OR REPLACE VIEW adressen_zum_flurstueck 
    589714AS 
     
    622747   WHERE not schriftinhalt is null  
    623748  ORDER BY art; 
     749 
    624750COMMENT ON VIEW beschriftung_was_kommt_vor IS 'Analyse der vorkommenden Kombinationen in ap_pto (Beschriftung)'; 
    625751 
     
    679805 
    680806-- Wobei ">xxx>" = JOIN ÃŒber die Verbindungs-Tabelle "alkis_beziehungen" mit der Beziehungsart "xxx". 
     807 
     808 
     809/*  
     810-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     811 
     812    +++ HIER HIB KOPIEREN +++ 
     813 
     814*/ 
     815-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     816-- +++ ToDo 
    681817 
    682818CREATE OR REPLACE VIEW flurstuecke_eines_eigentuemers  
     
    736872-- Person <benennt< NamNum. >istBestandteilVon> Blatt <istBestandteilVon< Stelle-h >an> Stelle-d >istGebucht> Flurstueck 
    737873-- Wobei ">xxx>" = JOIN ÃŒber die Verbindungs-Tabelle "alkis_beziehungen" mit der Beziehungsart "xxx". 
     874 
     875 
     876/*  
     877-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     878 
     879 
     880    +++ HIER HIN KOIEREN 
     881 
     882*/ 
     883-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
    738884 
    739885CREATE OR REPLACE VIEW rechte_eines_eigentuemers  
     
    831977-- Buchungsstelle bekommt, dann bleibt die alte Buchungsstelle in den alkis_beziehungen. 
    832978-- Mail PostNAS Mailingliste von 2013-02-20 
     979 
     980/*  
     981-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     982 
     983    +++ HIER HIN KOPPIEREN ++++ 
     984 
     985*/ 
     986-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     987-- +++ ToDo 
     988 
    833989CREATE OR REPLACE VIEW mehrfache_buchung_zu_fs 
    834990AS 
     
    8601016-- Die angezeigten FÀlle sind potentielle Fehler. 
    8611017 
     1018/*  
     1019-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     1020 
     1021    +++  HIER HIN KOPIEREN +++ 
     1022 
     1023*/ 
     1024-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     1025 
    8621026CREATE OR REPLACE VIEW fehler_hausnummer_mehrfach_verwendet 
    8631027AS 
     
    8761040-- Der umgekehrt Fall ist erlaubt. 
    8771041-- GebÀude hat mehrere Nummern. 
     1042 
     1043/*  
     1044-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     1045 
     1046    +++ HIER HIN +++ 
     1047 
     1048*/ 
     1049-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
    8781050 
    8791051CREATE OR REPLACE VIEW adressen_zu_gebauede_mit_mehreren_hausnummern 
     
    9121084-- Analyse: FÀlle mit Erbbaurecht 
    9131085-- Benutzt den Baustein-View "doppelverbindung" 
     1086 
     1087--   +++ BESSER: analog doppelverbindung direkt codieren 
     1088 
    9141089CREATE OR REPLACE VIEW erbbaurechte_suchen 
    9151090AS 
     
    9561131-- Diese FÀlle fÃŒhren möglicherweise zu unvollstÀndiger Ausgabe beim Export "alle FlurstÃŒcke an einer Straße" 
    9571132-- weil nur Lagebezeichnung MIT und OHNE Hausnummer gesucht wird, aber keine gleich lautende Gewanne. 
     1133 
     1134 
     1135/*  
     1136-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     1137 
     1138    +++ HIER HIN KOPIEREN  +++ 
     1139 
     1140*/ 
     1141-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     1142 
    9581143CREATE OR REPLACE VIEW strasse_als_gewanne 
    9591144AS 
     
    9831168-- Wie zuvor, aber die FlurstÃŒcke werden hier nicht nur gezÀhlt sondern auch aufgelistet. 
    9841169-- das Format des FlusrtÃŒckskennzeichens kann in die Mapbender-Navigation eingegeben werden. 
     1170 
     1171/*  
     1172-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     1173 
     1174    +++ HIER HIN KOPIEREN  +++ 
     1175 
     1176*/ 
     1177-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     1178 
    9851179CREATE OR REPLACE VIEW strasse_als_gewanne_flst 
    9861180AS 
     
    10091203-- im Rahmen der Nachmigration noch korrigiert werden muessen. 
    10101204 
     1205 
     1206/*  
     1207-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     1208 
     1209    +++ HIER HIN KOPIEREN  +++ 
     1210 
     1211*/ 
     1212-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     1213 
    10111214CREATE OR REPLACE VIEW nachmigration_aehnliche_anschriften 
    10121215AS 
  • Version-0.8/import/sichten_wms.sql

    r296 r324  
    33-- ===== 
    44 
    5 --  PostNAS 0.7 
     5--  PostNAS 
    66 
    77--  ----------------------------------------- 
     
    2222--  2013-04-22 art="PNR" (Pseudonummer) 
    2323--  2013-10-24 View ap_pto_stra wird ersetzt durch die Tabellen "pp_strassenname" und "pp_strassenklas", die im postProcessing gefÃŒllt werden. 
    24  
    25  
    26 -- WMS-Layer "ag_t_flurstueck" 
    27 -- --------------------------- 
    28 -- Die Geometrie befindet sich in "ap_pto", der Label in "ax_flurstueck" 
    29 -- Die Verbindung erfolgt ÃŒber "alkis_beziehungen" 
    30  
    31 -- Bruchnummerierung erzeugen 
    32 -- ALT 2012-04-17: Diese Version zeigt nur die manuell gesetzten Positionen 
    33 -- 2013-04-18 auskommentiert 
    34 --      CREATE OR REPLACE VIEW s_flurstueck_nr 
    35 --      AS  
    36 --       SELECT f.ogc_fid,  
    37 --                      p.wkb_geometry,  -- Position des Textes 
    38 --                      f.zaehler::text || COALESCE ('/' || f.nenner::text, '') AS fsnum 
    39 --         FROM ap_pto             p 
    40 --         JOIN alkis_beziehungen  v  ON p.gml_id       = v.beziehung_von 
    41 --         JOIN ax_flurstueck      f  ON v.beziehung_zu = f.gml_id 
    42 --        WHERE v.beziehungsart = 'dientZurDarstellungVon'  
    43 --              AND p.endet IS NULL  AND f.endet IS NULL; 
    44 --      COMMENT ON VIEW s_flurstueck_nr IS 'Sicht fÃŒr Kartendarstellung ÃŒber PostProcessing: Bruchnummerierung FlurstÃŒck (nur manuell gesetzte Positionen)'; 
    45  
    46 -- Wenn keine manuelle Position gesetzt ist, wird die Flaechenmitte verwendet 
    47  
    48 -- ACHTUNG: Dieser View kann nicht direkt im Mapserver-WMS verwendet werden. 
    49 -- Die Anzeige ist zu langsam. Filterung ÃŒber BBOX kann nicht funktionieren, da zunÀchst ALLE Standardpositionen  
    50 -- berechnet werden mÃŒssen, bevor darÃŒber gefiltert werden kann. 
    51  
    52 -- In einer Hilfstabelle mit geometrischem Index zwischenspeichern. 
    53 -- Siehe PostProcessing: Tabelle "pp_flurstueck_nr" 
    54  
    55 -- 2013-04-18 auskommentiert 
    56 --      CREATE OR REPLACE VIEW s_flurstueck_nr2 
    57 --      AS  
    58 --        SELECT f.ogc_fid,  
    59 --                       p.wkb_geometry,  -- manuelle Position des Textes 
    60 --                       f.zaehler::text || COALESCE ('/' || f.nenner::text, '') AS fsnum 
    61 --              FROM ap_pto             p 
    62 --              JOIN alkis_beziehungen  v  ON p.gml_id       = v.beziehung_von 
    63 --              JOIN ax_flurstueck      f  ON v.beziehung_zu = f.gml_id 
    64 --         WHERE v.beziehungsart = 'dientZurDarstellungVon'  
    65 --               AND p.endet IS NULL 
    66 --               AND f.endet IS NULL 
    67 --       UNION  
    68 --        SELECT f.ogc_fid, 
    69 --                       ST_PointOnSurface(f.wkb_geometry) AS wkb_geometry,  -- FlÀchenmitte als Position des Textes 
    70 --                       f.zaehler::text || COALESCE ('/' || f.nenner::text, '') AS fsnum 
    71 --              FROM      ax_flurstueck     f  
    72 --              LEFT JOIN alkis_beziehungen v  ON v.beziehung_zu = f.gml_id 
    73 --         WHERE v.beziehungsart is NULL AND f.endet IS NULL; 
    74 --      COMMENT ON VIEW s_flurstueck_nr2  
    75 --       IS 'Sicht fÃŒr Kartendarstellung ÃŒber PostProcessing: Bruchnummerierung FlurstÃŒck, auch Standard-Position. Nicht direkt fuer WMS verwenden!'; 
     24--  2014-02-24 Kein Filter auf advstandardmodell bei FlurstÃŒcks-Zuordnungspfeil 
     25--  2014-08-26 View "ap_lto_stra" analog "ap_pto_stra" fÃŒr Straßennamen auf Linien-Geometrie 
     26 
     27--  2014-08-27 Die Tabelle "alkis_beziehungen" ÃŒberflÃŒssig machen. 
     28--             Relationen nun direkt ÃŒber neue Spalten in den Objekttabellen.  
    7629 
    7730 
     
    8033-- Problem: Zu einigen GebÀuden gibt es mehrere Hausnummern. 
    8134-- Diese unterscheiden sich im Feld ap_pto.advstandardmodell 
    82 -- z.B. 3 verschiedene EintrÀge mit <NULL>, {DKKM500}, {DKKM1000}, (Beispiel; Lage, Lange Straße 15 c) 
    83  
    84  -- DROP VIEW s_hausnummer_gebaeude; 
    85  --     CREATE OR REPLACE VIEW s_hausnummer_gebaeude  
    86  --     AS  
    87  --      SELECT p.ogc_fid, p.wkb_geometry, 
    88  --                     p.drehwinkel * 57.296 AS drehwinkel, -- umn: ANGLE [drehwinkel] 
    89  --                     l.hausnummer                                     -- umn: LABELITEM 
    90  --        FROM ap_pto p 
    91  --        JOIN alkis_beziehungen v ON p.gml_id = v.beziehung_von 
    92  --        JOIN ax_lagebezeichnungmithausnummer l ON v.beziehung_zu  = l.gml_id 
    93  --       WHERE v.beziehungsart = 'dientZurDarstellungVon' 
    94  --             AND p.endet IS NULL AND l.endet IS NULL; 
    95  --     COMMENT ON VIEW s_hausnummer_gebaeude IS 'fuer Kartendarstellung: Hausnummern HauptgebÀude'; 
    96  
    97 -- Verbesserte Version 2013-03-07 
    98 -- Nimmt nun vorzugsweise den Text der Darstellung aus ap_pto (bei ibR immer gefÃŒllt). 
    99 -- Wenn der nicht gefÃŒllt ist, wird statt dessen die Nummer aus der verknÃŒpften Labebezeichnung  
    100 -- verwendet (der hÀufigste Fall bei AED).  
     35-- z.B. 3 verschiedene EintrÀge mit <NULL>, {DKKM500}, {DKKM1000} 
     36 
     37-- Nimmt vorzugsweise den Text der Darstellung aus ap_pto (nach der Migration zunÀchst ibR immer gefÃŒllt). 
     38-- Wenn der nicht gefÃŒllt ist, wird statt dessen die Nummer aus der verknÃŒpften Labebezeichnung verwendet. 
     39 
     40 
     41/*  
     42-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     43 
    10144CREATE OR REPLACE VIEW s_hausnummer_gebaeude  
    10245AS  
    10346 SELECT p.ogc_fid,  
    104         p.wkb_geometry,                               -- Point 
     47        p.wkb_geometry,                            -- Point 
    10548        p.drehwinkel * 57.296 AS drehwinkel,  -- umn: ANGLE 
    10649    --  p.art, 
     
    12164        AND p.endet IS NULL 
    12265        AND l.endet IS NULL; 
     66 
     67*/ 
     68 
     69-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     70CREATE OR REPLACE VIEW s_hausnummer_gebaeude  
     71AS  
     72 SELECT p.ogc_fid,  
     73        p.wkb_geometry,                       -- Point 
     74        p.drehwinkel * 57.296 AS drehwinkel,  -- umn: ANGLE 
     75    --  p.horizontaleausrichtung  AS hor,     -- = 'zentrisch' 
     76    --  p.vertikaleausrichtung    AS ver,     -- = 'Basis' (oft), "Mitte" (selten) 
     77    --  p.schriftinhalt,                      -- WMS: das bessere LABELITEM, kann aber leer sein 
     78    --  l.hausnummer,                         -- WMS: LABELITEM default/native 
     79        COALESCE(p.schriftinhalt, l.hausnummer) AS hausnummer 
     80   FROM ap_pto p 
     81   JOIN ax_lagebezeichnungmithausnummer l       ON l.gml_id = ANY (p.dientzurdarstellungvon)  
     82  WHERE p.art = 'HNR' 
     83    AND 'DKKM1000' = ANY (p.advstandardmodell) -- erste NÀherungslösung um Redundanzen zu unterdrÃŒcken 
     84    AND p.endet IS NULL 
     85    AND l.endet IS NULL; 
     86 
    12387COMMENT ON VIEW s_hausnummer_gebaeude IS 'Sicht fÃŒr Kartendarstellung: Hausnummern der HauptgebÀude.'; 
    12488-- ibR: darzustellender Text steht immer in ap_pto.schriftinhalt 
     
    12892--   Das wÃŒrde die COALESCE-Trickserei ersparen 
    12993 
    130  
    13194-- Layer "ag_t_nebengeb" 
    13295-- --------------------- 
    133 -- 2013-03-05: Diese Abfrage liefert keine Daten mehr. 
    134 --      CREATE OR REPLACE VIEW s_nummer_nebengebaeude  
    135 --      AS  
    136 --       SELECT p.ogc_fid, p.wkb_geometry,  
    137 --                      p.drehwinkel * 57.296 AS drehwinkel,    -- umn: ANGLE [drehwinkel] 
    138 --               -- l.pseudonummer,                     -- die HsNr des zugehoerigen Hauptgebaeudes 
    139 --                      l.laufendenummer                -- umn: LABELITEM - die laufende Nummer des Nebengebaeudes 
    140 --         FROM ap_pto p 
    141 --         JOIN alkis_beziehungen v  
    142 --               ON p.gml_id = v.beziehung_von 
    143 --         JOIN ax_lagebezeichnungmitpseudonummer l 
    144 --               ON v.beziehung_zu  = l.gml_id 
    145 --        WHERE v.beziehungsart = 'dientZurDarstellungVon' 
    146 --              AND p.endet IS NULL AND l.endet IS NULL; 
    147 --      COMMENT ON VIEW s_nummer_nebengebaeude IS 'Sicht fÃŒr Kartendarstellung: Hausnummern NebengebÀude (manuelle Position)'; 
    148  
    149 -- Suche nach einem Ersatz: 
    15096-- ax_gebaeude  >hat>  ax_lagebezeichnungmitpseudonummer, kein Drehwinkel. 
     97 
     98/*  
     99-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     100 
    151101CREATE OR REPLACE VIEW lfdnr_nebengebaeude  
    152102AS  
    153103 SELECT g.ogc_fid,  
    154104        g.wkb_geometry,  
    155     --  l.pseudonummer,                 -- TEST die HsNr des zugehoerigen Hauptgebaeudes 
    156         l.laufendenummer                -- umn: LABELITEM - die laufende Nummer des Nebengebaeudes 
     105    --  l.pseudonummer,      -- TEST die HsNr des zugehoerigen Hauptgebaeudes 
     106        l.laufendenummer     -- umn: LABELITEM - die laufende Nummer des Nebengebaeudes 
    157107   FROM ax_gebaeude g 
    158108   JOIN alkis_beziehungen v  
     
    162112   WHERE v.beziehungsart = 'hat' 
    163113     AND g.endet IS NULL 
    164      AND g.endet IS NULL; 
     114     AND l.endet IS NULL; 
     115 
     116*/ 
     117-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     118CREATE OR REPLACE VIEW lfdnr_nebengebaeude  
     119AS  
     120 SELECT g.ogc_fid,  
     121        g.wkb_geometry,  
     122        l.laufendenummer     -- umn: LABELITEM - die laufende Nummer des Nebengebaeudes 
     123   FROM ax_gebaeude g 
     124   JOIN ax_lagebezeichnungmitpseudonummer l 
     125     ON g.hat = l.gml_id 
     126   WHERE g.endet IS NULL AND l.endet IS NULL; 
     127 
    165128COMMENT ON VIEW lfdnr_nebengebaeude  
    166129  IS 'Sicht fÃŒr Kartendarstellung: Laufende Nummer des NebengebÀudes zu einer Lagebezeichnung mit der FlÀchengeometrie des GebÀudes'; 
    167  
    168130 
    169131-- GebÀude-Text 
     
    180142  WHERE g.endet IS NULL  
    181143    AND g.gebaeudefunktion < 9998; -- "Nach Quellenlage nicht zu spezifizieren" braucht man nicht anzeigen 
     144 
    182145COMMENT ON VIEW gebaeude_txt  
    183146  IS 'Sicht fÃŒr Kartendarstellung: Name zum GebÀude und EntschlÃŒsselung der GebÀude-Funktion (Ersatz fÃŒr Symbole)'; 
    184147 
    185  
    186148-- Layer "ag_p_flurstueck" 
    187149-- ----------------------- 
     150 
     151/*  
     152-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    188153CREATE OR REPLACE VIEW s_zugehoerigkeitshaken_flurstueck  
    189154AS  
     
    201166    AND f.endet IS NULL 
    202167    AND p.endet IS NULL; 
     168 
     169*/ 
     170 
     171-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     172CREATE OR REPLACE VIEW s_zugehoerigkeitshaken_flurstueck  
     173AS  
     174 SELECT p.ogc_fid,  
     175        p.wkb_geometry,  
     176        p.drehwinkel * 57.296 AS drehwinkel 
     177   FROM ap_ppo p 
     178   JOIN ax_flurstueck f 
     179     ON f.gml_id = ANY (p.dientZurDarstellungVon)   
     180  WHERE p.art = 'Haken' 
     181    AND f.endet IS NULL 
     182    AND p.endet IS NULL; 
     183 
    203184COMMENT ON VIEW s_zugehoerigkeitshaken_flurstueck  
    204185  IS 'Sicht fÃŒr Kartendarstellung: Zugehörigkeitshaken zum FlurstÃŒck.'; 
    205186 
    206  
    207187-- Layer "s_zuordungspfeil_flurstueck" (Signaturnummer 2004) 
    208188-- ----------------------------------- 
     189 
     190/*  
     191-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     192 
    209193CREATE OR REPLACE VIEW s_zuordungspfeil_flurstueck  
    210194AS  
     
    218202  WHERE l.art = 'Pfeil' 
    219203    AND v.beziehungsart = 'dientZurDarstellungVon' 
    220     AND ('DKKM1000' ~~ ANY (l.advstandardmodell)) 
    221204    AND f.endet IS NULL 
    222205    AND l.endet IS NULL; 
    223 -- Die OBK-Alternative "sk2004_zuordnungspfeil" wird NICHT verwendet. Siehe dort. 
     206 
     207*/ 
     208-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     209CREATE OR REPLACE VIEW s_zuordungspfeil_flurstueck  
     210AS  
     211 SELECT l.ogc_fid,  
     212        l.wkb_geometry 
     213   FROM ap_lpo l 
     214   JOIN ax_flurstueck f 
     215     ON f.gml_id = ANY (l.dientZurDarstellungVon)  
     216  WHERE l.art = 'Pfeil' 
     217    AND f.endet IS NULL 
     218    AND l.endet IS NULL; 
     219 
    224220COMMENT ON VIEW s_zuordungspfeil_flurstueck  
    225221  IS 'Sicht fÃŒr Kartendarstellung: Zuordnungspfeil zur FlurstÃŒcksnummer, Liniengeometrie.'; 
    226222 
    227  
     223/*  
     224-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    228225CREATE OR REPLACE VIEW s_zuordungspfeilspitze_flurstueck  
    229226AS  
     
    239236  WHERE l.art = 'Pfeil' 
    240237    AND v.beziehungsart = 'dientZurDarstellungVon' 
    241     AND ('DKKM1000' ~~ ANY (l.advstandardmodell)) 
    242238    AND f.endet IS NULL 
    243239    AND l.endet IS NULL; 
    244 -- Die OBK-Alternativen "sk2004_zuordnungspfeil_spitze" wird NICHT verwendet. Siehe dort. 
     240 
     241*/ 
     242-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     243CREATE OR REPLACE VIEW s_zuordungspfeilspitze_flurstueck  
     244AS  
     245 SELECT l.ogc_fid,  
     246        (((st_azimuth(st_pointn(l.wkb_geometry, 1),  
     247        st_pointn(l.wkb_geometry, 2)) * (- (180)::double precision)) / pi()) + (90)::double precision) AS winkel,  
     248        st_startpoint(l.wkb_geometry) AS wkb_geometry  
     249   FROM ap_lpo l 
     250   JOIN ax_flurstueck f 
     251     ON f.gml_id = ANY (l.dientzurdarstellungvon)  
     252  WHERE l.art = 'Pfeil' 
     253    AND f.endet IS NULL 
     254    AND l.endet IS NULL; 
     255 
    245256COMMENT ON VIEW s_zuordungspfeilspitze_flurstueck  
    246257  IS 'Sicht fÃŒr Kartendarstellung: Zuordnungspfeil FlurstÃŒcksnummer, Spitze, Punktgeometrie mit Drehwinkel.'; 
     
    251262-- Zuordnungspfeil BodenschÀtzung (Signaturnummer 2701) 
    252263-- ---------------------------------------------------- 
     264 
     265/*  
     266-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    253267CREATE OR REPLACE VIEW s_zuordungspfeil_bodensch 
    254268AS  
     
    265279    AND b.endet IS NULL 
    266280    AND l.endet IS NULL; 
     281 
     282*/ 
     283 
     284-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     285CREATE OR REPLACE VIEW s_zuordungspfeil_bodensch 
     286AS  
     287 SELECT l.ogc_fid,  
     288        l.wkb_geometry 
     289   FROM ap_lpo l 
     290   JOIN ax_bodenschaetzung b 
     291     ON b.gml_id = ANY (l.dientzurdarstellungvon) 
     292  WHERE l.art = 'Pfeil' 
     293    AND ('DKKM1000' = ANY (l.advstandardmodell)) 
     294    AND b.endet IS NULL 
     295    AND l.endet IS NULL; 
     296 
    267297COMMENT ON VIEW s_zuordungspfeil_bodensch  
    268298  IS 'Sicht fÃŒr Kartendarstellung: Zuordnungspfeil BodenschÀtzung, Liniengeometrie.'; 
     299 
     300 
     301/*  
     302-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    269303 
    270304CREATE OR REPLACE VIEW s_zuordungspfeilspitze_bodensch  
     
    284318    AND b.endet IS NULL 
    285319    AND l.endet IS NULL; 
    286 -- Die OBK-Alternativen "sk2004_zuordnungspfeil_spitze" wird NICHT verwendet. Siehe dort. 
     320 
     321*/ 
     322 
     323-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     324CREATE OR REPLACE VIEW s_zuordungspfeilspitze_bodensch  
     325AS  
     326 SELECT l.ogc_fid,  
     327        (((st_azimuth(st_pointn(l.wkb_geometry, 1),  
     328        st_pointn(l.wkb_geometry, 2)) * (- (180)::double precision)) / pi()) + (90)::double precision) AS winkel,  
     329        st_startpoint(l.wkb_geometry) AS wkb_geometry  
     330   FROM ap_lpo l 
     331   JOIN ax_bodenschaetzung b 
     332     ON b.gml_id = ANY (l.dientzurdarstellungvon ) 
     333  WHERE l.art = 'Pfeil' 
     334    AND 'DKKM1000' = ANY (l.advstandardmodell) 
     335    AND b.endet IS NULL 
     336    AND l.endet IS NULL; 
     337 
    287338COMMENT ON VIEW s_zuordungspfeilspitze_flurstueck IS 'Sicht fÃŒr Kartendarstellung: Zuordnungspfeil BodenschÀtzung, Spitze, Punktgeometrie mit Drehwinkel.'; 
    288339 
     
    293344-- Eine Relation wird fuer die Gruppierung verwendet: 
    294345--  ap_pto >dientZurDarstellungVon> ax_lagebezeichnungohnehausnummer 
     346 
     347-- 2014-08-26: Spalte gml_id hinzugefÃŒgt. 
     348-- Auch Zeilen mit leerem Schriftinhalt verwenden. Das wird im PostProcessing noch ergÀnzt.  
     349 
     350-- DROP VIEW ap_pto_stra; 
     351 
     352/*  
     353-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     354 
    295355CREATE OR REPLACE VIEW ap_pto_stra  
    296356AS  
    297357  SELECT p.ogc_fid, 
    298           -- p.advstandardmodell       AS modell,    -- TEST 
    299       -- l.gml_id, l.unverschluesselt, l.lage AS schluessel, -- zur Lage  TEST 
     358         l.gml_id,                               -- wird im PP zum Nachladen aus Katalog gebraucht 
     359      -- p.advstandardmodell       AS modell,    -- TEST 
     360      -- l.unverschluesselt, l.lage AS schluessel, -- zur Lage  TEST 
    300361         p.schriftinhalt,                        -- WMS: LABELITEM 
    301362         p.art,                                  -- WMS: CLASSITEM 
     
    309370    JOIN ax_lagebezeichnungohnehausnummer l 
    310371      ON v.beziehung_zu = l.gml_id 
    311    WHERE NOT p.schriftinhalt IS NULL  
    312      AND  p.endet IS NULL                            -- nichts historisches 
     372   WHERE -- NOT p.schriftinhalt IS NULL   AND 
     373          p.endet IS NULL                            -- nichts historisches 
    313374     AND  p.art   IN ('Strasse','Weg','Platz','BezKlassifizierungStrasse') -- Diese Werte als CLASSES in LAYER behandeln.  
    314375     AND  v.beziehungsart = 'dientZurDarstellungVon' -- kann, muss aber nicht 
    315      AND ('DKKM1000' = ANY (p.advstandardmodell)     -- "Lika 1000" bevorzugen 
     376 
     377     AND (   'DKKM1000' = ANY (p.advstandardmodell) -- "Lika 1000" bevorzugen 
     378          OR 'DLKM'     = ANY (p.advstandardmodell) -- oder auch Kataster allgemein  
    316379           -- Ersatzweise auch "keine Angabe", aber nur wenn es keinen besseren Text zur Lage gibt 
    317            OR (p.advstandardmodell IS NULL 
     380          OR (p.advstandardmodell IS NULL 
    318381               AND (SELECT s.ogc_fid                -- irgend ein Feld 
    319                                           FROM ap_pto s                 -- eines anderen Textes (suchen) 
     382                      FROM ap_pto s                 -- eines anderen Textes (suchen) 
    320383                      JOIN alkis_beziehungen vs     -- zur gleichen Lage o.HsNr 
    321384                        ON s.gml_id = vs.beziehung_von 
     
    326389                       AND NOT s.advstandardmodell IS NULL  
    327390                     LIMIT 1  -- einer reicht als Beweis 
    328                                         ) IS NULL  
     391                   ) IS NULL  
    329392              ) -- "Subquery IS NULL" liefert true wenn kein weiterer Text gefunden wird 
    330393         ) 
    331394; 
     395 
     396*/ 
     397 
     398-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     399CREATE OR REPLACE VIEW ap_pto_stra  
     400AS  
     401  SELECT p.ogc_fid, 
     402         l.gml_id,                               -- wird im PP zum Nachladen aus Katalog gebraucht 
     403      -- p.advstandardmodell       AS modell,    -- TEST 
     404      -- l.unverschluesselt, l.lage AS schluessel, -- zur Lage  TEST 
     405         p.schriftinhalt,                        -- WMS: LABELITEM 
     406         p.art,                                  -- WMS: CLASSITEM 
     407         p.horizontaleausrichtung  AS hor,       -- Verfeinern der Text-Position .. 
     408         p.vertikaleausrichtung    AS ver,       --  .. durch Klassifizierung hor/ver 
     409         p.drehwinkel * 57.296     AS winkel,    -- * 180 / Pi 
     410         p.wkb_geometry 
     411    FROM ap_pto p 
     412    JOIN ax_lagebezeichnungohnehausnummer l 
     413      ON l.gml_id = ANY (p.dientzurdarstellungvon) 
     414   WHERE  p.endet IS NULL 
     415     AND  p.art IN ('Strasse','Weg','Platz','BezKlassifizierungStrasse') -- CLASSES im LAYER 
     416     AND (   'DKKM1000' = ANY (p.advstandardmodell) -- "Lika 1000" bevorzugen 
     417          OR 'DLKM'     = ANY (p.advstandardmodell) -- oder auch Kataster allgemein  
     418           -- Ersatzweise auch "keine Angabe", aber nur wenn es keinen besseren Text zur Lage gibt 
     419          OR (p.advstandardmodell IS NULL 
     420               AND (SELECT s.ogc_fid                -- irgend ein Feld 
     421                      FROM ap_pto s                 -- eines anderen Textes (suchen) 
     422                      JOIN ax_lagebezeichnungohnehausnummer ls 
     423                        ON ls.gml_id = ANY(s.dientzurdarstellungvon) 
     424                      WHERE ls.gml_id = l.gml_id 
     425                       AND NOT s.advstandardmodell IS NULL  
     426                     LIMIT 1  -- einer reicht als Beweis 
     427                   ) IS NULL  
     428              ) -- "Subquery IS NULL" liefert true wenn kein weiterer Text gefunden wird 
     429         ) 
     430; 
     431 
    332432COMMENT ON VIEW ap_pto_stra  
    333   IS 'Sicht fÃŒr Kartendarstellung: Beschriftung aus ap_pto fÃŒr Lagebezeichnung mit Art "Straße", "Weg", "Platz" oder Klassifizierung. Vorzugsweise mit advstandardmodell="DKKM1000", ersatzweise ohne Angabe. Siehe auch pp_strassenname und pp_strassenklas'; 
    334  
    335 -- 2013-10-24: Daten aus dem View "ap_pto_stra" werden im PostProcessing gespeichert in den Tabellen "pp_strassenname" und "pp_strassenklas". 
     433  IS 'Sicht fÃŒr Kartendarstellung: Beschriftung aus "ap_pto" fÃŒr Lagebezeichnung mit Art "Straße", "Weg", "Platz" oder Klassifizierung. 
     434 Vorzugsweise mit advstandardmodell="DKKM1000", ersatzweise ohne Angabe. Dient im Script pp_laden.sql zum ersten FÃŒllen der Tabelle "pp_strassenname_p".'; 
     435 
     436-- 2013-10-26: Daten aus dem View "ap_pto_stra" werden im PostProcessing gespeichert in den Tabellen "pp_strassenname" und "pp_strassenklas". 
    336437-- Der View ÃŒbernimmt die Auswahl des passenden advstandardmodell und rechnet den Winkel passend um, 
    337438-- In der Tabelle werden dann die leer gebliebenen Label aus dem Katalog noch ergÀnzt. 
     439 
     440-- DROP VIEW ap_lto_stra; 
     441 
     442/*  
     443-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     444 
     445CREATE OR REPLACE VIEW ap_lto_stra  
     446AS  
     447  SELECT p.ogc_fid, 
     448         l.gml_id,                               -- wird im PP zum Nachladen aus Katalog gebraucht 
     449         p.schriftinhalt,                        -- WMS: LABELITEM 
     450         p.art,                                  -- WMS: CLASSITEM 
     451         p.horizontaleausrichtung  AS hor,       -- Verfeinern der Text-Position .. 
     452         p.vertikaleausrichtung    AS ver,       --  .. durch Klassifizierung hor/ver 
     453         p.wkb_geometry 
     454    FROM ap_lto p 
     455    JOIN alkis_beziehungen v   -- Relation zur Lagebezeichnung o. HsNr. 
     456      ON p.gml_id = v.beziehung_von 
     457    JOIN ax_lagebezeichnungohnehausnummer l 
     458      ON v.beziehung_zu = l.gml_id 
     459   WHERE  p.endet IS NULL                            -- nichts historisches 
     460     AND  p.art   IN ('Strasse','Weg','Platz','BezKlassifizierungStrasse') -- Diese Werte als CLASSES in LAYER behandeln.  
     461     AND  v.beziehungsart = 'dientZurDarstellungVon' -- kann, muss aber nicht 
     462     AND (    'DKKM1000' = ANY (p.advstandardmodell) -- "Lika 1000" bevorzugen 
     463           OR 'DLKM'     = ANY (p.advstandardmodell) -- oder auch Kataster allgemein? 
     464           -- Ersatzweise auch "keine Angabe", aber nur wenn es keinen besseren Text zur Lage gibt 
     465           OR (p.advstandardmodell IS NULL 
     466               AND (SELECT s.ogc_fid                 -- irgend ein Feld 
     467                      FROM ap_lto s                  -- eines anderen Textes (suchen) 
     468                      JOIN alkis_beziehungen vs      -- zur gleichen Lage o.HsNr 
     469                        ON s.gml_id = vs.beziehung_von 
     470                      JOIN ax_lagebezeichnungohnehausnummer ls 
     471                        ON vs.beziehung_zu = ls.gml_id 
     472                     WHERE ls.gml_id = l.gml_id 
     473                       AND vs.beziehungsart = 'dientZurDarstellungVon' -- kann, muss aber nicht 
     474                       AND NOT s.advstandardmodell IS NULL  
     475                     LIMIT 1  -- einer reicht als Beweis 
     476                   ) IS NULL  
     477              ) -- "Subquery IS NULL" liefert true wenn kein weiterer Text gefunden wird 
     478         ) 
     479; 
     480 
     481*/ 
     482-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     483CREATE OR REPLACE VIEW ap_lto_stra  
     484AS  
     485  SELECT p.ogc_fid, 
     486         l.gml_id,                               -- wird im PP zum Nachladen aus Katalog gebraucht 
     487         p.schriftinhalt,                        -- WMS: LABELITEM 
     488         p.art,                                  -- WMS: CLASSITEM 
     489         p.horizontaleausrichtung  AS hor,       -- Verfeinern der Text-Position .. 
     490         p.vertikaleausrichtung    AS ver,       --  .. durch Klassifizierung hor/ver 
     491         p.wkb_geometry 
     492    FROM ap_lto p 
     493    JOIN ax_lagebezeichnungohnehausnummer l 
     494      ON l.gml_id = ANY (p.dientzurdarstellungvon) 
     495   WHERE  p.endet IS NULL 
     496     AND  p.art   IN ('Strasse','Weg','Platz','BezKlassifizierungStrasse') -- Diese Werte als CLASSES in LAYER behandeln.  
     497     AND (    'DKKM1000' = ANY (p.advstandardmodell) -- "Lika 1000" bevorzugen 
     498           OR 'DLKM'     = ANY (p.advstandardmodell) -- oder auch Kataster allgemein? 
     499           -- Ersatzweise auch "keine Angabe", aber nur wenn es keinen besseren Text zur Lage gibt 
     500           OR (p.advstandardmodell IS NULL 
     501               AND (SELECT s.ogc_fid                 -- irgend ein Feld 
     502                      FROM ap_lto s                  -- eines anderen Textes (suchen) 
     503                      JOIN ax_lagebezeichnungohnehausnummer ls 
     504                        ON ls.gml_id = ANY(s.dientzurdarstellungvon) 
     505                     WHERE ls.gml_id = l.gml_id 
     506                       AND NOT s.advstandardmodell IS NULL  
     507                     LIMIT 1  -- einer reicht als Beweis 
     508                   ) IS NULL  
     509              ) -- "Subquery IS NULL" liefert true wenn kein weiterer Text gefunden wird 
     510         ) 
     511; 
     512 
     513COMMENT ON VIEW ap_lto_stra  
     514  IS 'Sicht fÃŒr Kartendarstellung: Beschriftung aus "ap_lto" fÃŒr Lagebezeichnung mit Art "Straße", "Weg", "Platz" oder Klassifizierung. 
     515 Vorzugsweise mit advstandardmodell="DKKM1000", ersatzweise ohne Angabe. Dient im Script pp_laden.sql zum ersten FÃŒllen der Tabelle "pp_strassenname_l".'; 
     516 
     517-- 2014-08-26: Daten aus dem View "ap_lto_stra" werden im PostProcessing gespeichert in den Tabellen "pp_strassenname_l". 
     518-- Der View ÃŒbernimmt die Auswahl des passenden advstandardmodell. 
     519-- In der Tabelle werden dann die leer gebliebenen Label aus dem Katalog noch ergÀnzt. 
     520 
    338521 
    339522-- Layer NAME "ap_pto_nam" GROUP "praesentation" 
     
    348531-- Entweder Layer trennen nach Text-Typen "NAM"+"ZNM" und dem Rest 
    349532-- ODER           trennen nach fachlichen Ebenen wie "Nutzung" und "GebÀude" und .... 
     533 
     534/*  
     535-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    350536 
    351537CREATE OR REPLACE VIEW ap_pto_nam  
     
    383569         ) 
    384570; 
     571 
     572*/ 
     573 
     574-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     575CREATE OR REPLACE VIEW ap_pto_nam  
     576AS  
     577  SELECT p.ogc_fid, 
     578         p.schriftinhalt,                        -- WMS: LABELITEM 
     579         p.art,                                  -- WMS: CLASSITEM 
     580         p.horizontaleausrichtung  AS hor,       -- Verfeinern der Text-Position .. 
     581         p.vertikaleausrichtung    AS ver,       --  .. durch Klassifizierung hor/ver 
     582         p.drehwinkel * 57.296     AS winkel,    -- * 180 / Pi 
     583         p.wkb_geometry 
     584    FROM ap_pto p 
     585    JOIN nutzung l                      -- Im PostProcessing zusammen gefasste Nutzungsarten-Abschnitte 
     586      ON l.gml_id = ANY (p.dientzurdarstellungvon)  
     587   WHERE NOT p.schriftinhalt IS NULL  
     588     AND  p.endet IS NULL                            -- nichts historisches 
     589     AND  p.art   IN ('NAM','ZNM')                   -- CLASSES in LAYER 
     590     AND ('DKKM1000' = ANY (p.advstandardmodell)     -- "Lika 1000" bevorzugen 
     591           -- Ersatzweise auch "keine Angabe", aber nur wenn es keinen besseren Text zur Lage gibt 
     592           OR (p.advstandardmodell IS NULL 
     593               AND (SELECT s.gml_id                  -- irgend ein Feld 
     594                      FROM ap_pto s                  -- eines anderen Textes (suchen) 
     595                      JOIN nutzung l2                 -- Im PostProcessing zusammen gefasste Nutzungsarten-Abschnitte 
     596                        ON l2.gml_id = ANY (s.dientzurdarstellungvon)  
     597                     WHERE NOT s.advstandardmodell IS NULL  
     598                     LIMIT 1  -- einer reicht als Beweis 
     599                   ) IS NULL  
     600              ) -- "Subquery IS NULL" liefert true wenn kein weiterer Text gefunden wird 
     601         ) 
     602; 
     603 
    385604COMMENT ON VIEW ap_pto_nam  
    386605  IS 'Sicht fÃŒr Kartendarstellung: Beschriftung mit Art = Name/Zweitname. Vorzugsweise mit advstandardmodell="DKKM1000", ersatzweise ohne Angabe.'; 
     
    392611-- REST: Texte, die nicht schon in einem anderen Layer ausgegeben werden 
    393612-- Ersetzt den View "s_beschriftung" 
    394  
    395 -- alte Version bis 2013-04-15 
    396 -- Nachteil: es werden mehrere Texte zum gleichen Objekt angezeigt die fÃŒr verschiedene MaßstÀbe gedacht sind. 
    397 --CREATE OR REPLACE VIEW ap_pto_rest  
    398 --AS  
    399 --  SELECT p.ogc_fid,  
    400 --         p.schriftinhalt,  
    401 --         p.art,  
    402 --         p.drehwinkel * 57.296 AS winkel, -- * 180 / Pi 
    403 --         p.wkb_geometry  
    404 --    FROM ap_pto p 
    405 --   WHERE not p.schriftinhalt IS NULL  
    406 --     AND p.endet IS NULL 
    407 --     AND p.art NOT IN ('HNR','Strasse','Weg','Platz','BezKlassifizierungStrasse','AOG_AUG'); 
    408  
    409  
    410 -- 2013-04-15 Doppelte Darstellung aufgrund verschiedener "advstandardmodell" zum Objekt unterdrÃŒcken analog ap_pto_stra und ap_pto_nam 
     613-- Doppelte Darstellung aufgrund verschiedener "advstandardmodell" zum Objekt unterdrÃŒcken analog ap_pto_stra und ap_pto_nam 
     614 
     615/*  
     616-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     617 
     618    +++ HIER HIN KOPIEREN  +++ 
     619 
     620*/ 
     621 
     622-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     623-- ToDo 
    411624CREATE OR REPLACE VIEW ap_pto_rest  
    412625AS  
     
    451664-- Layer "s_zuordungspfeil_gebaeude" 
    452665-- ----------------------------------- 
     666 
     667/*  
     668-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     669 
     670    +++ HIER HIN KOPIEREN  +++ 
     671 
     672*/ 
     673-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     674-- ToDo 
     675 
    453676CREATE OR REPLACE VIEW s_zuordungspfeil_gebaeude  
    454677AS  
     
    474697--  ax_punktortta  >zeigtAuf?> AX_Grenzpunkt 
    475698-- Zum Punktort des Grenzpunktes auch eine Information zur Vermarkung holen 
     699 
     700/*  
     701-- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
     702 
     703    +++ HIER HIN KOPIEREN  +++ 
     704 
     705*/ 
     706-- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     707-- ToDo 
     708 
    476709CREATE OR REPLACE VIEW grenzpunkt  
    477710AS  
     
    495728-- Sichten vom OBK (Oberbergischer Kreis) 
    496729-- -------------------------------------- 
    497 --      CREATE OR REPLACE VIEW sk2004_zuordnungspfeil  
    498 --      AS 
    499 --       SELECT ap.ogc_fid, ap.wkb_geometry  
    500 --       FROM ap_lpo ap  
    501 --       WHERE ((ap.signaturnummer = '2004')  
    502 --         AND ('DKKM1000'::text ~~ ANY ((ap.advstandardmodell)::text[]))); 
    503 --      COMMENT ON VIEW sk2004_zuordnungspfeil IS 'fuer Kartendarstellung: Zuordnungspfeil FlurstÃŒcksnummer"'; 
    504  
    505 --      CREATE OR REPLACE VIEW sk2004_zuordnungspfeil_spitze  
    506 --      AS 
    507 --       SELECT ap.ogc_fid, (((st_azimuth(st_pointn(ap.wkb_geometry, 1),  
    508 --                      st_pointn(ap.wkb_geometry, 2)) * (- (180)::double precision)) / pi()) + (90)::double precision) AS winkel,  
    509 --                      st_startpoint(ap.wkb_geometry) AS wkb_geometry  
    510 --       FROM ap_lpo ap  
    511 --       WHERE ((ap.signaturnummer = '2004')  
    512 --         AND ('DKKM1000'::text ~~ ANY ((ap.advstandardmodell)::text[]))); 
    513  
    514 -- Diese Versionen "sk2004_zuordnungspfeil" und "sk2004_zuordnungspfeil_spitze" werden ersetzt durch 
    515 -- "s_zuordungspfeil_flurstueck" und "s_zuordungspfeilspitze_flurstueck". 
    516 -- Grund: "signaturnummer" is NULL, wenn Daten aus AED-Software kommen. Das Feld ist nur bei ibR gefuellt. 
    517 -- Die Alternativen filtern durch JOIN >dientZurDarstellungVon> ax_flurstueck. 
    518730 
    519731CREATE OR REPLACE VIEW sk2012_flurgrenze  
     
    521733 SELECT fg.ogc_fid, fg.wkb_geometry 
    522734   FROM ax_besondereflurstuecksgrenze fg 
    523   WHERE (3000 = ANY (fg.artderflurstuecksgrenze))  
    524     AND fg.advstandardmodell ~~ 'DLKM'::text; 
     735  WHERE 3000   = ANY (fg.artderflurstuecksgrenze) 
     736    AND 'DLKM' = ANY (fg.advstandardmodell); 
    525737COMMENT ON VIEW sk2012_flurgrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Flurgrenze"'; 
    526738 
     
    529741 SELECT gemag.ogc_fid, gemag.wkb_geometry 
    530742   FROM ax_besondereflurstuecksgrenze gemag 
    531   WHERE (7003 = ANY (gemag.artderflurstuecksgrenze))  
    532     AND gemag.advstandardmodell ~~ 'DLKM'::text; 
     743  WHERE 7003   = ANY (gemag.artderflurstuecksgrenze) 
     744    AND 'DLKM' = ANY (gemag.advstandardmodell); 
    533745COMMENT ON VIEW sk2014_gemarkungsgrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Gemarkungsgrenze"'; 
    534746 
     
    537749 SELECT blg.ogc_fid, blg.wkb_geometry 
    538750   FROM ax_besondereflurstuecksgrenze blg 
    539   WHERE (7102 = ANY (blg.artderflurstuecksgrenze))  
    540     AND blg.advstandardmodell ~~ 'DLKM'::text; 
     751  WHERE 7102   = ANY (blg.artderflurstuecksgrenze) 
     752    AND 'DLKM' = ANY (blg.advstandardmodell); 
    541753COMMENT ON VIEW sk2018_bundeslandgrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Bundeslandgrenze"'; 
    542754 
     
    545757 SELECT rbg.ogc_fid, rbg.wkb_geometry 
    546758   FROM ax_besondereflurstuecksgrenze rbg 
    547   WHERE (7103 = ANY (rbg.artderflurstuecksgrenze))  
    548     AND rbg.advstandardmodell ~~ 'DLKM'::text; 
     759  WHERE 7103   = ANY (rbg.artderflurstuecksgrenze)  
     760    AND 'DLKM' = ANY (rbg.advstandardmodell); 
    549761COMMENT ON VIEW sk2020_regierungsbezirksgrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Regierungsbezirksgrenze"'; 
    550762 
     
    553765 SELECT gemg.ogc_fid, gemg.wkb_geometry 
    554766   FROM ax_besondereflurstuecksgrenze gemg 
    555   WHERE (7106 = ANY (gemg.artderflurstuecksgrenze))  
    556     AND gemg.advstandardmodell ~~ 'DLKM'::text; 
     767  WHERE 7106   = ANY (gemg.artderflurstuecksgrenze)  
     768    AND 'DLKM' = ANY (gemg.advstandardmodell); 
    557769COMMENT ON VIEW sk2022_gemeindegrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Gemeindegrenze"'; 
    558770 
     
    579791     OR  7106 = ANY (artderflurstuecksgrenze) 
    580792    ) 
    581     AND advstandardmodell ~~ 'DLKM'::text; 
     793    AND 'DLKM' = ANY (advstandardmodell); 
    582794 
    583795COMMENT ON VIEW sk201x_politische_grenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze Politische Grenzen (Bund, Land, Kreis, Gemeinde)'; 
Note: See TracChangeset for help on using the changeset viewer.