source: trunk/data/konvert/postnas_0.7/alkis_PostNAS_0.7_schema.sql @ 178

Revision 178, 184.9 KB checked in by frank.jaeger, 8 years ago (diff)

delete/replace aus GDAL Patch #5444

Line 
1--
2-- *****************************
3--       A  L   K   I   S       
4-- *****************************
5--
6-- Datenbankstruktur PostNAS 0.7  (GDAL aus aktuellem Trunk)
7--
8-- Stand
9-- -----
10
11-- letzte Änderungen an Version 0.6:
12
13-- 2011-11-02 FJ: Neue Tabellen
14-- 2011-11-04 FJ: Anpassungen fuer Buchauskunft "Historie"
15-- 2011-11-21 FJ: siehe Version 0.6
16-- 2011-12-16 FJ: Neue Tabelle "ax_sicherungspunkt"
17-- 2012-01-16 FJ: Spalte "ap_pto.art" wird doch gebraucht.
18
19-- ** Neuer Zweig PostNAS 0.7 (gdal > 1.9) **
20
21-- 2012-02-28 FJ: ZusammenfÃŒhren von Änderungen aus SVN (AE: Anfang Februar) mit eigener Version
22--                Feld "gemeindezugehoerigkeit" auskommentiert.
23--                Bereinigung Kommentare.
24
25-- 2012-04-23 FJ  Diff zum GDAL-Patch #4555 angewendet:
26--                Siehe Mail J.E.Fischer in PostNAS-Liste vom 12.03.2012
27--                - Alle Objekte bekommen "endet"-Feld.
28--                - "beginnt" wird in die Unique-Constraint einbezogen.
29--                - Feld 'identifier'.
30--                - "character varying" durch "varchar" ersetzt.
31--                - Keine direkten Änderungen an 'geometry_columns' (wegen PostGIS 2)
32--                - DELETE:  Feld endet = aktuelle Zeit
33--                - REPLACE: Feld endet = beginnt des ersetzenden Objektes
34--                - "delete_feature()" ist nun ein Trigger
35
36-- 2012-04-24 FJ  Datei alkis-funktions aus Diff zum GDAL-Patch #4555 hier integriert
37--                Umschaltung mit/ohne Historie ÃŒber VernÃŒpfung Trigger -> Function
38--                Typ 'GEOMETRY' bei Tabellen: AX_WegPfadSteig, AX_UntergeordnetesGewaesser
39
40--  VERSIONS-NUMMER:
41
42--  Dies Schema kann nicht mehr mit der installierbaren gdal-Version 1.9 verwendet werden.
43--  Derzeit muss ogr2ogr (gdal) aus den Quellen compiliert werden, die o.g. Patch enthalten.
44--  WeiterfÃŒhrung dieses Zweiges als PostNAS 0.7
45
46
47-- Zur Datenstruktur siehe Dokument:
48-- http://www.bezreg-koeln.nrw.de/extra/33alkis/dokumente/Profile_NRW/5-1-1_ALKIS-OK-NRW_GDB.html
49
50  SET client_encoding = 'UTF8';
51  SET default_with_oids = false;
52
53-- \set ON_ERROR_STOP
54
55-- T u n i n g :
56--   Die Tabelle 'spatial_ref_sys' einer PostGIS-Datenbank auf
57--   die notwendigen Koordinatensysteme reduzieren. Das Loescht >3000 Eintraege.
58
59--  DELETE FROM spatial_ref_sys
60--  WHERE srid NOT
61--  IN (2397, 2398, 2399, 4326,    25830, 25831, 25832, 25833, 25834,  31466, 31467, 31468, 31469);
62--  --  Krassowski        lat/lon  UTM                                 GK
63
64
65
66-- =======================
67-- Stored Procedures laden
68-- =======================
69-- \i alkis-functions.sql
70
71-- Alle ALKIS-Tabellen löschen
72CREATE OR REPLACE FUNCTION alkis_drop() RETURNS void AS $$
73DECLARE
74        c RECORD;
75BEGIN
76        -- drop views
77        FOR c IN SELECT table_type,table_name FROM information_schema.tables WHERE table_schema='public' AND ( substr(table_name,1,3) IN ('ax_','ap_','ks_') OR table_name IN ('alkis_beziehungen','delete')) ORDER BY table_type DESC LOOP
78                IF c.table_type = 'VIEW' THEN
79                        RAISE NOTICE 'Dropping view %', c.table_name;
80                        EXECUTE 'DROP VIEW '||c.table_name;
81                ELSIF c.table_type = 'BASE TABLE' THEN
82                        RAISE NOTICE 'Dropping table %', c.table_name;
83                        EXECUTE 'DROP TABLE '||c.table_name;
84                ELSE
85                        RAISE NOTICE 'Unexpected type %,%', c.table_type, c.table_name;
86                END IF;
87        END LOOP;
88
89        -- clean geometry_columns
90        DELETE FROM geometry_columns
91                WHERE f_table_schema='public'
92                AND ( substr(f_table_name,1,2) IN ('ax_','ap_','ks_')
93                 OR f_table_name IN ('alkis_beziehungen','delete') );
94END;
95$$ LANGUAGE plpgsql;
96
97-- Alle ALKIS-Tabellen leeren
98CREATE OR REPLACE FUNCTION alkis_delete() RETURNS void AS $$
99DECLARE
100        c RECORD;
101BEGIN
102        -- drop views
103        FOR c IN SELECT table_name FROM information_schema.tables WHERE table_schema='public' AND ( substr(table_name,1,3) IN ('ax_','ap_','ks_') OR table_name IN ('alkis_beziehungen','delete') AND table_type='BASE TABLE') LOOP
104                RAISE NOTICE 'Deleting from %', c.table_name;
105                EXECUTE 'DELETE FROM '||c.table_name;
106        END LOOP;
107END;
108$$ LANGUAGE plpgsql;
109
110-- Übersicht erzeugen, die alle alkis_beziehungen mit den Typen der beteiligen ALKIS-Objekte versieht
111CREATE OR REPLACE FUNCTION alkis_mviews() RETURNS void AS $$
112DECLARE
113        sql TEXT;
114        delim TEXT;
115        c RECORD;
116BEGIN
117        DROP VIEW IF EXISTS vbeziehungen;
118        DROP VIEW IF EXISTS vobjekte;
119        DROP TABLE IF EXISTS vobjekte;
120
121        delim := '';
122        sql := 'CREATE TABLE vobjekte AS ';
123
124        FOR c IN SELECT table_name from information_schema.columns WHERE column_name='gml_id' LOOP
125                sql := sql || delim || 'SELECT gml_id,''' || c.table_name || ''' AS table_name FROM ' || c.table_name;
126                delim := ' UNION ';
127        END LOOP;
128
129        EXECUTE sql;
130
131        CREATE UNIQUE INDEX vobjekte_gmlid ON vobjekte(gml_id,beginnt);
132        CREATE INDEX vobjekte_table ON vobjekte(table_name);
133
134        DROP TABLE IF EXISTS vbeziehungen;
135        CREATE TABLE vbeziehungen AS
136                SELECT beziehung_von,(SELECT table_name FROM vobjekte WHERE gml_id=beziehung_von) AS typ_von
137                        ,beziehungsart
138                        ,beziehung_zu,(SELECT table_name FROM vobjekte WHERE gml_id=beziehung_zu) AS typ_zu
139                FROM alkis_beziehungen;
140
141        CREATE INDEX vbeziehungen_von    ON vbeziehungen(beziehung_von);
142        CREATE INDEX vbeziehungen_vontyp ON vbeziehungen(typ_von);
143        CREATE INDEX vbeziehungen_art    ON vbeziehungen(beziehungsart);
144        CREATE INDEX vbeziehungen_zu     ON vbeziehungen(beziehung_zu);
145        CREATE INDEX vbeziehungen_zutyp  ON vbeziehungen(typ_zu);
146END;
147$$ LANGUAGE plpgsql;
148
149-- Indizes erzeugen
150CREATE OR REPLACE FUNCTION alkis_update_schema() RETURNS void AS $$
151DECLARE
152        sql TEXT;
153        c RECORD;
154        i RECORD;
155        n INTEGER;
156BEGIN
157        -- Spalten in delete ergÀnzen
158        SELECT count(*) INTO n FROM information_schema.columns WHERE table_schema='public' AND table_name='delete' AND column_name='ignored';
159        IF n=0 THEN
160                ALTER TABLE "delete" ADD ignored BOOLEAN;
161        END IF;
162
163        SELECT count(*) INTO n FROM information_schema.columns WHERE table_schema='public' AND table_name='delete' AND column_name='context';
164        IF n=0 THEN
165                ALTER TABLE "delete" ADD context VARCHAR;
166        END IF;
167
168        SELECT count(*) INTO n FROM information_schema.columns WHERE table_schema='public' AND table_name='delete' AND column_name='safetoignore';
169        IF n=0 THEN
170                ALTER TABLE "delete" ADD safetoignore VARCHAR;
171        END IF;
172
173        SELECT count(*) INTO n FROM information_schema.columns WHERE table_schema='public' AND table_name='delete' AND column_name='replacedby';
174        IF n=0 THEN
175          ALTER TABLE "delete" ADD replacedBy VARCHAR;
176        END IF;
177
178        -- Spalte identifier ergÀnzen, wo sie fehlt
179        FOR c IN SELECT table_name FROM information_schema.columns a WHERE a.column_name='gml_id'
180                AND     EXISTS (SELECT * FROM information_schema.columns b WHERE b.column_name='beginnt'    AND a.table_catalog=b.table_catalog AND a.table_schema=b.table_schema AND a.table_name=b.table_name)
181                AND NOT EXISTS (SELECT * FROM information_schema.columns b WHERE b.column_name='identifier' AND a.table_catalog=b.table_catalog AND a.table_schema=b.table_schema AND a.table_name=b.table_name)
182        LOOP
183                EXECUTE 'ALTER TABLE ' || c.table_name || ' ADD identifier character(44)';
184        END LOOP;
185
186        -- Spalte endet ergÀnzen, wo sie fehlt
187        FOR c IN SELECT table_name FROM information_schema.columns a WHERE a.column_name='gml_id'
188                AND     EXISTS (SELECT * FROM information_schema.columns b WHERE b.column_name='beginnt' AND a.table_catalog=b.table_catalog AND a.table_schema=b.table_schema AND a.table_name=b.table_name)
189                AND NOT EXISTS (SELECT * FROM information_schema.columns b WHERE b.column_name='endet'   AND a.table_catalog=b.table_catalog AND a.table_schema=b.table_schema AND a.table_name=b.table_name)
190        LOOP
191                EXECUTE 'ALTER TABLE ' || c.table_name || ' ADD endet character(20) CHECK (endet>beginnt)';
192        END LOOP;
193
194        -- Lebensdauer-Constraint ergÀnzen
195        FOR c IN SELECT table_name FROM information_schema.columns a WHERE a.column_name='gml_id'
196                AND EXISTS (SELECT * FROM information_schema.columns b WHERE b.column_name='beginnt' AND a.table_catalog=b.table_catalog AND a.table_schema=b.table_schema AND a.table_name=b.table_name)
197                AND EXISTS (SELECT * FROM information_schema.columns b WHERE b.column_name='endet'   AND a.table_catalog=b.table_catalog AND a.table_schema=b.table_schema AND a.table_name=b.table_name)
198        LOOP
199                EXECUTE 'ALTER TABLE ' || c.table_name || ' DROP CONSTRAINT IF EXISTS ' || c.table_name || '_lebensdauer';
200                EXECUTE 'ALTER TABLE ' || c.table_name || ' ADD CONSTRAINT ' || c.table_name || '_lebensdauer CHECK (beginnt IS NOT NULL AND endet>beginnt)';
201        END LOOP;
202
203        -- Indizes aktualisieren
204        FOR c IN SELECT table_name from information_schema.columns a WHERE a.column_name='gml_id'
205                AND EXISTS (SELECT * FROM information_schema.columns b WHERE b.column_name='beginnt' AND a.table_catalog=b.table_catalog AND a.table_schema=b.table_schema AND a.table_name=b.table_name)
206        LOOP
207                -- Vorhandene Indizes droppen (TODO: Löscht auch die SonderfÀlle - entfernen)
208                FOR i IN EXECUTE 'SELECT indexname FROM pg_indexes WHERE NOT indexname LIKE ''%_pk'' AND schemaname=''public'' AND tablename='''||c.table_name||'''' LOOP
209                        EXECUTE 'DROP INDEX ' || i.indexname;
210                END LOOP;
211
212                -- Indizes erzeugen
213                EXECUTE 'CREATE UNIQUE INDEX ' || c.table_name || '_id ON ' || c.table_name || '(gml_id,beginnt)';
214                EXECUTE 'CREATE UNIQUE INDEX ' || c.table_name || '_ident ON ' || c.table_name || '(identifier)';
215                EXECUTE 'CREATE INDEX ' || c.table_name || '_gmlid ON ' || c.table_name || '(gml_id)';
216                EXECUTE 'CREATE INDEX ' || c.table_name || '_beginnt ON ' || c.table_name || '(beginnt)';
217                EXECUTE 'CREATE INDEX ' || c.table_name || '_endet ON ' || c.table_name || '(endet)';
218        END LOOP;
219
220        -- Geometrieindizes aktualisieren
221        FOR c IN SELECT table_name from information_schema.columns a WHERE a.column_name='gml_id'
222                AND EXISTS (SELECT * FROM information_schema.columns b WHERE b.column_name='wkb_geometry' AND a.table_catalog=b.table_catalog AND a.table_schema=b.table_schema AND a.table_name=b.table_name)
223        LOOP
224                EXECUTE 'CREATE INDEX ' || c.table_name || '_geom ON ' || c.table_name || ' USING GIST (wkb_geometry)';
225        END LOOP;
226END;
227$$ LANGUAGE plpgsql;
228
229
230-- Löschsatz verarbeiten (MIT Historie)
231-- context='delete'        => "endete" auf aktuelle Zeit setzen
232-- context='replace'       => "endete" des ersetzten auf "beginnt" des neuen Objekts setzen
233CREATE OR REPLACE FUNCTION delete_feature_hist() RETURNS TRIGGER AS $$
234DECLARE
235        sql TEXT;
236        gml_id TEXT;
237        endete TEXT;
238        n INTEGER;
239BEGIN
240        NEW.context := lower(NEW.context);
241        gml_id      := substr(NEW.featureid, 1, 16);
242
243        IF NEW.context IS NULL THEN
244                NEW.context := 'delete';
245        END IF;
246
247        IF NEW.context='delete' THEN
248                endete := to_char(CURRENT_TIMESTAMP AT TIME ZONE 'UTC','YYYY-MM-DD"T"HH24:MI:SS"Z"');
249
250        ELSIF NEW.context='replace' THEN
251                NEW.safetoignore := lower(NEW.safetoignore);
252
253                IF NEW.safetoignore IS NULL THEN
254                        RAISE EXCEPTION '%: safeToIgnore nicht gesetzt.', NEW.featureid;
255                ELSIF NEW.safetoignore<>'true' AND NEW.safetoignore<>'false' THEN
256                        RAISE EXCEPTION '%: safeToIgnore ''%'' ungÃŒltig (''true'' oder ''false'' erwartet).', NEW.featureid, NEW.safetoignore;
257                END IF;
258
259                IF NEW.replacedBy IS NULL OR NEW.replacedBy = '' THEN
260                        IF NEW.safetoignore = 'true' THEN
261                                RAISE NOTICE '%: Nachfolger nicht gesetzt - ignoriert', NEW.featureid;
262                                NEW.ignored := true;
263                                RETURN NEW;
264                        ELSE
265                                RAISE EXCEPTION '%: Nachfolger nicht gesetzt', NEW.featureid;
266                        END IF;
267                END IF;
268
269                sql := 'SELECT beginnt FROM ' || NEW.typename || ' WHERE identifier=''urn:adv:oid:' || NEW.replacedBy || '''';
270                -- RAISE NOTICE 'SQL: %', sql;
271               
272                -- FEHLER: identifier enthÀlt nur gml_id, aber nicht den Timestamp dahinter
273                --         Daher wird das zu ersetzende Obejkt nicht gefunden
274               
275                EXECUTE sql INTO endete;
276
277/*
278                IF endete IS NULL AND length(NEW.replacedBy)>16 THEN
279                        RAISE NOTICE '%: Nachfolger % nicht gefunden - versuche ''%''', NEW.featureid, substr(NEW.replacedBy, 1, 16);
280                        sql := 'SELECT beginnt FROM ' || NEW.typename
281                            || ' WHERE gml_id=''' || substr(NEW.replacedBy, 1, 16) || ''''
282                            || ' AND endete IS NULL'
283                            || ' AND identifier<>''urn:adv:oid:'|| NEW.featureid || '''';
284                        EXECUTE sql INTO endete;
285                END IF;
286 */
287
288                IF endete IS NULL THEN
289                        IF NEW.safetoignore = 'true' THEN
290                                RAISE NOTICE '%: Nachfolger % nicht gefunden - ignoriert', NEW.featureid, NEW.replacedBy;
291                                NEW.ignored := true;
292                                RETURN NEW;
293                        ELSE
294                                RAISE EXCEPTION '%: Nachfolger % nicht gefunden', NEW.featureid, NEW.replacedBy;
295                        END IF;
296                END IF;
297
298                -- RAISE NOTICE '%: Nachfolgeobjekt beginnt um %.', NEW.featureid, endete;
299        ELSE
300                RAISE EXCEPTION '%: UngÃŒltiger Kontext % (''delete'' oder ''replace'' erwartet).', NEW.featureid, NEW.context;
301        END IF;
302
303        sql := 'UPDATE ' || NEW.typename
304                || ' SET endet=''' || endete || ''''
305                || ' WHERE (identifier=''urn:adv:oid:' || NEW.featureid || ''' OR identifier=''urn:adv:oid:' || gml_id || ''')'
306                || ' AND endet IS NULL';
307        -- RAISE NOTICE 'SQL: %', sql;
308        EXECUTE sql;
309        GET DIAGNOSTICS n = ROW_COUNT;
310        IF n<>1 THEN
311                RAISE NOTICE 'SQL: %', sql;
312                IF NEW.context = 'delete' OR NEW.safetoignore = 'true' THEN
313                        RAISE NOTICE '%: Untergangsdatum von % Objekte statt nur einem auf % gesetzt - ignoriert', NEW.featureid, n, endete;
314                        NEW.ignored := true;
315                        RETURN NEW;
316                ELSE
317                        RAISE EXCEPTION '%: Untergangsdatum von % Objekte statt nur einem auf % gesetzt - ignoriert', NEW.featureid, n, endete;
318                END IF;
319        END IF;
320
321        NEW.ignored := false;
322        RETURN NEW;
323END;
324$$ LANGUAGE plpgsql;
325
326
327-- Löschsatz verarbeiten (OHNE Historie)
328-- historische Objekte werden sofort gelöscht.
329-- Siehe Mail W. Jacobs vom 23.03.2012 in PostNAS-Mailingliste
330CREATE OR REPLACE FUNCTION delete_feature_kill() RETURNS TRIGGER AS $$
331DECLARE
332        query TEXT;
333        gml_id TEXT;
334BEGIN
335        NEW.typename := lower(NEW.typename);
336        NEW.context := lower(NEW.context);
337        gml_id      := substr(NEW.featureid, 1, 16);
338
339        IF NEW.context IS NULL THEN
340                NEW.context := 'delete';
341        END IF;
342
343        IF NEW.context='delete' THEN
344                query := 'DELETE FROM ' || NEW.typename || ' WHERE gml_id = ''' || gml_id || '''';
345                EXECUTE query;
346
347                query := 'DELETE FROM alkis_beziehungen WHERE beziehung_von = ''' || gml_id || ''' OR beziehung_zu = ''' || gml_id || '''';
348                EXECUTE query;
349        ELSE
350                -- replace
351                query := 'DELETE FROM ' || NEW.typename || ' WHERE gml_id = ''' || gml_id || '''';
352                EXECUTE query;
353                -- alkis_beziehungen bleibt so
354        END IF;
355
356        NEW.ignored := false;
357        RETURN NEW;
358END;
359$$ LANGUAGE plpgsql;
360
361-- Im Trigger 'delete_feature_trigger' muss eine dieser beiden Functions (_hist oder _kill) verlinkt werden,
362-- je nachdem ob nur aktuelle oder auch historische Objekte in der Datenbank gefÃŒhrt werden sollen.
363
364
365-- Wenn die Datenbank MIT Historie angelegt wurde, aber eigentlich stört die nur.
366-- Dann kann nach dem Laden hiermit aufgerÀumt werden.
367CREATE OR REPLACE FUNCTION alkis_delete_all_endet() RETURNS void AS $$
368DECLARE
369        c RECORD;
370BEGIN
371        -- In allen Tabellen die Objekte Löschen, die ein Ende-Datum haben
372        FOR c IN
373                SELECT table_name
374                FROM information_schema.columns a
375                WHERE a.column_name='endet'
376                ORDER BY table_name
377        LOOP
378                EXECUTE 'DELETE FROM ' || c.table_name || ' WHERE NOT endet IS NULL';
379                RAISE NOTICE 'Lösche ended in: %', c.table_name;
380        END LOOP;
381END;
382$$ LANGUAGE plpgsql;
383
384
385-- Alle Tabellen löschen
386-- SELECT alkis_drop();
387
388
389-- Tabelle delete fÌr Lösch- und FortfÌhrungsdatensÀtze
390CREATE TABLE "delete"
391(
392        ogc_fid         serial NOT NULL,
393        typename        varchar,
394        featureid       character(32),
395        context         varchar,                -- delete/replace
396        safetoignore    varchar,                -- replace.safetoignore 'true'/'false'
397        replacedBy      varchar,                -- gmlid
398        ignored         boolean DEFAULT false,  -- Satz wurde nicht verarbeitet
399        CONSTRAINT delete_pk PRIMARY KEY (ogc_fid)
400);
401
402
403-- Dummy-Eintrag in Metatabelle
404SELECT AddGeometryColumn('delete','dummy',25832,'POINT',2);
405
406CREATE UNIQUE INDEX delete_fid ON "delete"(featureid);
407
408
409COMMENT ON TABLE "delete"             IS 'Hilfstabelle fÃŒr das Speichern von Löschinformationen.';
410COMMENT ON COLUMN delete.typename     IS 'Objektart, also Name der Tabelle, aus der das Objekt zu löschen ist.';
411COMMENT ON COLUMN delete.featureid    IS 'Zusammen gesetzt aus GML-ID (16) und Zeitstempel.';
412COMMENT ON COLUMN delete.context      IS 'Operation ''delete'' oder ''replace''';
413COMMENT ON COLUMN delete.safetoignore IS 'Attribut safeToIgnore von wfsext:Replace';
414COMMENT ON COLUMN delete.replacedBy   IS 'gml_id des Objekts, das featureid ersetzt';
415COMMENT ON COLUMN delete.ignored      IS 'Löschsatz wurde ignoriert';
416
417
418-- Trigger auf "delete"
419
420--  Optionen  (A)  O D E R  (B)
421
422
423--  (A)  -  Function 'delete_feature_kill'   bei delete und replace wird das alte Objekt sofort entfernt
424
425 CREATE TRIGGER delete_feature_trigger
426        BEFORE INSERT ON delete
427        FOR EACH ROW
428           EXECUTE PROCEDURE delete_feature_kill();
429
430
431--  (B)  -  Function 'delete_feature_hist'  das alte Objekt bekommt einen Eintrag in 'endet'
432--                                          (aktuell ist: WHERE endet IS NULL)
433
434-- CREATE TRIGGER delete_feature_trigger
435--        BEFORE INSERT ON delete
436--        FOR EACH ROW
437--           EXECUTE PROCEDURE delete_feature_hist();
438
439
440-- COMMENT ON DATABASE *** IS 'ALKIS - PostNAS 0.7';
441
442-- ===========================================================
443--              A L K I S  -  L a y e r
444-- ===========================================================
445
446
447-- S o n s t i g e s   B a u w e r k
448-- ----------------------------------
449CREATE TABLE ks_sonstigesbauwerk (
450        ogc_fid                 serial NOT NULL,
451        gml_id                  character(16),
452        identifier              character(44),
453        beginnt                 character(20),
454        endet                   character(20),
455        sonstigesmodell         varchar,
456        anlass                  integer,
457        bauwerksfunktion        integer,
458        CONSTRAINT ks_sonstigesbauwerk_pk PRIMARY KEY (ogc_fid)
459);
460
461SELECT AddGeometryColumn('ks_sonstigesbauwerk','wkb_geometry',25832,'GEOMETRY',2);
462
463CREATE INDEX ks_sonstigesbauwerk_geom_idx ON ks_sonstigesbauwerk USING gist (wkb_geometry);
464
465
466
467-- B e z i e h u n g e n
468-- ----------------------------------------------
469-- Zentrale Tabelle fuer alle Relationen im Buchwerk.
470
471-- Statt Relationen und FOREIGN-KEY-CONSTRAINTS zwischen Tabellen direkt zu legen, gehen
472-- in der ALKIS-Datenstruktur alle Beziehungen zwischen zwei Tabellen ÃŒber diese Verbindungstabelle.
473
474-- Die Konnectoren 'beziehung_von' und 'beziehung_zu' verweisen auf die ID des Objekte (gml_id).
475-- Das Feld 'gml_id' sollte daher in allen Tabellen indiziert werden.
476
477-- ZusÀtzlich enthÀlt 'beziehungsart' noch ein Verb fÌr die Art der Beziehung.
478
479CREATE TABLE alkis_beziehungen (
480        ogc_fid                 serial NOT NULL,
481        beziehung_von           character(16),         --> gml_id
482        beziehungsart           varchar,               --  Liste siehe unten
483        beziehung_zu            character(16),         --> gml_id
484        CONSTRAINT alkis_beziehungen_pk PRIMARY KEY (ogc_fid)
485);
486CREATE INDEX id_alkis_beziehungen_von ON alkis_beziehungen USING btree (beziehung_von);
487CREATE INDEX id_alkis_beziehungen_zu  ON alkis_beziehungen USING btree (beziehung_zu);
488
489-- Dummy-Eintrag in Metatabelle
490SELECT AddGeometryColumn('alkis_beziehungen','dummy',25832,'POINT',2);
491
492COMMENT ON TABLE  alkis_beziehungen               IS 'zentrale Multi-Verbindungstabelle';
493COMMENT ON COLUMN alkis_beziehungen.beziehung_von IS 'Join auf Feld gml_id verschiedener Tabellen';
494COMMENT ON COLUMN alkis_beziehungen.beziehung_zu  IS 'Join auf Feld gml_id verschiedener Tabellen';
495COMMENT ON COLUMN alkis_beziehungen.beziehungsart IS 'Typ der Beziehung zwischen der von- und zu-Tabelle';
496
497-- Beziehungsarten:
498--
499-- "an" "benennt" "bestehtAusRechtsverhaeltnissenZu" "beziehtSichAuchAuf" "dientZurDarstellungVon"
500-- "durch" "gehoertAnteiligZu" "gehoertZu" "hat" "hatAuch" "istBestandteilVon"
501-- "istGebucht" "istTeilVon" "weistAuf" "zeigtAuf" "zu"
502
503-- Hinweis:
504-- Diese Tabelle enthÀlt fÌr ein Kreisgebiet ca. 5 Mio. Zeilen und wird stÀndig benutzt.
505-- Optimierung z.B. ÃŒber passende Indices ist wichtig.
506
507
508-- A n d e r e   F e s t l e g u n g   n a c h   W a s s e r r e c h t
509-- --------------------------------------------------------------------
510CREATE TABLE ax_anderefestlegungnachwasserrecht (
511        ogc_fid                         serial NOT NULL,
512        gml_id                          character(16),
513        identifier                      character(44),
514        beginnt                         character(20),
515        endet                           character(20),
516        advstandardmodell               varchar,
517        anlass                          integer,
518        artderfestlegung                integer,
519        CONSTRAINT ax_anderefestlegungnachwasserrecht_pk PRIMARY KEY (ogc_fid)
520);
521
522SELECT AddGeometryColumn('ax_anderefestlegungnachwasserrecht','wkb_geometry',25832,'GEOMETRY',2);
523
524CREATE INDEX ax_anderefestlegungnachwasserrecht_geom_idx ON ax_anderefestlegungnachwasserrecht USING gist (wkb_geometry);
525CREATE UNIQUE INDEX ax_anderefestlegungnachwasserrecht_gml ON ax_anderefestlegungnachwasserrecht USING btree (gml_id,beginnt);
526
527COMMENT ON TABLE  ax_anderefestlegungnachwasserrecht        IS 'Andere Festlegung nach  W a s s e r r e c h t';
528COMMENT ON COLUMN ax_anderefestlegungnachwasserrecht.gml_id IS 'Identifikator, global eindeutig';
529
530
531-- B a u b l o c k
532-- ----------------------------------------------
533CREATE TABLE ax_baublock (
534        ogc_fid                 serial NOT NULL,
535        gml_id                  character(16),
536        identifier              character(44),
537        beginnt                 character(20),
538        endet                   character(20),
539        advstandardmodell       character(9),
540        anlass                  integer,
541        baublockbezeichnung     integer,
542        CONSTRAINT ax_baublock_pk PRIMARY KEY (ogc_fid)
543);
544SELECT AddGeometryColumn('ax_baublock','wkb_geometry',25832,'GEOMETRY',2);
545
546CREATE INDEX ax_baublock_geom_idx ON ax_baublock USING gist (wkb_geometry);
547CREATE UNIQUE INDEX ax_baublock_gml ON ax_baublock USING btree (gml_id,beginnt);
548
549COMMENT ON TABLE  ax_baublock        IS 'B a u b l o c k';
550COMMENT ON COLUMN ax_baublock.gml_id IS 'Identifikator, global eindeutig';
551
552
553-- 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
554-- -------------------------------------------------------------
555CREATE TABLE ax_besonderertopographischerpunkt (
556        ogc_fid                 serial NOT NULL,
557        gml_id                  character(16),
558        identifier              character(44),
559        beginnt                 character(20),
560        endet                   character(20),
561        advstandardmodell       varchar,
562        anlass                  integer,
563        land                    integer,
564        stelle                  integer,
565        punktkennung            varchar, -- integer
566        --sonstigeeigenschaft character(26),
567        CONSTRAINT ax_besonderertopographischerpunkt_pk PRIMARY KEY (ogc_fid)
568);
569
570SELECT AddGeometryColumn('ax_besonderertopographischerpunkt','dummy',25832,'POINT',2);
571
572CREATE UNIQUE INDEX ax_besonderertopographischerpunkt_gml ON ax_besonderertopographischerpunkt USING btree (gml_id,beginnt);
573
574COMMENT 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';
575COMMENT ON COLUMN ax_besonderertopographischerpunkt.gml_id IS 'Identifikator, global eindeutig';
576
577
578-- B e w e r t u n g
579-- ------------------
580CREATE TABLE ax_bewertung (
581        ogc_fid                 serial NOT NULL,
582        gml_id                  character(16),
583        identifier              character(44),
584        beginnt                 character(20),
585        endet                   character(20),
586        advstandardmodell       varchar,
587        anlass                  integer,
588        klassifizierung         integer,
589        CONSTRAINT ax_bewertung_pk PRIMARY KEY (ogc_fid)
590);
591
592SELECT AddGeometryColumn('ax_bewertung','wkb_geometry',25832,'GEOMETRY',2);
593
594CREATE INDEX ax_bewertung_geom_idx   ON ax_bewertung USING gist  (wkb_geometry);
595CREATE UNIQUE INDEX ax_bewertung_gml ON ax_bewertung USING btree (gml_id,beginnt);
596
597COMMENT ON TABLE  ax_bewertung        IS 'B e w e r t u n g';
598COMMENT ON COLUMN ax_bewertung.gml_id IS 'Identifikator, global eindeutig';
599
600
601-- D e n k m a l s c h u t z r e c h t
602-- -----------------------------------
603CREATE TABLE ax_denkmalschutzrecht (
604        ogc_fid                 serial NOT NULL,
605        gml_id                  character(16),
606        identifier              character(44),
607        beginnt                 character(20),
608        endet                   character(20),
609        advstandardmodell       varchar,
610        anlass                  integer,
611        artderfestlegung        integer,
612        art                     varchar, -- (15)
613        "name"                  varchar, -- (15)
614        CONSTRAINT ax_denkmalschutzrecht_pk PRIMARY KEY (ogc_fid)
615);
616
617SELECT AddGeometryColumn('ax_denkmalschutzrecht','wkb_geometry',25832,'GEOMETRY',2); -- POLYGON/MULTIPOLYGON
618
619CREATE INDEX ax_denkmalschutzrecht_geom_idx   ON ax_denkmalschutzrecht USING gist  (wkb_geometry);
620CREATE UNIQUE INDEX ax_denkmalschutzrecht_gml ON ax_denkmalschutzrecht USING btree (gml_id,beginnt);
621
622COMMENT ON TABLE  ax_denkmalschutzrecht        IS 'D e n k m a l s c h u t z r e c h t';
623COMMENT ON COLUMN ax_denkmalschutzrecht.gml_id IS 'Identifikator, global eindeutig';
624
625
626-- G e b a e u d e a u s g e s t a l t u n g
627-- -----------------------------------------
628CREATE TABLE ax_gebaeudeausgestaltung (
629        ogc_fid                 serial NOT NULL,
630        gml_id                  character(16),
631        identifier              character(44),
632        beginnt                 character(20),
633        endet                   character(20),
634        advstandardmodell       character(4),
635        anlass                  integer,
636        darstellung             integer,
637        zeigtauf                varchar,
638        CONSTRAINT ax_gebaeudeausgestaltung_pk PRIMARY KEY (ogc_fid)
639);
640
641SELECT AddGeometryColumn('ax_gebaeudeausgestaltung','wkb_geometry',25832,'LINESTRING',2);
642
643CREATE INDEX ax_gebaeudeausgestaltung_geom_idx ON ax_gebaeudeausgestaltung USING gist (wkb_geometry);
644CREATE UNIQUE INDEX ax_gebaeudeausgestaltung_gml ON ax_gebaeudeausgestaltung USING btree (gml_id,beginnt);
645
646COMMENT ON TABLE  ax_gebaeudeausgestaltung        IS 'G e b a e u d e a u s g e s t a l t u n g';
647COMMENT ON COLUMN ax_gebaeudeausgestaltung.gml_id IS 'Identifikator, global eindeutig';
648
649
650-- Georeferenzierte  G e b À u d e a d r e s s e
651-- ----------------------------------------------
652CREATE TABLE ax_georeferenziertegebaeudeadresse (
653        ogc_fid                 serial NOT NULL,
654        gml_id                  character(16),
655        identifier              character(44),
656        beginnt                 character(20),          -- Inhalt z.B. "2008-06-10T15:19:17Z"
657        endet                   character(20),          -- Inhalt z.B. "2008-06-10T15:19:17Z"
658                                                        -- ISO:waere   "2008-06-10 15:19:17-00"
659--      beginnt                 timestamp,              -- timestamp-Format wird nicht geladen, bleibt leer
660        advstandardmodell       varchar,
661        anlass                  integer,
662        qualitaetsangaben       integer,                -- zb: "1000" (= Massstab)
663        --                      --                      -- Gemeindeschluessel, bestehend aus:
664        land                    integer,                -- 05 = NRW
665        regierungsbezirk        integer,                --   7
666        kreis                   integer,                --    66
667        gemeinde                integer,                --      020
668        ortsteil                integer,                --         0
669        --                      --                      -- --
670        postleitzahl            varchar,        -- mit fuehrenden Nullen
671        ortsnamepost            varchar,        --
672        zusatzortsname          varchar,        --
673        strassenname            varchar,        --
674        strassenschluessel      integer,                -- max.  5 Stellen
675        hausnummer              integer,                -- meist 3 Stellen
676        adressierungszusatz     varchar,        -- Hausnummernzusatz-Buchstabe
677        CONSTRAINT ax_georeferenziertegebaeudeadresse_pk PRIMARY KEY (ogc_fid)
678);
679
680SELECT AddGeometryColumn('ax_georeferenziertegebaeudeadresse','wkb_geometry',25832,'POINT',2);
681
682CREATE INDEX ax_georeferenziertegebaeudeadresse_geom_idx ON ax_georeferenziertegebaeudeadresse USING gist (wkb_geometry);
683
684-- Index fÃŒr alkis_beziehungen
685CREATE UNIQUE INDEX ax_georeferenziertegebaeudeadresse_gml ON ax_georeferenziertegebaeudeadresse USING btree (gml_id,beginnt);
686
687-- Suchindex Adresse
688CREATE INDEX ax_georeferenziertegebaeudeadresse_adr ON ax_georeferenziertegebaeudeadresse USING btree (strassenschluessel, hausnummer, adressierungszusatz);
689
690COMMENT ON TABLE  ax_georeferenziertegebaeudeadresse        IS 'Georeferenzierte  G e b À u d e a d r e s s e';
691COMMENT ON COLUMN ax_georeferenziertegebaeudeadresse.gml_id IS 'Identifikator, global eindeutig';
692
693
694-- G r a b l o c h   d e r   B o d e n s c h a e t z u n g
695-- -------------------------------------------------------
696CREATE TABLE ax_grablochderbodenschaetzung (
697        ogc_fid                 serial NOT NULL,
698        gml_id                  character(16),
699        identifier              character(44),
700        beginnt                 character(20),
701        endet                   character(20),
702        advstandardmodell       varchar,
703        anlass                  integer,
704        art                     varchar,
705        "name"                  varchar,
706        bedeutung               integer,
707        land                    integer,
708        nummerierungsbezirk     varchar,
709        gemarkungsnummer        integer,
710        nummerdesgrablochs      integer,
711        CONSTRAINT ax_grablochderbodenschaetzung_pk PRIMARY KEY (ogc_fid)
712);
713
714SELECT AddGeometryColumn('ax_grablochderbodenschaetzung','wkb_geometry',25832,'POINT',2);
715
716CREATE INDEX ax_grablochderbodenschaetzung_geom_idx   ON ax_grablochderbodenschaetzung USING gist  (wkb_geometry);
717CREATE UNIQUE INDEX ax_grablochderbodenschaetzung_gml ON ax_grablochderbodenschaetzung USING btree (gml_id,beginnt);
718
719COMMENT ON TABLE  ax_grablochderbodenschaetzung        IS 'G r a b l o c h   d e r   B o d e n s c h a e t z u n g';
720COMMENT ON COLUMN ax_grablochderbodenschaetzung.gml_id IS 'Identifikator, global eindeutig';
721
722
723-- H i s t o r i s c h e s   F l u r s t ÃŒ c k   A L B
724-- ---------------------------------------------------
725-- Variante A: "Standardhistorie" (statt ax_historischesflurstueckohneraumbezug)
726
727-- Die "alte" Historie, die schon aus dem VorgÀngerverfahren ALB Ìbernommen wurde.
728-- VorgÀnger-Nachfolger-Beziehungen, ohne Geometrie
729
730CREATE TABLE ax_historischesflurstueckalb (
731        ogc_fid                         serial NOT NULL,
732        gml_id                          character(16),
733
734        -- GID: AX_Flurstueck_Kerndaten
735        -- 'FlurstÃŒck_Kerndaten' enthÀlt Eigenschaften des FlurstÃŒcks, die auch fÃŒr andere FlurstÃŒcksobjektarten gelten (z.B. Historisches FlurstÃŒck).
736        land                            integer,         --
737        gemarkungsnummer                integer,            --
738        flurnummer                      integer,               -- Teile des FlurstÃŒckskennzeichens
739        zaehler                         integer,            --    (redundant zu flurstueckskennzeichen)
740        nenner                          integer,         --
741        -- daraus abgeleitet:
742        flurstueckskennzeichen          character(20),         -- Inhalt rechts mit __ auf 20 aufgefÃŒllt
743
744        amtlicheflaeche                 double precision,      -- AFL
745        abweichenderrechtszustand       character(5),          -- ARZ
746        zweifelhafterFlurstuecksnachweis character(5),         -- ZFM Boolean
747        rechtsbehelfsverfahren          integer,               -- RBV
748        zeitpunktderentstehung          character(10),         -- ZDE  Inhalt jjjj-mm-tt  besser Format date ?
749--      gemeindezugehoerigkeit  integer,
750        gemeinde                integer,
751        -- GID: ENDE AX_Flurstueck_Kerndaten
752
753        identifier              character(44),
754        beginnt                 character(20),
755        endet                   character(20),
756        advstandardmodell       varchar,
757        anlass                  integer,
758        "name"                  varchar[],
759        blattart                integer,
760        buchungsart             varchar,
761        buchungsblattkennzeichen        integer,
762        bezirk                                  integer,
763        buchungsblattnummermitbuchstabenerweiterung     varchar, --integer,
764        laufendenummerderbuchungsstelle                 integer,
765        zeitpunktderentstehungdesbezugsflurstuecks      varchar,
766
767        vorgaengerflurstueckskennzeichen        varchar[],
768        nachfolgerflurstueckskennzeichen        varchar[],
769        CONSTRAINT ax_historischesflurstueckalb_pk PRIMARY KEY (ogc_fid)
770);
771
772SELECT AddGeometryColumn('ax_historischesflurstueckalb','dummy',25832,'POINT',2);
773
774CREATE UNIQUE INDEX ax_historischesflurstueckalb_gml ON ax_historischesflurstueckalb USING btree (gml_id,beginnt);
775
776COMMENT ON TABLE  ax_historischesflurstueckalb        IS 'Historisches FlurstÃŒck ALB';
777COMMENT ON COLUMN ax_historischesflurstueckalb.gml_id IS 'Identifikator, global eindeutig';
778CREATE INDEX idx_histfsalb_vor
779   ON ax_historischesflurstueckalb (vorgaengerflurstueckskennzeichen ASC);
780  COMMENT ON INDEX idx_histfsalb_vor IS 'Suchen nach VorgÀnger-FlurstÃŒck';
781
782CREATE INDEX idx_histfsalb_nach
783   ON ax_historischesflurstueckalb (vorgaengerflurstueckskennzeichen ASC);
784  COMMENT ON INDEX idx_histfsalb_vor IS 'Suchen nach Nachfolger-FlurstÃŒck';
785  COMMENT ON TABLE  ax_historischesflurstueckalb        IS 'Historisches FlurstÃŒck ALB';
786  COMMENT ON COLUMN ax_historischesflurstueckalb.gml_id IS 'Identifikator, global eindeutig';
787  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.';
788  COMMENT ON COLUMN ax_historischesflurstueckalb.zaehler                   IS 'ZAE  Dieses Attribut enthÀlt den ZÀhler der FlurstÃŒcknummer';
789  COMMENT ON COLUMN ax_historischesflurstueckalb.nenner                    IS 'NEN  Dieses Attribut enthÀlt den Nenner der FlurstÃŒcknummer';
790  COMMENT ON COLUMN ax_historischesflurstueckalb.flurstueckskennzeichen    IS '"FlurstÃŒckskennzeichen" ist ein von der Katasterbehörde zur eindeutigen Bezeichnung des FlurstÃŒcks vergebenes Ordnungsmerkmal.
791Die Attributart setzt sich aus den nachfolgenden expliziten Attributarten in der angegebenen Reihenfolge zusammen:
792 1.  Land (2 Stellen)
793 2.  Gemarkungsnummer (4 Stellen)
794 3.  Flurnummer (3 Stellen)
795 4.  FlurstÃŒcksnummer
796 4.1 ZÀhler (5 Stellen)
797 4.2 Nenner (4 Stellen)
798 5.  FlurstÃŒcksfolge (2 Stellen)
799Die Elemente sind rechtsbÃŒndig zu belegen, fehlende Stellen sind mit fÃŒhrenden Nullen zu belegen.
800Da 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.
801Gleiches gilt fÃŒr FlurstÃŒcksnummern ohne Nenner, hier ist der fehlende Nenner im FlurstÃŒckskennzeichen durch Unterstriche zu ersetzen.';
802  COMMENT ON COLUMN ax_historischesflurstueckalb.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.';
803  COMMENT ON COLUMN ax_historischesflurstueckalb.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.';
804  COMMENT ON COLUMN ax_historischesflurstueckalb.zweifelhafterFlurstuecksnachweis IS 'ZFM "Zweifelhafter FlurstÃŒcksnachweis" ist eine Kennzeichnung eines FlurstÃŒcks, dessen Angaben nicht zweifelsfrei berichtigt werden können.';
805  COMMENT ON COLUMN ax_historischesflurstueckalb.rechtsbehelfsverfahren    IS 'RBV "Rechtsbehelfsverfahren" ist der Hinweis darauf, dass bei dem FlurstÃŒck ein laufendes Rechtsbehelfsverfahren anhÀngig ist.';
806  COMMENT ON COLUMN ax_historischesflurstueckalb.zeitpunktderentstehung    IS 'ZDE "Zeitpunkt der Entstehung" ist der Zeitpunkt, zu dem das FlurstÃŒck fachlich entstanden ist.';
807--COMMENT ON COLUMN ax_historischesflurstueckalb.gemeindezugehoerigkeit    IS 'GDZ "Gemeindezugehörigkeit" enthÀlt das Gemeindekennzeichen zur Zuordnung der FlustÃŒcksdaten zu einer Gemeinde.';
808  COMMENT ON COLUMN ax_historischesflurstueckalb.gemeinde                  IS 'Gemeindekennzeichen zur Zuordnung der FlustÃŒcksdaten zu einer Gemeinde.';
809
810
811-- Historisches FlurstÃŒck (ALKIS)
812-- ------------------------------
813-- Die "neue" Historie, die durch FortfÃŒhrungen innerhalb von ALKIS entstanden ist.
814CREATE TABLE ax_historischesflurstueck (
815        ogc_fid                         serial NOT NULL,
816        gml_id                          character(16),
817        -- GID: AX_Flurstueck_Kerndaten
818        -- 'FlurstÃŒck_Kerndaten' enthÀlt Eigenschaften des FlurstÃŒcks, die auch fÃŒr andere FlurstÃŒcksobjektarten gelten (z.B. Historisches FlurstÃŒck).
819        land                            integer,         --
820        gemarkungsnummer                integer,            --
821        flurnummer                      integer,               -- Teile des FlurstÃŒckskennzeichens
822        zaehler                         integer,            --    (redundant zu flurstueckskennzeichen)
823        nenner                          integer,         --
824        -- daraus abgeleitet:
825        flurstueckskennzeichen  character(20),                  -- Inhalt rechts mit __ auf 20 aufgefÃŒllt
826        amtlicheflaeche                 double precision,       -- AFL
827        abweichenderrechtszustand       varchar,                -- ARZ
828        zweifelhafterFlurstuecksnachweis varchar,               -- ZFM Boolean
829        rechtsbehelfsverfahren          integer,                -- RBV
830        zeitpunktderentstehung          character(10),          -- ZDE  Inhalt jjjj-mm-tt  besser Format date ?
831--      gemeindezugehoerigkeit          integer,
832        gemeinde                        integer,
833        -- GID: ENDE AX_Flurstueck_Kerndaten
834        identifier                      character(44),
835        beginnt                         character(20),
836        endet                           character(20),
837        advstandardmodell               varchar,
838        anlass                          integer,
839        art                             varchar[],
840        "name"                          varchar[],
841        regierungsbezirk                integer,
842        kreis                           integer,
843        vorgaengerflurstueckskennzeichen        varchar[],
844        nachfolgerflurstueckskennzeichen        varchar[],
845        blattart                        integer,
846        buchungsart                     integer,
847        buchungsblattkennzeichen        double precision,
848        bezirk                          integer,
849        buchungsblattnummermitbuchstabenerweiterung     character(20), -- hier lÀnger als (7)!
850        laufendenummerderbuchungsstelle integer,
851        CONSTRAINT ax_historischesflurstueck_pk PRIMARY KEY (ogc_fid)
852);
853
854SELECT AddGeometryColumn('ax_historischesflurstueck','wkb_geometry',25832,'GEOMETRY',2); -- POLYGON/MULTIPOLYGON
855
856CREATE INDEX ax_historischesflurstueck_geom_idx   ON ax_historischesflurstueck USING gist (wkb_geometry);
857CREATE UNIQUE INDEX ax_historischesflurstueck_gml ON ax_historischesflurstueck USING btree (gml_id,beginnt);
858
859-- Suche nach VorgÀnger / Nachfolger
860-- ++ Welche Methode fÃŒr ein Array?
861-- Wirkt das ÃŒberhaupt bei der Suche nach einem einzelnen Wert aus dem Array?
862CREATE INDEX idx_histfs_vor ON ax_historischesflurstueck (vorgaengerflurstueckskennzeichen ASC);
863CREATE INDEX idx_histfs_nach ON ax_historischesflurstueck (vorgaengerflurstueckskennzeichen ASC);
864
865-- COMMENT ON INDEX idx_histfsalb_vor IS 'Suchen nach VorgÀnger-FlurstÌck';
866-- COMMENT ON INDEX idx_histfsalb_vor IS 'Suchen nach Nachfolger-FlurstÃŒck';
867
868-- Die postgresql-Doku sagt dazu (http://www.postgresql.org/docs/9.1/static/arrays.html):
869--  "Arrays are not sets;
870--   searching for specific array elements can be a sign of database misdesign.
871--   Consider using a separate table with a row for each item that would be an array element.
872--   This will be easier to search, and is likely to scale better for a large number of elements."
873
874
875  COMMENT ON TABLE  ax_historischesflurstueck        IS 'Historisches FlurstÃŒck, ALKIS, MIT Geometrie';
876  COMMENT ON COLUMN ax_historischesflurstueck.gml_id IS 'Identifikator, global eindeutig';
877  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.';
878  COMMENT ON COLUMN ax_historischesflurstueck.zaehler                   IS 'ZAE  Dieses Attribut enthÀlt den ZÀhler der FlurstÃŒcknummer';
879  COMMENT ON COLUMN ax_historischesflurstueck.nenner                    IS 'NEN  Dieses Attribut enthÀlt den Nenner der FlurstÃŒcknummer';
880  COMMENT ON COLUMN ax_historischesflurstueck.flurstueckskennzeichen    IS '"FlurstÃŒckskennzeichen" ist ein von der Katasterbehörde zur eindeutigen Bezeichnung des FlurstÃŒcks vergebenes Ordnungsmerkmal.
881Die Attributart setzt sich aus den nachfolgenden expliziten Attributarten in der angegebenen Reihenfolge zusammen:
882 1.  Land (2 Stellen)
883 2.  Gemarkungsnummer (4 Stellen)
884 3.  Flurnummer (3 Stellen)
885 4.  FlurstÃŒcksnummer
886 4.1 ZÀhler (5 Stellen)
887 4.2 Nenner (4 Stellen)
888 5.  FlurstÃŒcksfolge (2 Stellen)
889Die Elemente sind rechtsbÃŒndig zu belegen, fehlende Stellen sind mit fÃŒhrenden Nullen zu belegen.
890Da 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.
891Gleiches gilt fÃŒr FlurstÃŒcksnummern ohne Nenner, hier ist der fehlende Nenner im FlurstÃŒckskennzeichen durch Unterstriche zu ersetzen.';
892  COMMENT ON COLUMN ax_historischesflurstueck.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.';
893  COMMENT ON COLUMN ax_historischesflurstueck.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.';
894  COMMENT ON COLUMN ax_historischesflurstueck.zweifelhafterFlurstuecksnachweis IS 'ZFM "Zweifelhafter FlurstÃŒcksnachweis" ist eine Kennzeichnung eines FlurstÃŒcks, dessen Angaben nicht zweifelsfrei berichtigt werden können.';
895  COMMENT ON COLUMN ax_historischesflurstueck.rechtsbehelfsverfahren    IS 'RBV "Rechtsbehelfsverfahren" ist der Hinweis darauf, dass bei dem FlurstÃŒck ein laufendes Rechtsbehelfsverfahren anhÀngig ist.';
896  COMMENT ON COLUMN ax_historischesflurstueck.zeitpunktderentstehung    IS 'ZDE "Zeitpunkt der Entstehung" ist der Zeitpunkt, zu dem das FlurstÃŒck fachlich entstanden ist.';
897--COMMENT ON COLUMN ax_historischesflurstueck.gemeindezugehoerigkeit    IS 'GDZ "Gemeindezugehörigkeit" enthÀlt das Gemeindekennzeichen zur Zuordnung der FlustÃŒcksdaten zu einer Gemeinde.';
898  COMMENT ON COLUMN ax_historischesflurstueck.gemeinde                  IS 'GDZ "Gemeindekennzeichen zur Zuordnung der FlustÃŒcksdaten zu einer Gemeinde.';
899
900
901-- Kennzeichen indizieren, z.B. fuer Suche aus der Historie
902CREATE INDEX ax_historischesflurstueck_kennz
903   ON ax_historischesflurstueck USING btree (flurstueckskennzeichen ASC NULLS LAST);
904COMMENT ON INDEX ax_historischesflurstueck_kennz IS 'Suche nach FlurstÃŒckskennzeichen';
905
906
907
908-- 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
909-- ------------------------------------------------------------------------
910CREATE TABLE ax_naturumweltoderbodenschutzrecht (
911        ogc_fid                 serial NOT NULL,
912        gml_id                  character(16),
913        identifier              character(44),
914        beginnt                 character(20),
915        endet                   character(20),
916        advstandardmodell       varchar,
917        anlass                  integer,
918        artderfestlegung        integer,
919        CONSTRAINT ax_naturumweltoderbodenschutzrecht_pk PRIMARY KEY (ogc_fid)
920);
921
922SELECT AddGeometryColumn('ax_naturumweltoderbodenschutzrecht','wkb_geometry',25832,'GEOMETRY',2); -- POLYGON/MULTIPOLYGON
923
924CREATE INDEX ax_naturumweltoderbodenschutzrecht_geom_idx   ON ax_naturumweltoderbodenschutzrecht USING gist (wkb_geometry);
925CREATE UNIQUE INDEX ax_naturumweltoderbodenschutzrecht_gml ON ax_naturumweltoderbodenschutzrecht USING btree (gml_id,beginnt);
926
927COMMENT 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';
928COMMENT ON COLUMN ax_naturumweltoderbodenschutzrecht.gml_id IS 'Identifikator, global eindeutig';
929
930
931-- S c h u t z g e b i e t   n a c h   W a s s e r r e c h t
932-- -----------------------------------------------------------
933CREATE TABLE ax_schutzgebietnachwasserrecht (
934        ogc_fid                 serial NOT NULL,
935        gml_id                  character(16),
936        identifier              character(44),
937        beginnt                 character(20),
938        endet                   character(20),
939        advstandardmodell       varchar,
940        anlass                  integer,
941        artderfestlegung        integer,
942        art                     varchar[], --(15)
943        "name"                  varchar[],
944        nummerdesschutzgebietes varchar,
945        CONSTRAINT ax_schutzgebietnachwasserrecht_pk PRIMARY KEY (ogc_fid)
946);
947
948SELECT AddGeometryColumn('ax_schutzgebietnachwasserrecht','dummy',25832,'POINT',2);
949
950CREATE UNIQUE INDEX ax_schutzgebietnachwasserrecht_gml ON ax_schutzgebietnachwasserrecht USING btree (gml_id,beginnt);
951
952COMMENT 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';
953COMMENT ON COLUMN ax_schutzgebietnachwasserrecht.gml_id IS 'Identifikator, global eindeutig';
954
955-- 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
956-- -----------------------------------------------------------------------------------------------------
957CREATE TABLE ax_schutzgebietnachnaturumweltoderbodenschutzrecht (
958        ogc_fid                 serial NOT NULL,
959        gml_id                  character(16),
960        identifier              character(44),
961        beginnt                 character(20),
962        endet                   character(20),
963        advstandardmodell       varchar,
964        anlass                  integer,
965        artderfestlegung        integer,
966        CONSTRAINT ax_schutzgebietnachnaturumweltoderbodenschutzrecht_pk PRIMARY KEY (ogc_fid)
967);
968
969SELECT AddGeometryColumn('ax_schutzgebietnachnaturumweltoderbodenschutzrecht','dummy',25832,'POINT',2);
970
971CREATE UNIQUE INDEX ax_schutzgebietnachnaturumweltoderbodenschutzrecht_gml ON ax_schutzgebietnachnaturumweltoderbodenschutzrecht USING btree (gml_id,beginnt);
972
973COMMENT 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';
974COMMENT ON COLUMN ax_schutzgebietnachnaturumweltoderbodenschutzrecht.gml_id IS 'Identifikator, global eindeutig';
975
976
977-- S c h u t z z o n e
978-- ----------------------------------------------
979CREATE TABLE ax_schutzzone (
980        ogc_fid                 serial NOT NULL,
981        gml_id                  character(16),
982        identifier              character(44),
983        beginnt                 character(20),
984        endet                   character(20),
985        advstandardmodell       varchar,
986        anlass                  integer,
987        "zone"                  integer,
988        art                     varchar[], --(15)
989        CONSTRAINT ax_schutzzone_pk PRIMARY KEY (ogc_fid)
990);
991
992SELECT AddGeometryColumn('ax_schutzzone','wkb_geometry',25832,'GEOMETRY',2); -- POLYGON/MULTIPOLYGON
993
994CREATE INDEX ax_schutzzone_geom_idx   ON ax_schutzzone USING gist (wkb_geometry);
995CREATE UNIQUE INDEX ax_schutzzone_gml ON ax_schutzzone USING btree (gml_id,beginnt);
996
997COMMENT ON TABLE  ax_schutzzone        IS 'S c h u t z z o n e';
998COMMENT ON COLUMN ax_schutzzone.gml_id IS 'Identifikator, global eindeutig';
999
1000
1001-- T o p o g r a p h i s c h e   L i n i e
1002-- ---------------------------------------------------
1003CREATE TABLE ax_topographischelinie (
1004        ogc_fid                 serial NOT NULL,
1005        gml_id                  character(16),
1006        identifier              character(44),
1007        beginnt                 character(20),
1008        endet                   character(20),
1009        advstandardmodell       varchar,
1010        anlass                  integer,
1011        liniendarstellung       integer,
1012        sonstigeeigenschaft     varchar,
1013        CONSTRAINT ax_topographischelinie_pk PRIMARY KEY (ogc_fid)
1014);
1015
1016SELECT AddGeometryColumn('ax_topographischelinie','wkb_geometry',25832,'LINESTRING',2);
1017
1018CREATE INDEX ax_topographischelinie_geom_idx   ON ax_topographischelinie USING gist(wkb_geometry);
1019CREATE UNIQUE INDEX ax_topographischelinie_gml ON ax_topographischelinie USING btree (gml_id,beginnt);
1020
1021COMMENT ON TABLE  ax_topographischelinie        IS 'T o p o g r a p h i s c h e   L i n i e';
1022COMMENT ON COLUMN ax_topographischelinie.gml_id IS 'Identifikator, global eindeutig';
1023
1024
1025--*** ############################################################
1026--*** Objektbereich: AAA Basisschema
1027--*** ############################################################
1028
1029--** Objektartengruppe: AAA_Praesentationsobjekte
1030--   ===================================================================
1031
1032
1033-- A P   P P O
1034-- ----------------------------------------------
1035CREATE TABLE ap_ppo (
1036        ogc_fid                 serial NOT NULL,
1037        gml_id                  character(16),
1038        identifier              character(44),
1039        beginnt                 character(20),
1040        endet                   character(20),
1041        advstandardmodell       varchar[],
1042        sonstigesmodell         varchar,
1043        anlass                  integer,
1044        signaturnummer          integer,
1045        art                     varchar,
1046        drehwinkel              double precision,
1047        CONSTRAINT ap_ppo_pk PRIMARY KEY (ogc_fid)
1048);
1049
1050SELECT AddGeometryColumn('ap_ppo','wkb_geometry',25832,'GEOMETRY',2); -- POINT/MULTIPOLYGON
1051
1052CREATE INDEX ap_ppo_geom_idx   ON ap_ppo USING gist (wkb_geometry);
1053CREATE UNIQUE INDEX ap_ppo_gml ON ap_ppo USING btree (gml_id,beginnt);
1054
1055COMMENT ON TABLE  ap_ppo        IS 'PPO: Punktförmiges PrÀsentationsobjekt';
1056COMMENT ON COLUMN ap_ppo.gml_id IS 'Identifikator, global eindeutig';
1057
1058
1059-- A P   L P O
1060-- ----------------------------------------------
1061CREATE TABLE ap_lpo (
1062        ogc_fid                 serial NOT NULL,
1063        gml_id                  character(16),
1064        identifier              character(44),
1065        beginnt                 character(20),
1066        endet                   character(20),
1067        advstandardmodell       varchar[],              -- Array!
1068        anlass                  integer,
1069        signaturnummer          integer,
1070        art                     varchar,
1071        CONSTRAINT ap_lpo_pk PRIMARY KEY (ogc_fid)
1072);
1073SELECT AddGeometryColumn('ap_lpo','wkb_geometry',25832,'LINESTRING',2);
1074
1075CREATE INDEX ap_lpo_geom_idx   ON ap_lpo USING gist (wkb_geometry);
1076CREATE UNIQUE INDEX ap_lpo_gml ON ap_lpo USING btree (gml_id,beginnt);
1077
1078COMMENT ON TABLE  ap_lpo        IS 'LPO: Linienförmiges PrÀsentationsobjekt';
1079COMMENT ON COLUMN ap_lpo.gml_id IS 'Identifikator, global eindeutig';
1080
1081
1082-- A P   P T O
1083-- ----------------------------------------------
1084CREATE TABLE ap_pto (
1085        ogc_fid                 serial NOT NULL,
1086        gml_id                  character(16),
1087        identifier              character(44),
1088        beginnt                 character(20),
1089        endet                   character(20),
1090        advstandardmodell       varchar[],
1091        anlass                  integer,
1092        schriftinhalt           varchar,  -- (47)
1093        fontsperrung            double precision,
1094        skalierung              double precision,
1095        horizontaleausrichtung  varchar,
1096        vertikaleausrichtung    varchar,
1097        signaturnummer          integer,
1098        art                     varchar,  -- Inhalte z.B. "ZAE_NEN" siehe unten
1099        drehwinkel              double precision,       -- falsche Masseinheit fÃŒr Mapserver, im View umrechnen
1100        CONSTRAINT ap_pto_pk PRIMARY KEY (ogc_fid)
1101);
1102
1103SELECT AddGeometryColumn('ap_pto','wkb_geometry',25832,'POINT',2);
1104
1105CREATE INDEX ap_pto_geom_idx   ON ap_pto USING gist (wkb_geometry);
1106CREATE UNIQUE INDEX ap_pto_gml ON ap_pto USING btree (gml_id,beginnt);
1107CREATE INDEX art_idx           ON ap_pto USING btree (art);
1108
1109COMMENT ON TABLE  ap_pto               IS 'PTO: Textförmiges PrÀsentationsobjekt mit punktförmiger Textgeometrie ';
1110COMMENT ON COLUMN ap_pto.gml_id        IS 'Identifikator, global eindeutig';
1111COMMENT ON COLUMN ap_pto.schriftinhalt IS 'Label: anzuzeigender Text';
1112COMMENT ON INDEX  art_idx              IS 'Suchindex auf hÀufig benutztem Filterkriterium';
1113
1114
1115-- Die Abfrage "select distinct art from ap_pto" liefert folgende Werte:
1116-- "ART""BezKlassifizierungStrasse""BSA""BWF""FKT""Fliessgewaesser""FreierText""Friedhof""Gewanne"
1117-- "GFK""GKN""Halde_LGT""HNR""MDB""NAM""PKN""Platz""PNR""SPO""Strasse"
1118-- "urn:adv:fachdatenverbindung:AA_Antrag""WE1_TEXT""Weg""ZAE_NEN""ZNM""<NULL>"
1119
1120
1121
1122-- A P   L T O
1123-- ----------------------------------------------
1124CREATE TABLE ap_lto (
1125        ogc_fid                 serial NOT NULL,
1126        gml_id                  character(16),
1127        identifier              character(44),
1128        beginnt                 character(20),
1129        endet                   character(20),
1130        advstandardmodell       varchar,
1131        sonstigesmodell         varchar,
1132        anlass                  integer,
1133        art                     varchar,
1134        schriftinhalt           varchar,
1135        fontsperrung            integer,
1136        skalierung              integer,
1137        horizontaleausrichtung  varchar,
1138        vertikaleausrichtung    varchar,
1139        CONSTRAINT ap_lto_pk PRIMARY KEY (ogc_fid)
1140);
1141
1142SELECT AddGeometryColumn('ap_lto','wkb_geometry',25832,'LINESTRING',2);
1143
1144CREATE INDEX ap_lto_geom_idx   ON ap_lto USING gist (wkb_geometry);
1145CREATE UNIQUE INDEX ap_lto_gml ON ap_lto USING btree (gml_id,beginnt);
1146
1147COMMENT ON TABLE  ap_lto        IS 'LTO: Textförmiges PrÀsentationsobjekt mit linienförmiger Textgeometrie';
1148COMMENT ON COLUMN ap_lto.gml_id IS 'Identifikator, global eindeutig';
1149
1150
1151-- A P  D a r s t e l l u n g
1152-- ----------------------------------------------
1153CREATE TABLE ap_darstellung (
1154        ogc_fid                 serial NOT NULL,
1155        gml_id                  character(16),
1156        identifier              character(44),
1157        beginnt                 character(20),                  -- Datumsformat
1158        endet                   character(20),                  -- Datumsformat
1159        advstandardmodell       varchar,
1160        anlass                  integer,
1161        art                     varchar,                -- (37)
1162        signaturnummer          integer,
1163        CONSTRAINT ap_darstellung_pk PRIMARY KEY (ogc_fid)
1164);
1165
1166-- Dummy-Eintrag in Metatabelle
1167SELECT AddGeometryColumn('ap_darstellung','dummy',25832,'POINT',2);
1168
1169CREATE UNIQUE INDEX ap_darstellung_gml ON ap_darstellung USING btree (gml_id,beginnt);
1170
1171COMMENT ON TABLE  ap_darstellung        IS 'A P  D a r s t e l l u n g';
1172COMMENT ON COLUMN ap_darstellung.gml_id IS 'Identifikator, global eindeutig';
1173
1174
1175--*** ############################################################
1176--*** Objektbereich: FlurstÃŒcke, Lage, Punkte
1177--*** ############################################################
1178
1179--** Objektartengruppe: Angaben zum FlurstÃŒck
1180--   ===================================================================
1181
1182-- F l u r s t u e c k
1183-- ----------------------------------------------
1184-- Kennung 11001
1185CREATE TABLE ax_flurstueck (
1186        ogc_fid                         serial NOT NULL,
1187        gml_id                          character(16),         -- Datenbank-Tabelle interner SchlÃŒssel
1188--      zustaendigeStelle               varchar,               -- ZST
1189
1190        -- GID: AX_Flurstueck_Kerndaten
1191        -- 'FlurstÃŒck_Kerndaten' enthÀlt Eigenschaften des FlurstÃŒcks, die auch fÃŒr andere FlurstÃŒcksobjektarten gelten (z.B. Historisches FlurstÃŒck).
1192
1193        land                            integer,         --
1194        gemarkungsnummer                integer,            --
1195        flurnummer                      integer,               -- Teile des FlurstÃŒckskennzeichens
1196        zaehler                         integer,            --    (redundant zu flurstueckskennzeichen)
1197        nenner                          integer,         --
1198        -- daraus abgeleitet:
1199        flurstueckskennzeichen          character(20),         -- Inhalt rechts mit __ auf 20 aufgefÃŒllt
1200
1201        amtlicheflaeche                 double precision,      -- AFL
1202        abweichenderrechtszustand       varchar,               -- ARZ
1203        zweifelhafterFlurstuecksnachweis varchar,              -- ZFM Boolean
1204        rechtsbehelfsverfahren          integer,               -- RBV
1205        zeitpunktderentstehung          character(10),         -- ZDE  Inhalt jjjj-mm-tt  besser Format date ?
1206
1207        gemeinde                        integer,
1208        -- GID: ENDE AX_Flurstueck_Kerndaten
1209
1210        identifier                      character(44),         -- global eindeutige Objektnummer
1211        beginnt                         character(20),         -- Timestamp der Entstehung
1212        endet                           character(20),         -- Timestamp des Untergangs
1213        advstandardmodell               varchar,               -- steuert die Darstellung nach Kartentyp
1214        anlass                          integer,
1215--      art                             varchar[],   -- Wozu braucht man das? Weglassen?
1216        "name"                          varchar[],   -- 03.11.2011: array, Buchauskunft anpassen!
1217        regierungsbezirk                integer,
1218        kreis                           integer,
1219
1220-- neu aus SVN-Version 28.02.2012 hinzugefuegt
1221-- Dies ist noch zu ueberpruefen
1222        angabenzumabschnittflurstueck   varchar[],
1223--      "gemeindezugehoerigkeit|ax_gemeindekennzeichen|land" integer, -- siehe "land"
1224        kennungschluessel               varchar[],
1225        flaechedesabschnitts            double precision[],
1226
1227        angabenzumabschnittnummeraktenzeichen integer[],
1228        angabenzumabschnittbemerkung    varchar[],
1229
1230        -- siehe alkis_relationen
1231--      istgebucht                      character varying,
1232--      zeigtauf                        character varying,
1233--      weistauf                        character varying,
1234-- neu-Ende
1235        CONSTRAINT ax_flurstueck_pk PRIMARY KEY (ogc_fid)
1236);
1237
1238SELECT AddGeometryColumn('ax_flurstueck','wkb_geometry',25832,'GEOMETRY',2);
1239
1240CREATE INDEX ax_flurstueck_geom_idx   ON ax_flurstueck USING gist (wkb_geometry);
1241CREATE UNIQUE INDEX ax_flurstueck_gml ON ax_flurstueck USING btree (gml_id,beginnt);
1242
1243  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.';
1244  COMMENT ON COLUMN ax_flurstueck.gml_id                    IS 'Identifikator, global eindeutig';
1245--COMMENT ON COLUMN ax_flurstueck.zustaendigeStelle         IS 'ZST "FlurstÃŒck" wird verwaltet von "Dienststelle". Diese Attributart wird nur dann belegt, wenn eine fachliche ZustÀndigkeit ÃŒber eine Gemarkung bzw. Gemarkungsteil/Flur nicht abgebildet werden kann. Die Attributart enthÀlt den DienststellenschlÃŒssel der Stelle, die fachlich fÃŒr ein FlurstÃŒck zustandig ist.';
1246  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.';
1247  COMMENT ON COLUMN ax_flurstueck.zaehler                   IS 'ZAE  Dieses Attribut enthÀlt den ZÀhler der FlurstÃŒcknummer';
1248  COMMENT ON COLUMN ax_flurstueck.nenner                    IS 'NEN  Dieses Attribut enthÀlt den Nenner der FlurstÃŒcknummer';
1249  COMMENT ON COLUMN ax_flurstueck.flurstueckskennzeichen    IS '"FlurstÃŒckskennzeichen" ist ein von der Katasterbehörde zur eindeutigen Bezeichnung des FlurstÃŒcks vergebenes Ordnungsmerkmal.
1250Die Attributart setzt sich aus den nachfolgenden expliziten Attributarten in der angegebenen Reihenfolge zusammen:
1251 1.  Land (2 Stellen)
1252 2.  Gemarkungsnummer (4 Stellen)
1253 3.  Flurnummer (3 Stellen)
1254 4.  FlurstÃŒcksnummer
1255 4.1 ZÀhler (5 Stellen)
1256 4.2 Nenner (4 Stellen)
1257 5.  FlurstÃŒcksfolge (2 Stellen)
1258Die Elemente sind rechtsbÃŒndig zu belegen, fehlende Stellen sind mit fÃŒhrenden Nullen zu belegen.
1259Da 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.
1260Gleiches gilt fÃŒr FlurstÃŒcksnummern ohne Nenner, hier ist der fehlende Nenner im FlurstÃŒckskennzeichen durch Unterstriche zu ersetzen.';
1261  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.';
1262  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.';
1263  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.';
1264  COMMENT ON COLUMN ax_flurstueck.rechtsbehelfsverfahren    IS 'RBV "Rechtsbehelfsverfahren" ist der Hinweis darauf, dass bei dem FlurstÃŒck ein laufendes Rechtsbehelfsverfahren anhÀngig ist.';
1265  COMMENT ON COLUMN ax_flurstueck.zeitpunktderentstehung    IS 'ZDE "Zeitpunkt der Entstehung" ist der Zeitpunkt, zu dem das FlurstÃŒck fachlich entstanden ist.';
1266--COMMENT ON COLUMN ax_flurstueck.gemeindezugehoerigkeit    IS 'GDZ "Gemeindezugehörigkeit" enthÀlt das Gemeindekennzeichen zur Zuordnung der FlustÃŒcksdaten zu einer Gemeinde.';
1267  COMMENT ON COLUMN ax_flurstueck.gemeinde                  IS 'Gemeindekennzeichen zur Zuordnung der FlustÃŒcksdaten zu einer Gemeinde.';
1268  COMMENT ON COLUMN ax_flurstueck.name                      IS 'Array mit FortfÃŒhrungsjahr und -Nummer';
1269  COMMENT ON COLUMN ax_flurstueck.regierungsbezirk          IS 'Regierungsbezirk';
1270  COMMENT ON COLUMN ax_flurstueck.kreis                     IS 'Kreis';
1271
1272
1273-- Kennzeichen indizieren, z.B. fuer Suche aus der Historie
1274CREATE INDEX ax_flurstueck_kennz
1275   ON ax_flurstueck USING btree (flurstueckskennzeichen ASC NULLS LAST);
1276COMMENT ON INDEX ax_flurstueck_kennz IS 'Suche nach FlurstÃŒckskennzeichen';
1277
1278-- Relationen:
1279--  istGebucht                --> AX_Buchungsstelle
1280--  zeigtAuf                  --> AX_LagebezeichnungOhneHausnummer
1281--  weistAuf                  --> AX_LagebezeichnungMitHausnummer
1282--  gehoertAnteiligZu         --> AX_Flurstueck
1283--  beziehtSichAufFlurstueck  --> AX_Flurstueck
1284
1285
1286
1287-- 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
1288-- -----------------------------------------------------
1289CREATE TABLE ax_besondereflurstuecksgrenze (
1290        ogc_fid                 serial NOT NULL,
1291        gml_id                  character(16),
1292        identifier              character(44),
1293        beginnt                 character(20),
1294        endet                   character(20),
1295        advstandardmodell       varchar,
1296        anlass                  integer,
1297        artderflurstuecksgrenze integer[],  -- geaendert. 18.09.2011
1298        CONSTRAINT ax_besondereflurstuecksgrenze_pk PRIMARY KEY (ogc_fid)
1299);
1300
1301SELECT AddGeometryColumn('ax_besondereflurstuecksgrenze','wkb_geometry',25832,'LINESTRING',2);
1302
1303CREATE INDEX ax_besondereflurstuecksgrenze_geom_idx   ON ax_besondereflurstuecksgrenze USING gist (wkb_geometry);
1304CREATE UNIQUE INDEX ax_besondereflurstuecksgrenze_gml ON ax_besondereflurstuecksgrenze USING btree (gml_id,beginnt);
1305
1306COMMENT 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';
1307COMMENT ON COLUMN ax_besondereflurstuecksgrenze.gml_id IS 'Identifikator, global eindeutig';
1308
1309
1310-- G r e n z p u n k t
1311-- ----------------------------------------------
1312CREATE TABLE ax_grenzpunkt (
1313        ogc_fid                         serial NOT NULL,
1314        gml_id                          character(16),
1315        identifier                      character(44),
1316        beginnt                         character(20),
1317        endet                           character(20),
1318        advstandardmodell               varchar,
1319        anlass                          integer,
1320        punktkennung                    varchar, -- integer,
1321        land                            integer,
1322        stelle                          integer,
1323        abmarkung_marke                 integer,
1324        festgestelltergrenzpunkt        varchar,
1325        bemerkungzurabmarkung           integer,
1326        sonstigeeigenschaft             varchar[],
1327        art                             varchar, --(37)
1328        "name"                          varchar[],
1329        zeitpunktderentstehung          integer,
1330        CONSTRAINT ax_grenzpunkt_pk PRIMARY KEY (ogc_fid)
1331);
1332
1333SELECT AddGeometryColumn('ax_grenzpunkt','dummy',25832,'POINT',2);
1334
1335CREATE UNIQUE INDEX ax_grenzpunkt_gml ON ax_grenzpunkt USING btree (gml_id,beginnt);
1336
1337COMMENT ON TABLE  ax_grenzpunkt        IS 'G r e n z p u n k t';
1338COMMENT ON COLUMN ax_grenzpunkt.gml_id IS 'Identifikator, global eindeutig';
1339
1340
1341--** Objektartengruppe: Angaben zur Lage
1342--   ===================================================================
1343
1344-- 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
1345-- -------------------------------------------------------------
1346CREATE TABLE ax_lagebezeichnungohnehausnummer (
1347        ogc_fid                 serial NOT NULL,
1348        gml_id                  character(16),
1349        identifier              character(44),
1350        beginnt                 character(20),
1351        endet                   character(20),
1352        advstandardmodell       varchar,
1353        anlass                  integer,
1354        unverschluesselt        varchar, -- Straßenname
1355        land                    integer,
1356        regierungsbezirk        integer,
1357        kreis                   integer,
1358        gemeinde                integer,
1359        lage                    varchar,
1360        CONSTRAINT ax_lagebezeichnungohnehausnummer_pk PRIMARY KEY (ogc_fid)
1361);
1362
1363SELECT AddGeometryColumn('ax_lagebezeichnungohnehausnummer','dummy',25832,'POINT',2);
1364
1365-- Verbindungstabellen indizieren
1366CREATE UNIQUE INDEX ax_lagebezeichnungohnehausnummer_gml ON ax_lagebezeichnungohnehausnummer USING btree (gml_id,beginnt);
1367
1368-- Such-Index (z.B. fuer Navigations-Programm)
1369CREATE INDEX ax_lagebezeichnungohnehausnummer_key ON ax_lagebezeichnungohnehausnummer USING btree (land, regierungsbezirk, kreis, gemeinde,lage);
1370
1371COMMENT 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';
1372COMMENT ON COLUMN ax_lagebezeichnungohnehausnummer.gml_id IS 'Identifikator, global eindeutig';
1373
1374
1375-- 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
1376-- -----------------------------------------------------------
1377--   ax_flurstueck  >weistAuf>    AX_LagebezeichnungMitHausnummer
1378--                  <gehoertZu<
1379CREATE TABLE ax_lagebezeichnungmithausnummer (
1380        ogc_fid                 serial NOT NULL,
1381        gml_id                  character(16),
1382        identifier              character(44),
1383        beginnt                 character(20),
1384        endet                   character(20),
1385        advstandardmodell       varchar,
1386        anlass                  integer,
1387        land                    integer,
1388        regierungsbezirk        integer,
1389        kreis                   integer,
1390        gemeinde                integer,
1391        lage                    varchar,        -- Strassenschluessel
1392        hausnummer              varchar,        -- Nummer (blank) Zusatz
1393        CONSTRAINT ax_lagebezeichnungmithausnummer_pk PRIMARY KEY (ogc_fid)
1394);
1395
1396SELECT AddGeometryColumn('ax_lagebezeichnungmithausnummer','dummy',25832,'POINT',2);
1397
1398CREATE UNIQUE INDEX ax_lagebezeichnungmithausnummer_gml ON ax_lagebezeichnungmithausnummer USING btree (gml_id,beginnt); -- Verbindungstabellen indizieren
1399CREATE INDEX ax_lagebezeichnungmithausnummer_lage       ON ax_lagebezeichnungmithausnummer USING btree (gemeinde, lage); -- Adressen-Suche nach Strasse
1400
1401COMMENT 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';
1402COMMENT ON COLUMN ax_lagebezeichnungmithausnummer.gml_id IS 'Identifikator, global eindeutig';
1403
1404
1405-- 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
1406-- --------------------------------------------------------------
1407-- NebengebÀude: lfd-Nummer eines NebengebÀudes zu einer (Pseudo-) Hausnummer
1408CREATE TABLE ax_lagebezeichnungmitpseudonummer (
1409        ogc_fid                 serial NOT NULL,
1410        gml_id                  character(16),
1411        identifier              character(44),
1412        beginnt                 character(20),
1413        endet                   character(20),
1414        advstandardmodell       varchar,
1415        anlass                  integer,
1416        land                    integer,
1417        regierungsbezirk        integer,
1418        kreis                   integer,
1419        gemeinde                integer,
1420        lage                    varchar, -- Strassenschluessel
1421        pseudonummer            varchar,
1422        laufendenummer          varchar, -- leer, Zahl, "P2"
1423        CONSTRAINT ax_lagebezeichnungmitpseudonummer_pk PRIMARY KEY (ogc_fid)
1424);
1425
1426SELECT AddGeometryColumn('ax_lagebezeichnungmitpseudonummer','dummy',25832,'POINT',2);
1427
1428-- Verbindungstabellen indizieren
1429CREATE UNIQUE INDEX ax_lagebezeichnungmitpseudonummer_gml ON ax_lagebezeichnungmitpseudonummer USING btree (gml_id,beginnt);
1430
1431COMMENT 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';
1432COMMENT ON COLUMN ax_lagebezeichnungmitpseudonummer.gml_id IS 'Identifikator, global eindeutig';
1433
1434
1435
1436--** Objektartengruppe: Angaben zum Netzpunkt
1437--   ===================================================================
1438
1439
1440-- A u f n a h m e p u n k t
1441-- ----------------------------------------------
1442CREATE TABLE ax_aufnahmepunkt (
1443        ogc_fid                 serial NOT NULL,
1444        gml_id                  character(16),
1445        identifier              character(44),
1446        beginnt                 character(20),
1447        endet                   character(20),
1448        advstandardmodell       varchar,
1449        anlass                  integer,
1450        punktkennung            varchar,   --integer ist zu klein,
1451        land                    integer,
1452        stelle                  integer,
1453        sonstigeeigenschaft     varchar[],
1454        vermarkung_marke        integer,
1455        CONSTRAINT ax_aufnahmepunkt_pk PRIMARY KEY (ogc_fid)
1456);
1457
1458SELECT AddGeometryColumn('ax_aufnahmepunkt','dummy',25832,'POINT',2);
1459
1460CREATE UNIQUE INDEX ax_aufnahmepunkt_gml ON ax_aufnahmepunkt USING btree (gml_id,beginnt);
1461
1462COMMENT ON TABLE  ax_aufnahmepunkt        IS 'A u f n a h m e p u n k t';
1463COMMENT ON COLUMN ax_aufnahmepunkt.gml_id IS 'Identifikator, global eindeutig';
1464
1465
1466-- S i c h e r u n g s p u n k t
1467-- ----------------------------------------------
1468-- DROP TABLE ax_sicherungspunkt;
1469CREATE TABLE ax_sicherungspunkt (
1470        ogc_fid                 serial NOT NULL,
1471        gml_id                  varchar,
1472        beginnt                 varchar,
1473        advstandardmodell       varchar,
1474        anlass                  integer,
1475        "name"                  varchar,
1476        punktkennung            varchar,
1477        land                    integer,
1478        stelle                  integer,
1479        sonstigeeigenschaft     varchar,
1480        vermarkung_marke        integer,
1481        CONSTRAINT ax_sicherungspunkt_pk PRIMARY KEY (ogc_fid)
1482);
1483
1484SELECT AddGeometryColumn('ax_sicherungspunkt','dummy',25832,'POINT',2);
1485
1486
1487-- 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
1488-- ---------------------------------------------------
1489CREATE TABLE ax_sonstigervermessungspunkt (
1490        ogc_fid                 serial NOT NULL,
1491        gml_id                  character(16),
1492        identifier              character(44),
1493        beginnt                 character(20),
1494        endet                   character(20),
1495        advstandardmodell       varchar,
1496        anlass                  integer,
1497        vermarkung_marke        integer,
1498        punktkennung            varchar, -- integer,
1499        land                    integer,
1500        stelle                  integer,
1501        sonstigeeigenschaft     varchar[],
1502        CONSTRAINT ax_sonstigervermessungspunkt_pk PRIMARY KEY (ogc_fid)
1503);
1504
1505SELECT AddGeometryColumn('ax_sonstigervermessungspunkt','dummy',25832,'POINT',2);
1506
1507CREATE UNIQUE INDEX ax_sonstigervermessungspunkt_gml ON ax_sonstigervermessungspunkt USING btree (gml_id,beginnt);
1508
1509COMMENT 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';
1510COMMENT ON COLUMN ax_sonstigervermessungspunkt.gml_id IS 'Identifikator, global eindeutig';
1511
1512
1513--AX_Netzpunkt
1514-- ** Tabelle bisher noch nicht generiert
1515
1516
1517--** Objektartengruppe: Angaben zum Punktort
1518--   ===================================================================
1519
1520
1521--AX_Punktort
1522
1523
1524-- P u n k t o r t   AG
1525-- ----------------------------------------------
1526CREATE TABLE ax_punktortag (
1527        ogc_fid                 serial NOT NULL,
1528        gml_id                  character(16),
1529        identifier              character(44),
1530        beginnt                 character(20),
1531        endet                   character(20),
1532        advstandardmodell       varchar,
1533        anlass                  integer,
1534        art                     varchar[],
1535        "name"                  varchar[],
1536        --kartendarstellung     varchar, -- true/false
1537        kartendarstellung       integer,
1538--      "qualitaetsangaben|ax_dqpunktort|herkunft|li_lineage|processstep" integer, -- varchar[],
1539        genauigkeitsstufe       integer,
1540        vertrauenswuerdigkeit   integer,
1541        CONSTRAINT ax_punktortag_pk PRIMARY KEY (ogc_fid)
1542);
1543
1544SELECT AddGeometryColumn('ax_punktortag','wkb_geometry',25832,'POINT',2);
1545
1546CREATE INDEX ax_punktortag_geom_idx ON ax_punktortag USING gist (wkb_geometry);
1547CREATE UNIQUE INDEX ax_punktortag_gml ON ax_punktortag USING btree (gml_id,beginnt);
1548
1549COMMENT ON TABLE  ax_punktortag        IS 'P u n k t o r t   AG';
1550COMMENT ON COLUMN ax_punktortag.gml_id IS 'Identifikator, global eindeutig';
1551
1552
1553-- P u n k t o r t   A U
1554-- ----------------------------------------------
1555CREATE TABLE ax_punktortau (
1556        ogc_fid                 serial NOT NULL,
1557        gml_id                  character(16),
1558        identifier              character(44),
1559        beginnt                 character(20),
1560        endet                   character(20),
1561        advstandardmodell       varchar,
1562        anlass                  integer,
1563--      kartendarstellung       varchar, -- true / false: boolean
1564        kartendarstellung       integer,
1565--      art                     varchar, -- entbehrlich
1566        "name"                  varchar[],
1567--      "qualitaetsangaben|ax_dqpunktort|herkunft|li_lineage|processstep" integer,  --varchar[],
1568--      datetime                character(24)[],
1569        individualname          varchar,
1570        vertrauenswuerdigkeit   integer,
1571        genauigkeitsstufe       integer,
1572        CONSTRAINT ax_punktortau_pk PRIMARY KEY (ogc_fid)
1573);
1574
1575SELECT AddGeometryColumn('ax_punktortau','wkb_geometry',25832,'POINT',3); -- 0,0,Höhe
1576
1577CREATE INDEX ax_punktortau_geom_idx ON ax_punktortau USING gist (wkb_geometry);
1578CREATE UNIQUE INDEX ax_punktortau_gml ON ax_punktortau USING btree (gml_id,beginnt);
1579
1580COMMENT ON TABLE  ax_punktortau        IS 'P u n k t o r t   A U';
1581COMMENT ON COLUMN ax_punktortau.gml_id IS 'Identifikator, global eindeutig';
1582
1583
1584-- P u n k t o r t   T A
1585-- ----------------------------------------------
1586CREATE TABLE ax_punktortta (
1587        ogc_fid                 serial NOT NULL,
1588        gml_id                  character(16),
1589        identifier              character(44),
1590        beginnt                 character(20),
1591        endet                   character(20),
1592        advstandardmodell       varchar,
1593        anlass                  integer,
1594        kartendarstellung       integer,      -- boolean
1595        description             integer,
1596        art                     varchar[],
1597        "name"                  varchar[],
1598        genauigkeitsstufe       integer,
1599        vertrauenswuerdigkeit   integer,
1600        CONSTRAINT ax_punktortta_pk PRIMARY KEY (ogc_fid)
1601);
1602
1603SELECT AddGeometryColumn('ax_punktortta','wkb_geometry',25832,'POINT',2);
1604
1605CREATE INDEX ax_punktortta_geom_idx ON ax_punktortta USING gist (wkb_geometry);
1606CREATE UNIQUE INDEX ax_punktortta_gml ON ax_punktortta USING btree (gml_id,beginnt);
1607
1608COMMENT ON TABLE  ax_punktortta        IS 'P u n k t o r t   T A';
1609COMMENT ON COLUMN ax_punktortta.gml_id IS 'Identifikator, global eindeutig';
1610
1611
1612--** Objektartengruppe: FortfÃŒhrungsnachweis
1613--   ===================================================================
1614
1615-- 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
1616-- --------------------------------------------------------------
1617CREATE TABLE ax_fortfuehrungsnachweisdeckblatt (
1618        ogc_fid                         serial NOT NULL,
1619        gml_id                          character(16),
1620        identifier                      character(44),
1621        beginnt                         character(20),
1622        endet                           character(20),
1623        advstandardmodell               varchar,
1624        anlass                          integer,
1625--      art                             varchar,                -- entbehrlich
1626        uri                             varchar,
1627        fortfuehrungsfallnummernbereich varchar,
1628        land                            integer, -- ingemarkung|ax_gemarkung_schluessel
1629        gemarkungsnummer                integer, -- ingemarkung|ax_gemarkung_schluessel
1630        laufendenummer                  integer,
1631        titel                           varchar,
1632        erstelltam                      varchar,                -- Datum jjjj-mm-tt
1633        fortfuehrungsentscheidungam     varchar,
1634        fortfuehrungsentscheidungvon    varchar,                -- Bearbeiter-Name und -Titel
1635        bemerkung                       varchar,
1636        beziehtsichauf                  character varying,
1637        CONSTRAINT ax_fortfuehrungsnachweisdeckblatt_pk PRIMARY KEY (ogc_fid)
1638);
1639
1640SELECT AddGeometryColumn('ax_fortfuehrungsnachweisdeckblatt','dummy',25832,'POINT',2);
1641
1642COMMENT ON TABLE  ax_fortfuehrungsnachweisdeckblatt
1643IS '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';
1644
1645
1646-- F o r t f u e h r u n g s f a l l
1647-- ---------------------------------
1648CREATE TABLE ax_fortfuehrungsfall (
1649        ogc_fid                                 serial NOT NULL,
1650        gml_id                                  character(16),
1651        identifier                              character(44),
1652        beginnt                                 character(20),
1653        endet                                   character(20),
1654        advstandardmodell                       varchar,
1655        anlass                                  integer,
1656--      art                                     varchar,  -- entbehrlich
1657        uri                                     varchar,
1658        fortfuehrungsfallnummer                 integer,
1659        laufendenummer                          integer,
1660        ueberschriftimfortfuehrungsnachweis     integer[],
1661        anzahlderfortfuehrungsmitteilungen      integer,
1662        zeigtaufaltesflurstueck                 varchar[], -- Format wie flurstueckskennzeichen (20) als Array
1663        zeigtaufneuesflurstueck                 varchar[], -- Format wie flurstueckskennzeichen (20) als Array
1664        bemerkung                               varchar,
1665        CONSTRAINT ax_fortfuehrungsfall_pk PRIMARY KEY (ogc_fid)
1666);
1667
1668SELECT AddGeometryColumn('ax_fortfuehrungsfall','dummy',25832,'POINT',2);
1669
1670COMMENT ON TABLE  ax_fortfuehrungsfall IS 'F o r t f u e h r u n g s f a l l';
1671
1672
1673--** Objektartengruppe: Angaben zur Reservierung
1674--   ===================================================================
1675
1676-- R e s e r v i e r u n g
1677-- -----------------------
1678CREATE TABLE ax_reservierung (
1679        ogc_fid                 serial NOT NULL,
1680        gml_id                  character(16),
1681        beginnt                 varchar,
1682        advstandardmodell       varchar,
1683        art                     integer,
1684        nummer                  varchar,
1685        land                    integer,
1686        stelle                  integer,
1687        ablaufderreservierung   varchar,
1688        antragsnummer           varchar,
1689        auftragsnummer          varchar,
1690        CONSTRAINT ax_reservierung_pk PRIMARY KEY (ogc_fid)
1691);
1692
1693SELECT AddGeometryColumn('ax_reservierung','dummy',25832,'POINT',2);
1694
1695-- P u n k t k e n n u n g  U n t e r g e g a n g e n
1696-- --------------------------------------------------
1697CREATE TABLE ax_punktkennunguntergegangen (
1698        ogc_fid                 serial NOT NULL,
1699        gml_id                  character(16),
1700        beginnt                 varchar,
1701        advstandardmodell       varchar,
1702        sonstigesmodell         varchar,
1703        anlass                  integer,
1704        punktkennung            varchar,
1705        art                     integer,
1706        CONSTRAINT ax_punktkennunguntergegangen_pk PRIMARY KEY (ogc_fid)
1707);
1708
1709SELECT AddGeometryColumn('ax_punktkennunguntergegangen','dummy',25832,'POINT',2);
1710
1711
1712
1713--** Objektartengruppe: Angaben zur Historie
1714--   ===================================================================
1715
1716-- Variante B: "Vollhistorie" ( statt ax_historischesflurstueckalb)
1717CREATE TABLE ax_historischesflurstueckohneraumbezug (
1718        ogc_fid                         serial NOT NULL,
1719        gml_id                          character(16),
1720        -- GID: AX_Flurstueck_Kerndaten
1721        -- 'FlurstÃŒck_Kerndaten' enthÀlt Eigenschaften des FlurstÃŒcks, die auch fÃŒr andere FlurstÃŒcksobjektarten gelten (z.B. Historisches FlurstÃŒck).
1722        land                            integer,         --
1723        gemarkungsnummer                integer,            --
1724        flurnummer                      integer,               -- Teile des FlurstÃŒckskennzeichens
1725        zaehler                         integer,            --    (redundant zu flurstueckskennzeichen)
1726        nenner                          integer,         --
1727        -- daraus abgeleitet:
1728        flurstueckskennzeichen          character(20),         -- Inhalt rechts mit __ auf 20 aufgefÃŒllt
1729        amtlicheflaeche                 double precision,      -- AFL
1730        abweichenderrechtszustand       varchar,               -- ARZ
1731        zweifelhafterFlurstuecksnachweis varchar,              -- ZFM Boolean
1732        rechtsbehelfsverfahren          integer,               -- RBV
1733        zeitpunktderentstehung          character(10),         -- ZDE  Inhalt jjjj-mm-tt  besser Format date ?
1734--      gemeindezugehoerigkeit          integer,
1735        gemeinde                        integer,
1736        -- GID: ENDE AX_Flurstueck_Kerndaten
1737        identifier                      character(44),
1738        beginnt                         character(20),
1739        endet                           character(20),
1740        advstandardmodell               character(4),
1741        anlass                          integer,
1742--      art                             varchar[], -- Array {a,b,c}
1743        "name"                          varchar[], -- Array {a,b,c}
1744        nachfolgerflurstueckskennzeichen        varchar[], -- Array {a,b,c}
1745        vorgaengerflurstueckskennzeichen        varchar[], -- Array {a,b,c}
1746        CONSTRAINT ax_historischesflurstueckohneraumbezug_pk PRIMARY KEY (ogc_fid)
1747);
1748
1749  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.';
1750  COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.gml_id IS 'Identifikator, global eindeutig';
1751  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.';
1752  COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.zaehler                   IS 'ZAE  Dieses Attribut enthÀlt den ZÀhler der FlurstÃŒcknummer';
1753  COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.nenner                    IS 'NEN  Dieses Attribut enthÀlt den Nenner der FlurstÃŒcknummer';
1754  COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.flurstueckskennzeichen    IS '"FlurstÃŒckskennzeichen" ist ein von der Katasterbehörde zur eindeutigen Bezeichnung des FlurstÃŒcks vergebenes Ordnungsmerkmal.
1755Die Attributart setzt sich aus den nachfolgenden expliziten Attributarten in der angegebenen Reihenfolge zusammen:
1756 1.  Land (2 Stellen)
1757 2.  Gemarkungsnummer (4 Stellen)
1758 3.  Flurnummer (3 Stellen)
1759 4.  FlurstÃŒcksnummer
1760 4.1 ZÀhler (5 Stellen)
1761 4.2 Nenner (4 Stellen)
1762 5.  FlurstÃŒcksfolge (2 Stellen)
1763Die Elemente sind rechtsbÃŒndig zu belegen, fehlende Stellen sind mit fÃŒhrenden Nullen zu belegen.
1764Da 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.
1765Gleiches gilt fÃŒr FlurstÃŒcksnummern ohne Nenner, hier ist der fehlende Nenner im FlurstÃŒckskennzeichen durch Unterstriche zu ersetzen.';
1766  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.';
1767  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.';
1768  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.';
1769  COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.rechtsbehelfsverfahren    IS 'RBV "Rechtsbehelfsverfahren" ist der Hinweis darauf, dass bei dem FlurstÃŒck ein laufendes Rechtsbehelfsverfahren anhÀngig ist.';
1770  COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.zeitpunktderentstehung    IS 'ZDE "Zeitpunkt der Entstehung" ist der Zeitpunkt, zu dem das FlurstÃŒck fachlich entstanden ist.';
1771--COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.gemeindezugehoerigkeit    IS 'GDZ "Gemeindezugehörigkeit" enthÀlt das Gemeindekennzeichen zur Zuordnung der FlustÃŒcksdaten zu einer Gemeinde.';
1772  COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.gemeinde                  IS 'Gemeindekennzeichen zur Zuordnung der FlustÃŒcksdaten zu einer Gemeinde.';
1773  COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.anlass                    IS '?';
1774  COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.name                      IS 'Array mit FortfÃŒhrungsjahr und -Nummer';
1775  COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.nachfolgerflurstueckskennzeichen
1776  IS '"Nachfolger-FlurstÃŒckskennzeichen" ist die Bezeichnung der FlurstÃŒcke, die dem Objekt "Historisches FlurstÃŒck ohne Raumbezug" direkt nachfolgen.
1777Array mit Kennzeichen im Format der Spalte "flurstueckskennzeichen"';
1778  COMMENT ON COLUMN ax_historischesflurstueckohneraumbezug.vorgaengerflurstueckskennzeichen
1779  IS '"VorgÀnger-FlurstÃŒckskennzeichen" ist die Bezeichnung der FlurstÃŒcke, die dem Objekt "Historisches FlurstÃŒck ohne Raumbezugs" direkt vorangehen.
1780Array mit Kennzeichen im Format der Spalte "flurstueckskennzeichen"';
1781
1782
1783-- keine Geometrie, daher ersatzweise: Dummy-Eintrag in Metatabelle
1784SELECT AddGeometryColumn('ax_historischesflurstueckohneraumbezug','dummy',25832,'POINT',2);
1785-- Kennzeichen indizieren, z.B. fuer Suche aus der Historie
1786CREATE INDEX ax_hist_fs_ohne_kennz ON ax_historischesflurstueckohneraumbezug USING btree (flurstueckskennzeichen ASC NULLS LAST);
1787COMMENT ON INDEX ax_hist_fs_ohne_kennz IS 'Suche nach FlurstÃŒckskennzeichen';
1788
1789-- Suche nach VorgÀnger / Nachfolger
1790-- ++ Welche Methode fÃŒr ein Array? Wirkt das bei der Suche nach einem einzelnen Wert aus dem Array?
1791CREATE INDEX idx_histfsor_vor ON ax_historischesflurstueckohneraumbezug (vorgaengerflurstueckskennzeichen ASC);
1792-- COMMENT ON INDEX idx_histfsalb_vor IS 'Suchen nach VorgÀnger-FlurstÌck';
1793
1794CREATE INDEX idx_histfsor_nach ON ax_historischesflurstueckohneraumbezug (vorgaengerflurstueckskennzeichen ASC);
1795-- COMMENT ON INDEX idx_histfsalb_vor IS 'Suchen nach Nachfolger-FlurstÃŒck';
1796
1797
1798
1799-- *** ############################################################
1800-- *** Objektbereich: EigentÃŒmer
1801-- *** ############################################################
1802
1803
1804-- ** Objektartengruppe:Personen- und Bestandsdaten
1805--   ===================================================================
1806
1807
1808-- 21001 P e r s o n
1809-- ----------------------------------------------
1810-- Buchwerk. Keine Geometrie
1811CREATE TABLE ax_person (
1812        ogc_fid                         serial NOT NULL,
1813        gml_id                          character(16),
1814        identifier                      character(44),
1815        beginnt                         character(20),
1816        endet                           character(20),
1817        advstandardmodell               varchar,
1818        --sonstigesmodell               varchar,
1819        anlass                          integer,
1820        nachnameoderfirma               varchar, --(97),
1821        anrede                          integer,        -- 'Anrede' ist die Anrede der Person. Diese Attributart ist optional, da Körperschaften und juristischen Person auch ohne Anrede angeschrieben werden können.
1822        -- Bezeichner   Wert
1823        --       Frau   1000
1824        --       Herr   2000
1825        --      Firma   3000
1826        vorname                         varchar,  --(31),
1827        geburtsname                     varchar,  --(36),
1828        geburtsdatum                    varchar,  -- Datumsformat?
1829        namensbestandteil               varchar,
1830        akademischergrad                varchar,  -- 'Akademischer Grad' ist der akademische Grad der Person (z.B. Dipl.-Ing., Dr., Prof. Dr.)
1831        --art                           varchar,  -- (37)  Wozu?
1832        --uri                           varchar,  -- Wozu ?
1833        -- hat                          varchar,      -- bliebt leer, Beziehung?
1834        CONSTRAINT ax_person_pk PRIMARY KEY (ogc_fid)
1835);
1836
1837SELECT AddGeometryColumn('ax_person','dummy',25832,'POINT',2);
1838
1839-- Verbindungstabellen indizieren
1840CREATE UNIQUE INDEX id_ax_person_gml ON ax_person USING btree (gml_id,beginnt);
1841
1842COMMENT 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.';
1843COMMENT ON COLUMN ax_person.gml_id IS 'Identifikator, global eindeutig';
1844COMMENT ON COLUMN ax_person.namensbestandteil IS 'enthÀlt z.B. Titel wie "Baron"';
1845
1846-- Relationen:
1847-- hat:         Die 'Person' hat 'Anschrift'.
1848-- weist auf:   Durch die Relation 'Person' weist auf 'Namensnummer' wird ausgedrÃŒckt, dass die Person als EigentÃŒmer,
1849--              Erbbauberechtigter oder kÃŒnftiger Erwerber unter der Namensnummer eines Buchungsblattes eingetragen ist.
1850
1851
1852--AX_Personengruppe
1853-- ** Tabelle bisher noch nicht generiert
1854
1855
1856-- A n s c h r i f t
1857-- ----------------------------------------------
1858-- Buchwerk, keine Geometrie.
1859-- Konverter versucht Tabelle noch einmal anzulegen, wenn kein (Dummy-) Eintrag in Metatabelle 'geometry_columns'.
1860CREATE TABLE ax_anschrift (
1861        ogc_fid                         serial NOT NULL,
1862        gml_id                          character(16),
1863        identifier                      character(44),
1864        beginnt                         character(20),
1865        endet                           character(20),
1866        advstandardmodell               varchar,
1867        --sonstigesmodell               varchar,
1868        anlass                          integer,
1869        --art                           varchar[],
1870        --uri                           varchar[],
1871        ort_post                        varchar,
1872        postleitzahlpostzustellung      integer,
1873        strasse                         varchar,
1874        hausnummer                      varchar, -- integer
1875        bestimmungsland                 varchar,
1876        CONSTRAINT ax_anschrift_pk PRIMARY KEY (ogc_fid)
1877);
1878
1879-- Dummy-Eintrag in Metatabelle
1880SELECT AddGeometryColumn('ax_anschrift','dummy',25832,'POINT',2);
1881
1882-- Index fÃŒr alkis_beziehungen
1883CREATE UNIQUE INDEX ax_anschrift_gml ON ax_anschrift USING btree (gml_id,beginnt);
1884
1885COMMENT ON TABLE  ax_anschrift        IS 'A n s c h r i f t';
1886COMMENT ON COLUMN ax_anschrift.gml_id IS 'Identifikator, global eindeutig';
1887
1888
1889-- N a m e n s n u m m e r
1890-- ----------------------------------------------
1891-- Buchwerk. Keine Geometrie
1892CREATE TABLE ax_namensnummer (
1893        ogc_fid                         serial NOT NULL,
1894        gml_id                          character(16),
1895        identifier                      character(44),
1896        beginnt                         character(20),
1897        endet                           character(20),
1898        advstandardmodell               varchar,
1899        anlass                          integer,
1900        laufendenummernachdin1421       character(16),      -- 0000.00.00.00.00
1901        zaehler                         double precision,   -- Anteil ..
1902        nenner                          double precision,   --    .. als Bruch
1903        eigentuemerart                  integer,
1904        nummer                          varchar, -- immer leer ?
1905        artderrechtsgemeinschaft        integer,            -- SchlÃŒssel
1906        beschriebderrechtsgemeinschaft  varchar,  -- (977)
1907        CONSTRAINT ax_namensnummer_pk PRIMARY KEY (ogc_fid)
1908);
1909
1910-- Filter   istbestandteilvon <> '' or benennt <> '' or bestehtausrechtsverhaeltnissenzu <> ''
1911
1912SELECT AddGeometryColumn('ax_namensnummer','dummy',25832,'POINT',2);
1913
1914-- Verbindungstabellen indizieren
1915CREATE UNIQUE INDEX ax_namensnummer_gml ON ax_namensnummer USING btree (gml_id,beginnt);
1916
1917COMMENT 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.';
1918COMMENT ON COLUMN ax_namensnummer.gml_id IS 'Identifikator, global eindeutig';
1919
1920
1921-- B u c h u n g s b l a t t
1922-- -------------------------
1923CREATE TABLE ax_buchungsblatt (
1924        ogc_fid                 serial NOT NULL,
1925        gml_id                  character(16),
1926        identifier              character(44),
1927        beginnt                 character(20),
1928        endet                   character(20),
1929        advstandardmodell       varchar,
1930        anlass                  integer,
1931        buchungsblattkennzeichen        varchar, -- integer
1932        land                    integer,
1933        bezirk                  integer,
1934        buchungsblattnummermitbuchstabenerweiterung     varchar,
1935        blattart                integer,
1936        art                     varchar,
1937        -- "name" character(13),  -- immer leer?
1938        CONSTRAINT ax_buchungsblatt_pk PRIMARY KEY (ogc_fid)
1939);
1940
1941SELECT AddGeometryColumn('ax_buchungsblatt','dummy',25832,'POINT',2);
1942
1943-- Index fÃŒr alkis_beziehungen
1944CREATE UNIQUE INDEX ax_buchungsblatt_gml ON ax_buchungsblatt USING btree (gml_id,beginnt);
1945
1946COMMENT ON TABLE  ax_buchungsblatt        IS 'NREO "Buchungsblatt" enthÀlt die Buchungen (Buchungsstellen und Namensnummern) des Grundbuchs und des Liegenschhaftskatasters (bei buchungsfreien GrundstÃŒcken).';
1947COMMENT ON COLUMN ax_buchungsblatt.gml_id IS 'Identifikator, global eindeutig';
1948
1949
1950-- B u c h u n g s s t e l l e
1951-- -----------------------------
1952CREATE TABLE ax_buchungsstelle (
1953        ogc_fid                         serial NOT NULL,
1954        gml_id                          character(16),
1955        identifier                      character(44),
1956        beginnt                         character(20),
1957        endet                           character(20),
1958        advstandardmodell               varchar,
1959        anlass                          integer,
1960        buchungsart                     integer,
1961        laufendenummer                  integer,
1962        beschreibungdesumfangsderbuchung        character(1),
1963        --art                           character(37),
1964        --uri                           character(12),
1965        zaehler                         double precision,
1966        nenner                          integer,
1967        nummerimaufteilungsplan         varchar,   -- (32)
1968        beschreibungdessondereigentums  varchar,  -- (291)
1969        CONSTRAINT ax_buchungsstelle_pk PRIMARY KEY (ogc_fid)
1970);
1971
1972SELECT AddGeometryColumn('ax_buchungsstelle','dummy',25832,'POINT',2);
1973
1974--Index fÃŒr alkis_beziehungen
1975CREATE UNIQUE INDEX ax_buchungsstelle_gml ON ax_buchungsstelle USING btree (gml_id,beginnt);
1976
1977COMMENT ON TABLE  ax_buchungsstelle        IS 'NREO "Buchungsstelle" ist die unter einer laufenden Nummer im Verzeichnis des Buchungsblattes eingetragene Buchung.';
1978COMMENT ON COLUMN ax_buchungsstelle.gml_id IS 'Identifikator, global eindeutig';
1979
1980
1981--*** ############################################################
1982--*** Objektbereich: GebÀude
1983--*** ############################################################
1984
1985--** Objektartengruppe:Angaben zum GebÀude
1986--   ===================================================================
1987
1988--AX_Gebaeude
1989
1990-- G e b a e u d e
1991-- ---------------
1992-- Kennung 31001
1993-- Abgleich 2011-11-15 mit
1994--  http://www.bezreg-koeln.nrw.de/extra/33alkis/dokumente/Profile_NRW/ALKIS-OK-NRW_MAX_20090722.html
1995CREATE TABLE ax_gebaeude (
1996        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[],      -- verÀndert [] 2012-02-03
2002        anlass                  integer,
2003        gebaeudefunktion        integer,        -- Werte siehe SchlÃŒsseltabelle
2004        weiteregebaeudefunktion integer,
2005        "name"                  varchar,
2006--      nutzung                 varchar,        -- ???
2007        bauweise                integer,
2008        anzahlderoberirdischengeschosse integer,
2009        anzahlderunterirdischengeschosse        integer,
2010        hochhaus                varchar,        -- Neu 2011-11-15  Boolean "true"/"false", meist aber leer
2011        objekthoehe             integer,
2012        dachform                integer,        -- Neu 2011-11-15
2013        zustand                 integer,
2014        geschossflaeche         integer,        -- Neu 2011-11-15
2015        grundflaeche            integer,        -- Neu 2011-11-15
2016        umbauterraum            integer,        -- Neu 2011-11-15
2017        baujahr                 integer,        -- Neu 2011-11-15
2018        lagezurerdoberflaeche   integer,
2019        dachart                 varchar,        -- Neu 2011-11-15
2020        dachgeschossausbau      integer,        -- Neu 2011-11-15
2021        qualitaetsangaben       varchar,        -- neu 2011-11-15
2022        ax_datenerhebung        integer,        -- OBK, nicht in GeoInfoDok ??
2023        description             integer,        -- neu 2012-02-02
2024        art                     varchar,        -- neu 2012-02-02
2025        individualname          varchar,        -- neu 2012-02-02
2026
2027        CONSTRAINT ax_gebaeude_pk PRIMARY KEY (ogc_fid)
2028);
2029
2030SELECT AddGeometryColumn('ax_gebaeude','wkb_geometry',25832,'GEOMETRY',2); -- POLYGON/MULTIPOLYGON
2031
2032CREATE INDEX ax_gebaeude_geom_idx   ON ax_gebaeude USING gist (wkb_geometry);
2033CREATE UNIQUE INDEX ax_gebaeude_gml ON ax_gebaeude USING btree  (gml_id,beginnt);
2034
2035  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.';
2036  COMMENT ON COLUMN ax_gebaeude.gml_id             IS 'Identifikator, global eindeutig';
2037  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';
2038  COMMENT ON COLUMN ax_gebaeude.weiteregebaeudefunktion IS 'WGF "Weitere GebÀudefunktion" ist die Funktion, die ein GebÀude neben der dominierenden GebÀudefunktion hat.';
2039  COMMENT ON COLUMN ax_gebaeude."name"             IS 'NAM "Name" ist der Eigenname oder die Bezeichnung des GebÀudes.';
2040--COMMENT ON COLUMN ax_gebaeude.nutzung            IS 'NTZ "Nutzung" ist die GebÀudenutzung und enthÀlt den jeweiligen prozentualen Nutzungsanteil an der Gesamtnutzung.';
2041  COMMENT ON COLUMN ax_gebaeude.bauweise           IS 'BAW "Bauweise" ist die Beschreibung der Art der Bauweise. Werte siehe ax_gebaeude_bauweise';
2042  COMMENT ON COLUMN ax_gebaeude.anzahlderoberirdischengeschosse IS 'AOG "Anzahl der oberirdischen Geschosse" ist die Anzahl der oberirdischen Geschosse des GebÀudes.';
2043  COMMENT ON COLUMN ax_gebaeude.anzahlderunterirdischengeschosse IS 'AUG "Anzahl der unterirdischen Geschosse" ist die Anzahl der unterirdischen Geschosse des GebÀudes.';
2044  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.';
2045  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.';
2046  COMMENT ON COLUMN ax_gebaeude.dachform           IS 'DAF "Dachform" beschreibt die charakteristische Form des Daches. Werte siehe ax_gebaeude_dachform';
2047  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';
2048  COMMENT ON COLUMN ax_gebaeude.geschossflaeche    IS 'GFL "GeschossflÀche" ist die GebÀudegeschossflÀche in [qm].';
2049  COMMENT ON COLUMN ax_gebaeude.grundflaeche       IS 'GRF "GrundflÀche" ist die GebÀudegrundflÀche in [qm].';
2050  COMMENT ON COLUMN ax_gebaeude.umbauterraum       IS 'URA "Umbauter Raum" ist der umbaute Raum [Kubikmeter] des GebÀudes.';
2051  COMMENT ON COLUMN ax_gebaeude.baujahr            IS 'BJA "Baujahr" ist das Jahr der Fertigstellung oder der baulichen VerÀnderung des GebÀudes.';
2052  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';
2053  COMMENT ON COLUMN ax_gebaeude.dachart            IS 'DAA "Dachart" gibt die Art der Dacheindeckung (z.B. Reetdach) an.';
2054  COMMENT ON COLUMN ax_gebaeude.dachgeschossausbau IS 'DGA "Dachgeschossausbau" ist ein Hinweis auf den Ausbau bzw. die AusbaufÀhigkeit des Dachgeschosses.';
2055  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.';
2056
2057
2058-- Wie oft kommt welcher Typ von GebÀude-Geometrie vor?
2059--
2060--  CREATE VIEW gebauede_geometrie_arten AS
2061--    SELECT geometrytype(wkb_geometry) AS geotyp,
2062--           COUNT(ogc_fid)             AS anzahl
2063--      FROM ax_gebaeude
2064--  GROUP BY geometrytype(wkb_geometry);
2065-- Ergebnis: nur 3 mal MULTIPOLYGON in einer Gemeinde, Rest POLYGON
2066
2067-- Welche sind das?
2068--  CREATE VIEW gebauede_geometrie_multipolygone AS
2069--    SELECT ogc_fid,
2070--           astext(wkb_geometry) AS geometrie
2071--      FROM ax_gebaeude
2072--     WHERE geometrytype(wkb_geometry) = 'MULTIPOLYGON';
2073
2074-- GeometryFromText('MULTIPOLYGON((( AUSSEN ), ( INNEN1 ), ( INNEN2 )))', srid)
2075-- GeometryFromText('MULTIPOLYGON((( AUSSEN1 )),(( AUSSEN2)))', srid)
2076
2077
2078-- B a u t e i l
2079-- -------------
2080CREATE TABLE ax_bauteil (
2081        ogc_fid                 serial NOT NULL,
2082        gml_id                  character(16),
2083        identifier              character(44),
2084        beginnt                 character(20),
2085        endet                   character(20),
2086        advstandardmodell       varchar,
2087        sonstigesmodell         varchar[],
2088        anlass                  integer,
2089        bauart                  integer,
2090        lagezurerdoberflaeche   integer,
2091        CONSTRAINT ax_bauteil_pk PRIMARY KEY (ogc_fid)
2092);
2093
2094SELECT AddGeometryColumn('ax_bauteil','wkb_geometry',25832,'GEOMETRY',2);
2095
2096CREATE INDEX ax_bauteil_geom_idx ON ax_bauteil USING gist (wkb_geometry);
2097
2098CREATE UNIQUE INDEX ax_bauteil_gml ON ax_bauteil USING btree (gml_id,beginnt);
2099
2100COMMENT ON TABLE  ax_bauteil        IS 'B a u t e i l';
2101COMMENT ON COLUMN ax_bauteil.gml_id IS 'Identifikator, global eindeutig';
2102
2103
2104-- B e s o n d e r e   G e b a e u d e l i n i e
2105-- ----------------------------------------------
2106CREATE TABLE ax_besonderegebaeudelinie (
2107        ogc_fid                 serial NOT NULL,
2108        gml_id                  character(16),
2109        identifier              character(44),
2110        beginnt                 character(20),
2111        endet                   character(20),
2112        advstandardmodell       varchar,
2113        beschaffenheit          integer,
2114        anlass                  integer,
2115        CONSTRAINT ax_besonderegebaeudelinie_pk PRIMARY KEY (ogc_fid)
2116);
2117
2118SELECT AddGeometryColumn('ax_besonderegebaeudelinie','wkb_geometry',25832,'LINESTRING',2);
2119
2120CREATE INDEX ax_besonderegebaeudelinie_geom_idx ON ax_besonderegebaeudelinie USING gist (wkb_geometry);
2121CREATE UNIQUE INDEX ax_besonderegebaeudelinie_gml ON ax_besonderegebaeudelinie USING btree (gml_id,beginnt);
2122
2123COMMENT ON TABLE ax_besonderegebaeudelinie IS 'B e s o n d e r e   G e b a e u d e l i n i e';
2124COMMENT ON COLUMN ax_besonderegebaeudelinie.gml_id IS 'Identifikator, global eindeutig';
2125
2126
2127-- F i r s t l i n i e
2128-- -----------------------------------------------------
2129CREATE TABLE ax_firstlinie (
2130        ogc_fid                 serial NOT NULL,
2131        gml_id                  character(16),
2132        identifier              character(44),
2133        beginnt                 character(20),
2134        endet                   character(20),
2135        advstandardmodell       varchar,
2136        sonstigesmodell         varchar,
2137        anlass                  integer,
2138        art                     varchar,
2139        uri                     varchar,
2140        CONSTRAINT ax_firstlinie_pk PRIMARY KEY (ogc_fid)
2141);
2142
2143SELECT AddGeometryColumn('ax_firstlinie','wkb_geometry',25832,'LINESTRING',2);
2144
2145CREATE INDEX ax_firstlinie_geom_idx ON ax_firstlinie USING gist (wkb_geometry);
2146CREATE UNIQUE INDEX ax_firstlinie_gml ON ax_firstlinie USING btree (gml_id,beginnt);
2147
2148COMMENT ON TABLE  ax_firstlinie        IS 'F i r s t l i n i e';
2149COMMENT ON COLUMN ax_firstlinie.gml_id IS 'Identifikator, global eindeutig';
2150
2151
2152-- B e s o n d e r e r   G e b a e u d e p u n k t
2153-- -----------------------------------------------
2154CREATE TABLE ax_besonderergebaeudepunkt (
2155        ogc_fid                 serial NOT NULL,
2156        gml_id                  character(16),
2157        identifier              character(44),
2158        beginnt                 character(20),
2159        endet                   character(20),
2160        advstandardmodell       varchar,
2161        anlass                  integer,
2162        land                    integer,
2163        stelle                  integer,
2164        punktkennung            varchar, -- integer,
2165        art                     varchar, --(37)
2166        "name"                  varchar[],
2167        CONSTRAINT ax_besonderergebaeudepunkt_pk PRIMARY KEY (ogc_fid)
2168);
2169
2170SELECT AddGeometryColumn('ax_besonderergebaeudepunkt','dummy',25832,'POINT',2);
2171
2172CREATE UNIQUE INDEX ax_besonderergebaeudepunkt_gml ON ax_besonderergebaeudepunkt USING btree (gml_id,beginnt);
2173
2174COMMENT ON TABLE  ax_besonderergebaeudepunkt        IS 'B e s o n d e r e r   G e b a e u d e p u n k t';
2175COMMENT ON COLUMN ax_besonderergebaeudepunkt.gml_id IS 'Identifikator, global eindeutig';
2176
2177
2178--AX_Nutzung_Gebaeude
2179-- ** Tabelle bisher noch nicht generiert
2180
2181
2182--*** ############################################################
2183--*** Objektbereich: TatsÀchliche Nutzung (AX_TatsaechlicheNutzung)
2184--*** ############################################################
2185
2186-- Gemeinsame Attribute:
2187--   DLU datumDerLetztenUeberpruefung DateTime
2188--   DAQ qualitaetsangaben
2189
2190
2191--** Objektartengruppe: Siedlung (in Objektbereich:TatsÀchliche Nutzung)
2192--   ===================================================================
2193
2194-- W o h n b a u f l a e c h e
2195-- ----------------------------------------------
2196-- 'WohnbauflÀche' ist eine baulich geprÀgte FlÀche einschließlich der mit ihr im Zusammenhang
2197-- stehenden FreiflÀchen (z.B. VorgÀrten, ZiergÀrten, Zufahrten, StellplÀtze und HofraumflÀchen),
2198-- die ausschließlich oder vorwiegend dem Wohnen dient.
2199CREATE TABLE ax_wohnbauflaeche (
2200        ogc_fid                 serial NOT NULL,
2201        gml_id                  character(16),
2202        identifier              character(44),
2203        beginnt                 character(20),
2204        endet                   character(20),
2205        advstandardmodell       varchar,
2206        anlass                  integer,
2207        artderbebauung          integer,
2208        zustand                 integer,
2209        name                    varchar,
2210        CONSTRAINT ax_wohnbauflaeche_pk PRIMARY KEY (ogc_fid)
2211);
2212
2213SELECT AddGeometryColumn('ax_wohnbauflaeche','wkb_geometry',25832,'GEOMETRY',2);
2214
2215CREATE INDEX ax_wohnbauflaeche_geom_idx ON ax_wohnbauflaeche USING gist (wkb_geometry);
2216
2217CREATE UNIQUE INDEX ax_wohnbauflaeche_gml ON ax_wohnbauflaeche USING btree (gml_id,beginnt);
2218
2219COMMENT ON TABLE  ax_wohnbauflaeche                 IS 'W o h n b a u f l a e 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.';
2220COMMENT ON COLUMN ax_wohnbauflaeche.gml_id          IS 'Identifikator, global eindeutig';
2221COMMENT 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).';
2222COMMENT ON COLUMN ax_wohnbauflaeche.zustand         IS 'ZUS "Zustand" beschreibt, ob "WohnbauflÀche" ungenutzt ist oder ob eine FlÀche als WohnbauflÀche genutzt werden soll.';
2223COMMENT ON COLUMN ax_wohnbauflaeche.name            IS 'NAM "Name" ist der Eigenname von "WohnbauflÀche" insbesondere bei Objekten außerhalb von Ortslagen.';
2224
2225
2226-- Objektart: I n d u s t r i e -   u n d   G e w e r b e f l a e c h e
2227-- --------------------------------------------------------------------
2228-- Industrie- und GewerbeflÀche' ist eine FlÀche, die vorwiegend industriellen oder gewerblichen Zwecken dient.
2229CREATE TABLE ax_industrieundgewerbeflaeche (
2230        ogc_fid                 serial NOT NULL,
2231        gml_id                  character(16),
2232        identifier              character(44),
2233        beginnt                 character(20),
2234        endet                   character(20),
2235        advstandardmodell       varchar,
2236        anlass                  integer,
2237        funktion                integer,
2238        name                    varchar,
2239        zustand                 integer,
2240        foerdergut              integer, -- Die Attributart 'Fördergut' kann nur in Verbindung mit der Attributart 'Funktion' und der Werteart 2510 vorkommen.
2241        primaerenergie          integer, -- Die Attributart 'PrimÀrenergie' kann nur in Verbindung mit der Attributart 'Funktion' und den Wertearten 2530, 2531, 2532, 2570, 2571 und 2572 vorkommen.
2242        lagergut                integer, -- Die Attributart 'Lagergut' kann nur in Verbindung mit der Attributart 'Funktion' und der Werteart 1740 vorkommen.
2243        CONSTRAINT ax_industrieundgewerbeflaeche_pk PRIMARY KEY (ogc_fid)
2244);
2245
2246SELECT AddGeometryColumn('ax_industrieundgewerbeflaeche','wkb_geometry',25832,'GEOMETRY',2); -- POLYGON/POINT
2247
2248CREATE INDEX ax_industrieundgewerbeflaeche_geom_idx ON ax_industrieundgewerbeflaeche USING gist (wkb_geometry);
2249
2250CREATE UNIQUE INDEX ax_industrieundgewerbeflaeche_gml ON ax_industrieundgewerbeflaeche USING btree (gml_id,beginnt);
2251
2252COMMENT 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 a e c h e';
2253COMMENT ON COLUMN ax_industrieundgewerbeflaeche.gml_id     IS 'Identifikator, global eindeutig';
2254COMMENT ON COLUMN ax_industrieundgewerbeflaeche.name       IS 'NAM "Name" ist der Eigenname von "Industrie- und GewerbeflÀche" insbesondere außerhalb von Ortslagen.';
2255COMMENT ON COLUMN ax_industrieundgewerbeflaeche.zustand    IS 'ZUS "Zustand" beschreibt die Betriebsbereitschaft von "Industrie- und GewerbeflÀche".';
2256COMMENT ON COLUMN ax_industrieundgewerbeflaeche.funktion   IS 'FKT "Funktion" ist die zum Zeitpunkt der Erhebung vorherrschende Nutzung von "Industrie- und GewerbeflÀche".';
2257COMMENT ON COLUMN ax_industrieundgewerbeflaeche.foerdergut IS 'FGT "Fördergut" gibt an, welches Produkt gefördert wird.';
2258COMMENT ON COLUMN ax_industrieundgewerbeflaeche.lagergut   IS 'LGT "Lagergut" gibt an, welches Produkt gelagert wird. Diese Attributart kann nur in Verbindung mit der Attributart "Funktion" und der Werteart 1740 vorkommen.';
2259COMMENT ON COLUMN ax_industrieundgewerbeflaeche.primaerenergie IS 'PEG "PrimÀrenergie" beschreibt die zur Strom- oder WÀrmeerzeugung dienende Energieform oder den EnergietrÀger.';
2260
2261
2262-- H a l d e
2263-- ----------------------------------------------
2264CREATE TABLE ax_halde
2265(       ogc_fid                 serial NOT NULL,
2266        gml_id                  character(16),
2267        identifier              character(44),
2268        beginnt                 character(20),
2269        endet                   character(20),
2270        advstandardmodell       varchar,
2271        anlass                  integer,
2272        lagergut                integer,
2273        "name"                  varchar,
2274        zustand                 integer,
2275        CONSTRAINT ax_halde_pk PRIMARY KEY (ogc_fid)
2276);
2277
2278SELECT AddGeometryColumn('ax_halde','wkb_geometry',25832,'GEOMETRY',2);
2279
2280CREATE INDEX ax_halde_geom_idx ON ax_halde USING gist (wkb_geometry);
2281
2282CREATE UNIQUE INDEX ax_halde_gml ON ax_halde USING btree (gml_id,beginnt);
2283
2284COMMENT ON TABLE ax_halde             IS 'H a l d e';
2285COMMENT ON COLUMN ax_halde.gml_id     IS 'Identifikator, global eindeutig';
2286COMMENT ON COLUMN ax_halde.name       IS 'NAM "Name" ist die einer "Halde" zugehörige Bezeichnung oder deren Eigenname.';
2287COMMENT ON COLUMN ax_halde.lagergut   IS 'LGT "Lagergut" gibt an, welches Produkt gelagert wird.';
2288COMMENT ON COLUMN ax_halde.zustand    IS 'ZUS "Zustand" beschreibt die Betriebsbereitschaft von "Halde".';
2289
2290
2291-- B e r b a u b e t r i e b
2292-- -------------------------
2293-- 'Bergbaubetrieb' ist eine FlÀche, die fÌr die Förderung des Abbaugutes unter Tage genutzt wird.
2294CREATE TABLE ax_bergbaubetrieb (
2295        ogc_fid                 serial NOT NULL,
2296        gml_id                  character(16),
2297        identifier              character(44),
2298        beginnt                 character(20),
2299        endet                   character(20),
2300        advstandardmodell       varchar,
2301        anlass                  integer,
2302        abbaugut                integer,
2303        "name"                  varchar,
2304        bezeichnung             varchar,
2305        zustand                 integer,
2306        CONSTRAINT ax_bergbaubetrieb_pk PRIMARY KEY (ogc_fid)
2307);
2308
2309SELECT AddGeometryColumn('ax_bergbaubetrieb','wkb_geometry',25832,'GEOMETRY',2);
2310
2311CREATE INDEX ax_bergbaubetrieb_geom_idx   ON ax_bergbaubetrieb USING gist  (wkb_geometry);
2312CREATE UNIQUE INDEX ax_bergbaubetrieb_gml ON ax_bergbaubetrieb USING btree (gml_id,beginnt);
2313
2314COMMENT ON TABLE  ax_bergbaubetrieb             IS '"Bergbaubetrieb" ist eine FlÀche, die fÃŒr die Förderung des Abbaugutes unter Tage genutzt wird.';
2315COMMENT ON COLUMN ax_bergbaubetrieb.gml_id      IS 'Identifikator, global eindeutig';
2316COMMENT ON COLUMN ax_bergbaubetrieb.abbaugut    IS 'AGT "Abbaugut" gibt an, welches Material abgebaut wird.';
2317COMMENT ON COLUMN ax_bergbaubetrieb.name        IS 'NAM "Name" ist der Eigenname von "Bergbaubetrieb".';
2318COMMENT ON COLUMN ax_bergbaubetrieb.zustand     IS 'ZUS "Zustand" beschreibt die Betriebsbereitschaft von "Bergbaubetrieb".';
2319COMMENT ON COLUMN ax_bergbaubetrieb.bezeichnung IS 'BEZ "Bezeichnung" ist die von einer Fachstelle vergebene Kurzbezeichnung.';
2320
2321
2322-- T a g e b a u  /  G r u b e  /  S t e i n b r u c h
2323-- ---------------------------------------------------
2324CREATE TABLE ax_tagebaugrubesteinbruch (
2325        ogc_fid                 serial NOT NULL,
2326        gml_id                  character(16),
2327        identifier              character(44),
2328        beginnt                 character(20),
2329        endet                   character(20),
2330        advstandardmodell       varchar,
2331        anlass                  integer,
2332        abbaugut                integer,
2333        "name"                  varchar,
2334        zustand                 integer,
2335        CONSTRAINT ax_tagebaugrubesteinbruch_pk PRIMARY KEY (ogc_fid)
2336);
2337
2338SELECT AddGeometryColumn('ax_tagebaugrubesteinbruch','wkb_geometry',25832,'GEOMETRY',2);
2339
2340CREATE INDEX ax_tagebaugrubesteinbruch_geom_idx ON ax_tagebaugrubesteinbruch USING gist (wkb_geometry);
2341
2342CREATE UNIQUE INDEX ax_tagebaugrubesteinbruchb_gml ON ax_tagebaugrubesteinbruch USING btree (gml_id,beginnt);
2343
2344COMMENT 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.';
2345COMMENT ON COLUMN ax_tagebaugrubesteinbruch.gml_id   IS 'Identifikator, global eindeutig';
2346COMMENT ON COLUMN ax_tagebaugrubesteinbruch.name     IS 'NAM "Name" ist der Eigenname von "Tagebau, Grube, Steinbruch".';
2347COMMENT ON COLUMN ax_tagebaugrubesteinbruch.abbaugut IS 'AGT "Abbaugut" gibt an, welches Material abgebaut wird.';
2348COMMENT ON COLUMN ax_tagebaugrubesteinbruch.zustand  IS 'ZUS "Zustand" beschreibt die Betriebsbereitschaft von "Tagebau, Grube, Steinbruch".';
2349
2350
2351-- F l a e c h e n   g e m i s c h t e r   N u t z u n g
2352-- -----------------------------------------------------
2353CREATE TABLE ax_flaechegemischternutzung (
2354        ogc_fid                 serial NOT NULL,
2355        gml_id                  character(16),
2356        identifier              character(44),
2357        beginnt                 character(20),
2358        endet                   character(20),
2359        advstandardmodell       varchar,
2360        anlass                  integer,
2361        artderbebauung          integer,
2362        funktion                integer,
2363        "name"                  varchar,
2364        zustand                 integer,
2365        CONSTRAINT ax_flaechegemischternutzung_pk PRIMARY KEY (ogc_fid)
2366);
2367
2368SELECT AddGeometryColumn('ax_flaechegemischternutzung','wkb_geometry',25832,'GEOMETRY',2);
2369
2370CREATE INDEX ax_flaechegemischternutzung_geom_idx ON ax_flaechegemischternutzung USING gist (wkb_geometry);
2371
2372CREATE UNIQUE INDEX ax_flaechegemischternutzung_gml ON ax_flaechegemischternutzung USING btree (gml_id,beginnt);
2373
2374COMMENT 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.';
2375COMMENT ON COLUMN ax_flaechegemischternutzung.gml_id IS 'Identifikator, global eindeutig';
2376COMMENT 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).';
2377COMMENT ON COLUMN ax_flaechegemischternutzung.funktion       IS 'FKT "Funktion" ist die zum Zeitpunkt der Erhebung vorherrschende Nutzung (Dominanzprinzip).';
2378COMMENT ON COLUMN ax_flaechegemischternutzung.name           IS 'NAM "Name" ist der Eigenname von "FlÀche gemischter Nutzung" insbesondere bei Objekten außerhalb von Ortslagen.';
2379COMMENT ON COLUMN ax_flaechegemischternutzung.zustand        IS 'ZUS "Zustand" beschreibt, ob "FlÀche gemischter Nutzung" ungenutzt ist.';
2380
2381
2382-- F l a e c h e   b e s o n d e r e r   f u n k t i o n a l e r   P r a e g u n g
2383-- -------------------------------------------------------------------------------
2384CREATE TABLE ax_flaechebesondererfunktionalerpraegung (
2385        ogc_fid                 serial NOT NULL,
2386        gml_id                  character(16),
2387        identifier              character(44),
2388        beginnt                 character(20),
2389        endet                   character(20),
2390        advstandardmodell       varchar,
2391        anlass                  integer,
2392        funktion                integer,
2393        artderbebauung          integer,
2394        "name"                  varchar,
2395        zustand                 integer,
2396        CONSTRAINT ax_flaechebesondererfunktionalerpraegung_pk PRIMARY KEY (ogc_fid)
2397);
2398
2399SELECT AddGeometryColumn('ax_flaechebesondererfunktionalerpraegung','wkb_geometry',25832,'GEOMETRY',2);
2400
2401CREATE INDEX ax_flaechebesondererfunktionalerpraegung_geom_idx ON ax_flaechebesondererfunktionalerpraegung USING gist (wkb_geometry);
2402CREATE UNIQUE INDEX ax_flaechebesondererfunktionalerpraegung_gml ON ax_flaechebesondererfunktionalerpraegung USING btree (gml_id,beginnt);
2403
2404COMMENT 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.';
2405COMMENT ON COLUMN ax_flaechebesondererfunktionalerpraegung.gml_id IS 'Identifikator, global eindeutig';
2406COMMENT ON COLUMN ax_flaechebesondererfunktionalerpraegung.funktion       IS 'FKT "Funktion" ist die zum Zeitpunkt der Erhebung vorherrschende Nutzung von "FlÀche besonderer funktionaler PrÀgung".';
2407COMMENT ON COLUMN ax_flaechebesondererfunktionalerpraegung.artderbebauung IS 'BEB "Art der Bebauung" differenziert nach offener und geschlossener Bauweise aus topographischer Sicht und nicht nach gesetzlichen Vorgaben (z.B. BauGB).';
2408COMMENT ON COLUMN ax_flaechebesondererfunktionalerpraegung.name           IS 'NAM "Name" ist der Eigenname von "FlÀche besonderer funktionaler PrÀgung" insbesondere außerhalb von Ortslagen.';
2409COMMENT ON COLUMN ax_flaechebesondererfunktionalerpraegung.zustand        IS 'ZUS  "Zustand" beschreibt die Betriebsbereitschaft von "FlÀche funktionaler PrÀgung".';
2410
2411
2412-- S p o r t - ,   F r e i z e i t -   u n d   E r h o h l u n g s f l À c h e
2413-- ---------------------------------------------------------------------------
2414CREATE TABLE ax_sportfreizeitunderholungsflaeche (
2415        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                  integer,
2422        funktion                integer,
2423        zustand                 integer,
2424        "name"                  varchar,
2425        CONSTRAINT ax_sportfreizeitunderholungsflaeche_pk PRIMARY KEY (ogc_fid)
2426);
2427
2428SELECT AddGeometryColumn('ax_sportfreizeitunderholungsflaeche','wkb_geometry',25832,'GEOMETRY',2);
2429
2430CREATE INDEX ax_sportfreizeitunderholungsflaeche_geom_idx ON ax_sportfreizeitunderholungsflaeche USING gist (wkb_geometry);
2431
2432CREATE UNIQUE INDEX ax_sportfreizeitunderholungsflaeche_gml ON ax_sportfreizeitunderholungsflaeche USING btree (gml_id,beginnt);
2433
2434COMMENT 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.';
2435COMMENT ON COLUMN ax_sportfreizeitunderholungsflaeche.gml_id   IS 'Identifikator, global eindeutig';
2436COMMENT ON COLUMN ax_sportfreizeitunderholungsflaeche.funktion IS 'FKT "Funktion" ist die Art der Nutzung von "Sport-, Freizeit- und ErholungsflÀche".';
2437COMMENT ON COLUMN ax_sportfreizeitunderholungsflaeche.zustand  IS 'ZUS "Zustand" beschreibt die Betriebsbereitschaft von "SportFreizeitUndErholungsflaeche ".';
2438COMMENT ON COLUMN ax_sportfreizeitunderholungsflaeche.name     IS 'NAM "Name" ist der Eigenname von "Sport-, Freizeit- und ErholungsflÀche".';
2439
2440
2441-- F r i e d h o f
2442-- ----------------
2443CREATE TABLE ax_friedhof (
2444        ogc_fid                 serial NOT NULL,
2445        gml_id                  character(16),
2446        identifier              character(44),
2447        beginnt                 character(20),
2448        endet                   character(20),
2449        advstandardmodell       varchar,
2450        anlass                  integer,
2451        funktion                integer,
2452        "name"                  varchar,
2453        zustand                 integer,
2454        CONSTRAINT ax_friedhof_pk PRIMARY KEY (ogc_fid)
2455);
2456
2457SELECT AddGeometryColumn('ax_friedhof','wkb_geometry',25832,'GEOMETRY',2);
2458
2459CREATE INDEX ax_friedhof_geom_idx ON ax_friedhof USING gist (wkb_geometry);
2460CREATE UNIQUE INDEX ax_friedhof_gml ON ax_friedhof USING btree (gml_id,beginnt);
2461
2462COMMENT ON TABLE  ax_friedhof           IS '"F r i e d h o f"  ist eine FlÀche, auf der Tote bestattet sind.';
2463COMMENT ON COLUMN ax_friedhof.gml_id    IS 'Identifikator, global eindeutig';
2464COMMENT ON COLUMN ax_friedhof.funktion  IS 'FKT "Funktion" ist die Art der BegrÀbnisstÀtte.';
2465COMMENT ON COLUMN ax_friedhof.name      IS 'NAM "Name" ist der Eigenname von "Friedhof".';
2466COMMENT ON COLUMN ax_friedhof.zustand   IS 'ZUS "Zustand" beschreibt die Betriebsbereitschaft von "Friedhof".';
2467
2468
2469--** Objektartengruppe: Verkehr (in Objektbereich:TatsÀchliche Nutzung)
2470--   ===================================================================
2471
2472
2473-- S t r a s s e n v e r k e h r
2474-- ----------------------------------------------
2475CREATE TABLE ax_strassenverkehr (
2476        ogc_fid                 serial NOT NULL,
2477        gml_id                  character(16),
2478        identifier              character(44),
2479        beginnt                 character(20),
2480        endet                   character(20),
2481        advstandardmodell       varchar,
2482        anlass                  integer,
2483        funktion                integer,
2484        "name"                  varchar,
2485        zweitname               varchar,
2486        zustand                 integer,
2487        land                    integer,        -- neu 2012-02-28
2488        regierungsbezirk        integer,        -- neu 2012-02-28
2489        kreis                   integer,        -- neu 2012-02-28
2490        gemeinde                integer,        -- neu 2012-02-28
2491        lage                    varchar,        -- neu 2012-02-28
2492        CONSTRAINT ax_strassenverkehr_pk PRIMARY KEY (ogc_fid)
2493);
2494
2495SELECT AddGeometryColumn('ax_strassenverkehr','wkb_geometry',25832,'GEOMETRY',2);
2496
2497CREATE INDEX ax_strassenverkehr_geom_idx ON ax_strassenverkehr USING gist (wkb_geometry);
2498CREATE UNIQUE INDEX ax_strassenverkehr_gml ON ax_strassenverkehr USING btree (gml_id,beginnt);
2499
2500COMMENT 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.';
2501COMMENT ON COLUMN ax_strassenverkehr.gml_id    IS 'Identifikator, global eindeutig';
2502COMMENT ON COLUMN ax_strassenverkehr.funktion  IS 'FKT "Funktion" beschreibt die verkehrliche Nutzung von "Straßenverkehr".';
2503COMMENT ON COLUMN ax_strassenverkehr.name      IS 'NAM "Name" ist der Eigenname von "Strassenverkehr".';
2504COMMENT ON COLUMN ax_strassenverkehr.zweitname IS 'ZNM "Zweitname" ist ein von der Lagebezeichnung abweichender Name von "Strassenverkehrsflaeche" (z.B. "Deutsche Weinstraße").';
2505COMMENT ON COLUMN ax_strassenverkehr.zustand   IS 'ZUS "Zustand" beschreibt die Betriebsbereitschaft von "Strassenverkehrsflaeche".';
2506
2507
2508-- W e g
2509-- ----------------------------------------------
2510-- 'Weg' umfasst alle FlÀchen, die zum Befahren und/oder Begehen vorgesehen sind.
2511-- Zum 'Weg' gehören auch Seitenstreifen und GrÀben zur WegentwÀsserung.
2512CREATE TABLE ax_weg (
2513        ogc_fid                 serial NOT NULL,
2514        gml_id                  character(16),
2515        identifier              character(44),
2516        beginnt                 character(20),
2517        endet                   character(20),
2518        advstandardmodell       varchar,
2519        anlass                  integer,
2520        funktion                integer,
2521        name                    varchar,
2522        bezeichnung             varchar,
2523        land                    integer,        -- neu 2012-02-28
2524        regierungsbezirk        integer,        -- neu 2012-02-28
2525        kreis                   integer,        -- neu 2012-02-28
2526        gemeinde                integer,        -- neu 2012-02-28
2527        lage                    varchar,        -- neu 2012-02-28
2528        CONSTRAINT ax_weg_pk PRIMARY KEY (ogc_fid)
2529);
2530
2531SELECT AddGeometryColumn('ax_weg','wkb_geometry',25832,'GEOMETRY',2);
2532
2533CREATE INDEX ax_weg_geom_idx ON ax_weg USING gist (wkb_geometry);
2534CREATE UNIQUE INDEX ax_weg_gml ON ax_weg USING btree (gml_id,beginnt);
2535
2536COMMENT 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.';
2537COMMENT ON COLUMN ax_weg.gml_id       IS 'Identifikator, global eindeutig';
2538COMMENT ON COLUMN ax_weg.funktion     IS 'FKT "Funktion" ist die zum Zeitpunkt der Erhebung objektiv erkennbare oder feststellbare vorherrschend vorkommende Nutzung.';
2539COMMENT ON COLUMN ax_weg.name         IS 'NAM "Name" ist die Bezeichnung oder der Eigenname von "Wegflaeche".';
2540COMMENT ON COLUMN ax_weg.bezeichnung  IS 'BEZ "Bezeichnung" ist die amtliche Nummer des Weges.';
2541
2542
2543-- P l a t z
2544-- ----------------------------------------------
2545-- 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).
2546CREATE TABLE ax_platz (
2547        ogc_fid                 serial NOT NULL,
2548        gml_id                  character(16),
2549        identifier              character(44),
2550        beginnt                 character(20),
2551        endet                   character(20),
2552        advstandardmodell       varchar,
2553        anlass                  integer,
2554        funktion                integer,
2555        "name"                  varchar,
2556        zweitname               varchar,
2557        land                    integer,        -- neu 2012-02-28
2558        regierungsbezirk        integer,        -- neu 2012-02-28
2559        kreis                   integer,        -- neu 2012-02-28
2560        gemeinde                integer,        -- neu 2012-02-28
2561        lage                    varchar,        -- neu 2012-02-28
2562        CONSTRAINT ax_platz_pk PRIMARY KEY (ogc_fid)
2563);
2564
2565SELECT AddGeometryColumn('ax_platz','wkb_geometry',25832,'GEOMETRY',2);
2566
2567CREATE INDEX ax_platz_geom_idx ON ax_platz USING gist (wkb_geometry);
2568CREATE UNIQUE INDEX ax_platz_gml ON ax_platz USING btree (gml_id,beginnt);
2569
2570COMMENT 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).';
2571COMMENT ON COLUMN ax_platz.gml_id    IS 'Identifikator, global eindeutig';
2572COMMENT ON COLUMN ax_platz.funktion  IS 'FKT "Funktion" ist die zum Zeitpunkt der Erhebung objektiv erkennbare oder feststellbare vorkommende Nutzung.';
2573COMMENT ON COLUMN ax_platz.name      IS 'NAM "Name" ist der Eigenname von "Platz".';
2574COMMENT ON COLUMN ax_platz.zweitname IS 'ZNM "Zweitname" ist der touristische oder volkstÃŒmliche Name von "Platz".';
2575
2576
2577-- B a h n v e r k e h r
2578-- ----------------------------------------------
2579CREATE TABLE ax_bahnverkehr (
2580        ogc_fid                 serial NOT NULL,
2581        gml_id                  character(16),
2582        identifier              character(44),
2583        beginnt                 character(20),
2584        endet                   character(20),
2585        advstandardmodell       varchar,
2586        anlass                  integer,
2587        funktion                integer,
2588        bahnkategorie           integer,
2589        bezeichnung             varchar,
2590        nummerderbahnstrecke    varchar,
2591        zweitname               varchar,
2592        zustand                 integer,
2593        CONSTRAINT ax_bahnverkehr_pk PRIMARY KEY (ogc_fid)
2594);
2595
2596SELECT AddGeometryColumn('ax_bahnverkehr','wkb_geometry',25832,'GEOMETRY',2);
2597
2598CREATE INDEX ax_bahnverkehr_geom_idx ON ax_bahnverkehr USING gist (wkb_geometry);
2599CREATE UNIQUE INDEX ax_bahnverkehr_gml ON ax_bahnverkehr USING btree (gml_id,beginnt);
2600
2601COMMENT 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.';
2602-- FlÀchen von Bahnverkehr sind
2603--  * der Bahnkörper (Unterbau fÃŒr Gleise; bestehend aus DÀmmen oder Einschnitten und deren kleineren Böschungen,
2604--    DurchlÀssen, schmalen GrÀben zur EntwÀsserung, StÃŒtzmauern, Unter- und ÜberfÃŒhrung, Seiten und Schutzstreifen) mit seinen Bahnstrecken
2605--  * an den Bahnkörper angrenzende bebaute und unbebaute FlÀchen (z.B. größere BöschungsflÀchen).
2606
2607COMMENT ON COLUMN ax_bahnverkehr.gml_id               IS 'Identifikator, global eindeutig';
2608COMMENT ON COLUMN ax_bahnverkehr.funktion             IS 'FKT "Funktion" ist die objektiv feststellbare Nutzung von "Bahnverkehr".';
2609COMMENT ON COLUMN ax_bahnverkehr.bahnkategorie        IS 'BKT "Bahnkategorie" beschreibt die Art des Verkehrsmittels.';
2610COMMENT ON COLUMN ax_bahnverkehr.bezeichnung          IS 'BEZ "Bezeichnung" ist die Angabe der Orte, in denen die Bahnlinie beginnt und endet (z. B. "Bahnlinie Frankfurt - WÃŒrzburg").';
2611COMMENT ON COLUMN ax_bahnverkehr.nummerderbahnstrecke IS 'NRB "Nummer der Bahnstrecke" ist die von der Bahn AG festgelegte VerschlÃŒsselung der Bahnstrecke.';
2612COMMENT ON COLUMN ax_bahnverkehr.zweitname            IS 'ZNM "Zweitname" ist der von der Lagebezeichnung abweichende Name von "Bahnverkehr" (z. B. "Höllentalbahn").';
2613COMMENT ON COLUMN ax_bahnverkehr.zustand              IS 'ZUS "Zustand" beschreibt die Betriebsbereitschaft von "Bahnverkehr".';
2614
2615
2616-- F l u g v e r k e h r
2617-- ----------------------
2618CREATE TABLE ax_flugverkehr (
2619        ogc_fid                 serial NOT NULL,
2620        gml_id                  character(16),
2621        identifier              character(44),
2622        beginnt                 character(20),
2623        endet                   character(20),
2624        advstandardmodell       varchar,
2625        anlass                  integer,
2626        funktion                integer,
2627        art                     integer,
2628        "name"                  varchar,
2629        bezeichnung             varchar,
2630        nutzung                 integer,
2631        zustand                 integer,
2632        CONSTRAINT ax_flugverkehr_pk PRIMARY KEY (ogc_fid)
2633);
2634
2635SELECT AddGeometryColumn('ax_flugverkehr','wkb_geometry',25832,'GEOMETRY',2);
2636
2637CREATE INDEX ax_flugverkehr_geom_idx   ON ax_flugverkehr USING gist  (wkb_geometry);
2638CREATE UNIQUE INDEX ax_flugverkehr_gml ON ax_flugverkehr USING btree (gml_id,beginnt);
2639
2640COMMENT 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.';
2641COMMENT ON COLUMN ax_flugverkehr.gml_id      IS 'Identifikator, global eindeutig';
2642COMMENT ON COLUMN ax_flugverkehr.funktion    IS 'FKT "Funktion" ist die zum Zeitpunkt der Erhebung vorherrschende Nutzung (Dominanzprinzip).';
2643COMMENT ON COLUMN ax_flugverkehr.art         IS 'ART "Art" ist Einstufung der FlugverkehrsflÀche durch das Luftfahrtbundesamt.';
2644COMMENT ON COLUMN ax_flugverkehr.name        IS 'NAM "Name" ist der Eigenname von "Flugverkehr".';
2645COMMENT ON COLUMN ax_flugverkehr.bezeichnung IS 'BEZ "Bezeichnung" ist die von einer Fachstelle vergebene Kennziffer von "Flugverkehr".';
2646COMMENT ON COLUMN ax_flugverkehr.nutzung     IS 'NTZ "Nutzung" gibt den Nutzerkreis von "Flugverkehr" an.';
2647COMMENT ON COLUMN ax_flugverkehr.zustand     IS 'ZUS "Zustand" beschreibt die Betriebsbereitschaft von "Flugverkehr".';
2648
2649
2650-- S c h i f f s v e r k e h r
2651-- ---------------------------
2652CREATE TABLE ax_schiffsverkehr (
2653        ogc_fid                 serial NOT NULL,
2654        gml_id                  character(16),
2655        identifier              character(44),
2656        beginnt                 character(20),
2657        endet                   character(20),
2658        advstandardmodell       varchar,
2659        anlass                  integer,
2660        funktion                integer,
2661        "name"                  varchar,
2662        zustand                 integer,
2663        CONSTRAINT ax_schiffsverkehr_pk PRIMARY KEY (ogc_fid)
2664);
2665
2666SELECT AddGeometryColumn('ax_schiffsverkehr','wkb_geometry',25832,'GEOMETRY',2);
2667
2668CREATE INDEX ax_schiffsverkehr_geom_idx ON ax_schiffsverkehr USING gist (wkb_geometry);
2669CREATE UNIQUE INDEX ax_schiffsverkehr_gml ON ax_schiffsverkehr USING btree (gml_id,beginnt);
2670
2671COMMENT 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.';
2672COMMENT ON COLUMN ax_schiffsverkehr.gml_id   IS 'Identifikator, global eindeutig';
2673COMMENT ON COLUMN ax_schiffsverkehr.funktion IS 'FKT "Funktion" ist die zum Zeitpunkt der Erhebung vorherrschende Nutzung von "Schiffsverkehr".';
2674COMMENT ON COLUMN ax_schiffsverkehr.name     IS 'NAM "Name" ist der Eigenname von "Schiffsverkehr".';
2675COMMENT ON COLUMN ax_schiffsverkehr.zustand  IS 'ZUS "Zustand" beschreibt die Betriebsbereitschaft von "Schiffsverkehr".';
2676-- Diese Attributart kann nur in Verbindung mit der Attributart 'Funktion' und der Werteart 5620 vorkommen.
2677
2678
2679--** Objektartengruppe:Vegetation (in Objektbereich:TatsÀchliche Nutzung)
2680--   ===================================================================
2681
2682-- L a n d w i r t s c h a f t
2683-- ----------------------------------------------
2684CREATE TABLE ax_landwirtschaft (
2685        ogc_fid                 serial NOT NULL,
2686        gml_id                  character(16),
2687        identifier              character(44),
2688        beginnt                 character(20),
2689        endet                   character(20),
2690        advstandardmodell       varchar,
2691        anlass                  integer,
2692        vegetationsmerkmal      integer,
2693        name                    varchar,
2694        CONSTRAINT ax_landwirtschaft_pk PRIMARY KEY (ogc_fid)
2695);
2696
2697SELECT AddGeometryColumn('ax_landwirtschaft','wkb_geometry',25832,'GEOMETRY',2);
2698
2699CREATE INDEX ax_landwirtschaft_geom_idx ON ax_landwirtschaft USING gist (wkb_geometry);
2700CREATE UNIQUE INDEX ax_landwirtschaft_gml ON ax_landwirtschaft USING btree (gml_id,beginnt);
2701
2702COMMENT 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';
2703COMMENT ON COLUMN ax_landwirtschaft.gml_id             IS 'Identifikator, global eindeutig';
2704COMMENT ON COLUMN ax_landwirtschaft.vegetationsmerkmal IS 'VEG "Vegetationsmerkmal" ist die zum Zeitpunkt der Erhebung erkennbare oder feststellbare vorherrschend vorkommende landwirtschaftliche Nutzung (Dominanzprinzip).';
2705COMMENT ON COLUMN ax_landwirtschaft.name               IS 'NAM "Name" ist die Bezeichnung oder der Eigenname von "Landwirtschaft".';
2706
2707
2708-- W a l d
2709-- ----------------------------------------------
2710CREATE TABLE ax_wald (
2711        ogc_fid                 serial NOT NULL,
2712        gml_id                  character(16),
2713        identifier              character(44),
2714        beginnt                 character(20),
2715        endet                   character(20),
2716        advstandardmodell       varchar,
2717        anlass                  integer,
2718        vegetationsmerkmal      integer,
2719        name                    varchar,
2720        bezeichnung             varchar,
2721        CONSTRAINT ax_wald_pk PRIMARY KEY (ogc_fid)
2722);
2723
2724SELECT AddGeometryColumn('ax_wald','wkb_geometry',25832,'GEOMETRY',2);
2725
2726CREATE INDEX ax_wald_geom_idx ON ax_wald USING gist (wkb_geometry);
2727CREATE UNIQUE INDEX ax_wald_gml ON ax_wald USING btree (gml_id,beginnt);
2728
2729COMMENT ON TABLE  ax_wald             IS '"W a l d" ist eine FlÀche, die mit Forstpflanzen (WaldbÀume und WaldstrÀucher) bestockt ist.';
2730COMMENT ON COLUMN ax_wald.gml_id      IS 'Identifikator, global eindeutig';
2731COMMENT ON COLUMN ax_wald.vegetationsmerkmal IS 'VEG "Vegetationsmerkmal" beschreibt den Bewuchs von "Wald".';
2732COMMENT ON COLUMN ax_wald.name        IS 'NAM "Name" ist der Eigenname von "Wald".';
2733COMMENT ON COLUMN ax_wald.bezeichnung IS 'BEZ "Bezeichnung" ist die von einer Fachstelle vergebene Kennziffer (Forstabteilungsnummer, Jagenzahl) von "Wald".';
2734
2735
2736-- G e h o e l z
2737-- ----------------------------------------------
2738CREATE TABLE ax_gehoelz (
2739        ogc_fid                 serial NOT NULL,
2740        gml_id                  character(16),
2741        identifier              character(44),
2742        beginnt                 character(20),
2743        endet                   character(20),
2744        advstandardmodell       varchar,
2745        anlass                  integer,
2746        vegetationsmerkmal      integer,
2747        "name"                  varchar,
2748        funktion                integer,
2749        CONSTRAINT ax_gehoelz_pk PRIMARY KEY (ogc_fid)
2750);
2751
2752SELECT AddGeometryColumn('ax_gehoelz','wkb_geometry',25832,'GEOMETRY',2);
2753
2754CREATE INDEX ax_gehoelz_geom_idx ON ax_gehoelz USING gist (wkb_geometry);
2755CREATE UNIQUE INDEX ax_gehoelz_gml ON ax_gehoelz USING btree (gml_id,beginnt);
2756
2757COMMENT ON TABLE  ax_gehoelz        IS '"G e h o e l z" ist eine FlÀche, die mit einzelnen BÀumen, Baumgruppen, BÃŒschen, Hecken und StrÀuchern bestockt ist.';
2758COMMENT ON COLUMN ax_gehoelz.gml_id IS 'Identifikator, global eindeutig';
2759
2760COMMENT ON COLUMN ax_gehoelz.vegetationsmerkmal IS 'VEG "Vegetationsmerkmal" beschreibt den Bewuchs von "Gehölz".';
2761COMMENT ON COLUMN ax_gehoelz.name               IS 'NAM "Name" ist der Eigenname von "Wald".';
2762COMMENT ON COLUMN ax_gehoelz.funktion           IS 'FKT "Funktion" beschreibt, welchem Zweck "Gehölz" dient.';
2763
2764
2765-- H e i d e
2766-- ----------------------------------------------
2767CREATE TABLE ax_heide (
2768        ogc_fid                 serial NOT NULL,
2769        gml_id                  character(16),
2770        identifier              character(44),
2771        beginnt                 character(20),
2772        endet                   character(20),
2773        advstandardmodell       varchar,
2774        anlass                  integer,
2775        "name"                  varchar,
2776        CONSTRAINT ax_heide_pk PRIMARY KEY (ogc_fid)
2777);
2778
2779SELECT AddGeometryColumn('ax_heide','wkb_geometry',25832,'GEOMETRY',2);
2780
2781CREATE INDEX ax_heide_geom_idx ON ax_heide USING gist (wkb_geometry);
2782CREATE UNIQUE INDEX ax_heide_gml ON ax_heide USING btree (gml_id,beginnt);
2783
2784COMMENT 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.';
2785COMMENT ON COLUMN ax_heide.gml_id IS 'Identifikator, global eindeutig';
2786COMMENT ON COLUMN ax_heide.name   IS 'NAM "Name" ist der Eigenname von "Heide".';
2787
2788
2789-- M o o r
2790-- ----------------------------------------------
2791CREATE TABLE ax_moor (
2792        ogc_fid                 serial NOT NULL,
2793        gml_id                  character(16),
2794        identifier              character(44),
2795        beginnt                 character(20),
2796        endet                   character(20),
2797        advstandardmodell       varchar,
2798        anlass                  integer,
2799        "name"                  varchar,
2800        CONSTRAINT ax_moor_pk PRIMARY KEY (ogc_fid)
2801);
2802
2803SELECT AddGeometryColumn('ax_moor','wkb_geometry',25832,'GEOMETRY',2);
2804
2805CREATE INDEX ax_moor_geom_idx   ON ax_moor USING gist (wkb_geometry);
2806CREATE UNIQUE INDEX ax_moor_gml ON ax_moor USING btree (gml_id,beginnt);
2807
2808COMMENT ON TABLE  ax_moor        IS '"M o o r"  ist eine unkultivierte FlÀche, deren obere Schicht aus vertorften oder zersetzten Pflanzenresten besteht.';
2809-- Torfstich bzw. TorfabbauflÀche wird der Objektart 41005 'Tagebau, Grube, Steinbruch' mit AGT 'Torf' zugeordnet.
2810COMMENT ON COLUMN ax_moor.gml_id IS 'Identifikator, global eindeutig';
2811COMMENT ON COLUMN ax_moor.name IS 'NAM "Name" ist der Eigenname von "Moor".';
2812
2813
2814-- S u m p f
2815-- ----------------------------------------------
2816CREATE TABLE ax_sumpf (
2817        ogc_fid                 serial NOT NULL,
2818        gml_id                  character(16),
2819        identifier              character(44),
2820        beginnt                 character(20),
2821        endet                   character(20),
2822        advstandardmodell       varchar,
2823        anlass                  integer,
2824        "name"                  varchar,
2825        CONSTRAINT ax_sumpf_pk PRIMARY KEY (ogc_fid)
2826);
2827
2828SELECT AddGeometryColumn('ax_sumpf','wkb_geometry',25832,'GEOMETRY',2);
2829
2830CREATE INDEX ax_sumpf_geom_idx ON ax_sumpf USING gist (wkb_geometry);
2831CREATE UNIQUE INDEX ax_sumpf_gml ON ax_sumpf USING btree (gml_id,beginnt);
2832
2833COMMENT 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.';
2834COMMENT ON COLUMN ax_sumpf.gml_id IS 'Identifikator, global eindeutig';
2835COMMENT ON COLUMN ax_sumpf.name   IS 'NAM "Name" ist der Eigenname von "Sumpf".';
2836
2837
2838-- U n l a n d  /  V e g e t a t i o n s f l a e c h e
2839-- ---------------------------------------------------
2840CREATE TABLE ax_unlandvegetationsloseflaeche (
2841        ogc_fid                 serial NOT NULL,
2842        gml_id                  character(16),
2843        identifier              character(44),
2844        beginnt                 character(20),
2845        endet                   character(20),
2846        advstandardmodell       varchar,
2847        anlass                  integer,
2848        oberflaechenmaterial    integer,
2849        "name"                  varchar,
2850        funktion                integer,
2851        CONSTRAINT ax_unlandvegetationsloseflaeche_pk PRIMARY KEY (ogc_fid)
2852);
2853
2854SELECT AddGeometryColumn('ax_unlandvegetationsloseflaeche','wkb_geometry',25832,'GEOMETRY',2);
2855
2856CREATE INDEX ax_unlandvegetationsloseflaeche_geom_idx ON ax_unlandvegetationsloseflaeche USING gist (wkb_geometry);
2857CREATE UNIQUE INDEX ax_unlandvegetationsloseflaeche_gml ON ax_unlandvegetationsloseflaeche USING btree (gml_id,beginnt);
2858
2859COMMENT 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.';
2860COMMENT ON COLUMN ax_unlandvegetationsloseflaeche.gml_id IS 'Identifikator, global eindeutig';
2861-- Die Attributart 'OberflÀchenmaterial' kann nur im Zusammenhang mit der Attributart 'Funktion' und der Werteart 1000 vorkommen.
2862COMMENT ON COLUMN ax_unlandvegetationsloseflaeche.oberflaechenmaterial IS 'OFM "OberflÀchenmaterial" ist die Beschaffenheit des Bodens von "Unland/Vegetationslose FlÀche".';
2863COMMENT ON COLUMN ax_unlandvegetationsloseflaeche.name                 IS 'NAM "Name" ist die Bezeichnung oder der Eigenname von "Unland/ VegetationsloseFlaeche".';
2864COMMENT ON COLUMN ax_unlandvegetationsloseflaeche.funktion             IS 'FKT "Funktion" ist die erkennbare Art von "Unland/Vegetationslose FlÀche".';
2865
2866
2867--** Objektartengruppe: GewÀsser (in Objektbereich:TatsÀchliche Nutzung)
2868--   ===================================================================
2869
2870
2871-- F l i e s s g e w a e s s e r
2872-- ----------------------------------------------
2873-- 'FließgewÀsser' ist ein geometrisch begrenztes, oberirdisches, auf dem Festland fließendes GewÀsser,
2874-- das die Wassermengen sammelt, die als NiederschlÀge auf die ErdoberflÀche fallen oder in Quellen austreten,
2875-- und in ein anderes GewÀsser, ein Meer oder in einen See transportiert
2876--   oder
2877-- in einem System von natÃŒrlichen oder kÃŒnstlichen Bodenvertiefungen verlaufendes Wasser,
2878-- das zur Be- und EntwÀsserung an- oder abgeleitet wird
2879--   oder
2880-- ein geometrisch begrenzter, fÃŒr die Schifffahrt angelegter kÃŒnstlicher Wasserlauf,
2881-- der in einem oder in mehreren Abschnitten die jeweils gleiche Höhe des Wasserspiegels besitzt.
2882CREATE TABLE ax_fliessgewaesser (
2883        ogc_fid                 serial NOT NULL,
2884        gml_id                  character(16),
2885        identifier              character(44),
2886        beginnt                 character(20),
2887        endet                   character(20),
2888        advstandardmodell       varchar,
2889        anlass                  integer,
2890        funktion                integer,
2891        "name"                  varchar,
2892        zustand                 integer,
2893        CONSTRAINT ax_fliessgewaesser_pk PRIMARY KEY (ogc_fid)
2894);
2895
2896SELECT AddGeometryColumn('ax_fliessgewaesser','wkb_geometry',25832,'GEOMETRY',2);
2897
2898CREATE INDEX ax_fliessgewaesser_geom_idx ON ax_fliessgewaesser USING gist (wkb_geometry);
2899CREATE UNIQUE INDEX ax_fliessgewaesser_gml ON ax_fliessgewaesser USING btree (gml_id,beginnt);
2900
2901COMMENT ON TABLE  ax_fliessgewaesser          IS '"F l i e s s g e w a e 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';
2902COMMENT ON COLUMN ax_fliessgewaesser.gml_id   IS 'Identifikator, global eindeutig';
2903COMMENT ON COLUMN ax_fliessgewaesser.funktion IS 'FKT "Funktion" ist die Art von "FließgewÀsser".';
2904COMMENT ON COLUMN ax_fliessgewaesser.name     IS 'NAM "Name" ist die Bezeichnung oder der Eigenname von "FließgewÀsser".';
2905COMMENT ON COLUMN ax_fliessgewaesser.zustand  IS 'ZUS "Zustand" beschreibt die Betriebsbereitschaft von "FließgewÀsser" mit FKT=8300 (Kanal).';
2906
2907
2908-- H a f e n b e c k e n
2909-- ---------------------
2910CREATE TABLE ax_hafenbecken (
2911        ogc_fid                 serial NOT NULL,
2912        gml_id                  character(16),
2913        identifier              character(44),
2914        beginnt                 character(20),
2915        endet                   character(20),
2916        advstandardmodell       varchar,
2917        anlass                  integer,
2918        funktion                integer,
2919        "name"                  varchar,
2920        nutzung                 integer,
2921        CONSTRAINT ax_hafenbecken_pk PRIMARY KEY (ogc_fid)
2922);
2923
2924SELECT AddGeometryColumn('ax_hafenbecken','wkb_geometry',25832,'GEOMETRY',2);
2925
2926CREATE INDEX ax_hafenbecken_geom_idx   ON ax_hafenbecken USING gist  (wkb_geometry);
2927CREATE UNIQUE INDEX ax_hafenbecken_gml ON ax_hafenbecken USING btree (gml_id,beginnt);
2928
2929COMMENT 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.';
2930COMMENT ON COLUMN ax_hafenbecken.gml_id IS 'Identifikator, global eindeutig';
2931
2932COMMENT ON COLUMN ax_hafenbecken.funktion IS 'FKT "Funktion" ist die objektiv erkennbare Nutzung von "Hafenbecken".';
2933COMMENT ON COLUMN ax_hafenbecken.name     IS 'NAM "Name" ist der Eigenname von "Hafenbecken".';
2934COMMENT ON COLUMN ax_hafenbecken.nutzung  IS 'NTZ "Nutzung" gibt den Nutzerkreis von "Hafenbecken" an.';
2935
2936
2937-- s t e h e n d e s   G e w a e s s e r
2938-- ----------------------------------------------
2939-- 'Stehendes GewÀsser' ist eine natÌrliche oder kÌnstliche mit Wasser gefÌllte,
2940-- allseitig umschlossene Hohlform der LandoberflÀche ohne unmittelbaren Zusammenhang mit 'Meer'.
2941CREATE TABLE ax_stehendesgewaesser (
2942        ogc_fid                 serial NOT NULL,
2943        gml_id                  character(16),
2944        identifier              character(44),
2945        beginnt                 character(20),
2946        endet                   character(20),
2947        advstandardmodell       varchar,
2948        anlass                  integer,
2949        funktion                integer,
2950        name                    varchar,
2951        gewaesserkennziffer     varchar,
2952        hydrologischesMerkmal   integer,
2953        CONSTRAINT ax_stehendesgewaesser_pk PRIMARY KEY (ogc_fid)
2954);
2955
2956SELECT AddGeometryColumn('ax_stehendesgewaesser','wkb_geometry',25832,'GEOMETRY',2);
2957
2958CREATE INDEX ax_stehendesgewaesser_geom_idx ON ax_stehendesgewaesser USING gist (wkb_geometry);
2959CREATE UNIQUE INDEX ax_stehendesgewaesser_gml ON ax_stehendesgewaesser USING btree (gml_id,beginnt);
2960
2961COMMENT ON TABLE  ax_stehendesgewaesser           IS 's t e h e n d e s   G e w a e 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".';
2962COMMENT ON COLUMN ax_stehendesgewaesser.gml_id    IS 'Identifikator, global eindeutig';
2963COMMENT ON COLUMN ax_stehendesgewaesser.funktion  IS 'FKT "Funktion" ist die Art von "Stehendes GewÀsser".';
2964COMMENT ON COLUMN ax_stehendesgewaesser.name      IS 'NAM "Name" ist der Eigenname von "Stehendes GewÀsser".';
2965COMMENT ON COLUMN ax_stehendesgewaesser.gewaesserkennziffer   IS 'GWK  "GewÀsserkennziffer" ist die von der zustÀndigen Fachstelle vergebene VerschlÃŒsselung.';
2966COMMENT ON COLUMN ax_stehendesgewaesser.hydrologischesMerkmal IS 'HYD  "Hydrologisches Merkmal" gibt die WasserverhÀltnisse von "Stehendes GewÀsser" an.';
2967
2968
2969-- M e e r
2970-- ----------------------------------------------
2971CREATE TABLE ax_meer (
2972        ogc_fid                 serial NOT NULL,
2973        gml_id                  character(16),
2974        identifier              character(44),
2975        beginnt                 character(20),
2976        endet                   character(20),
2977        advstandardmodell       varchar,
2978        anlass                  integer,
2979        funktion                integer,
2980        "name"                  varchar,
2981        bezeichnung             varchar,
2982        tidemerkmal             integer,
2983        CONSTRAINT ax_meer_pk PRIMARY KEY (ogc_fid)
2984);
2985
2986SELECT AddGeometryColumn('ax_meer','wkb_geometry',25832,'GEOMETRY',2);
2987
2988CREATE INDEX ax_meer_geom_idx ON ax_meer USING gist (wkb_geometry);
2989CREATE UNIQUE INDEX ax_meer_gml ON ax_meer USING btree (gml_id,beginnt);
2990
2991COMMENT ON TABLE  ax_meer              IS '"M e e r" ist die das Festland umgebende WasserflÀche.';
2992COMMENT ON COLUMN ax_meer.gml_id       IS 'Identifikator, global eindeutig';
2993COMMENT ON COLUMN ax_meer.funktion     IS 'FKT "Funktion" ist die Art von "Meer".';
2994COMMENT ON COLUMN ax_meer.name         IS 'NAM "Name" ist der Eigenname von "Meer".';
2995COMMENT ON COLUMN ax_meer.bezeichnung  IS 'BEZ "Bezeichnung" ist die von der zustÀndigen Fachbehörde vergebene VerschlÃŒsselung.';
2996COMMENT ON COLUMN ax_meer.tidemerkmal  IS 'TID "Tidemerkmal" gibt an, ob "Meer" von den periodischen WasserstandsÀnderungen beeinflusst wird.';
2997
2998
2999
3000--*** ############################################################
3001--*** Objektbereich: Bauwerke, Einrichtungen und sonstige Angaben
3002--*** ############################################################
3003
3004--AX_BauwerkeEinrichtungenUndSonstigeAngaben
3005-- ** Tabelle bisher noch nicht generiert
3006
3007--AX_DQMitDatenerhebung
3008-- ** Tabelle bisher noch nicht generiert
3009
3010
3011--AX_LI_Lineage_MitDatenerhebung
3012-- ** Tabelle bisher noch nicht generiert
3013
3014--AX_LI_ProcessStep_MitDatenerhebung
3015-- ** Tabelle bisher noch nicht generiert
3016
3017--AX_LI_Source_MitDatenerhebung
3018-- ** Tabelle bisher noch nicht generiert
3019
3020
3021--** Objektartengruppe: Bauwerke und Einrichtungen in SiedlungsflÀchen
3022--   ===================================================================
3023
3024-- T u r m
3025-- ---------------------------------------------------
3026CREATE TABLE ax_turm (
3027        ogc_fid                 serial NOT NULL,
3028        gml_id                  character(16),
3029        identifier              character(44),
3030        beginnt                 character(20),
3031        endet                   character(20),
3032        advstandardmodell       varchar,
3033        anlass                  integer,
3034        bauwerksfunktion        integer,
3035        CONSTRAINT ax_turm_pk PRIMARY KEY (ogc_fid)
3036);
3037
3038SELECT AddGeometryColumn('ax_turm','wkb_geometry',25832,'GEOMETRY',2);
3039
3040CREATE INDEX ax_turm_geom_idx ON ax_turm USING gist (wkb_geometry);
3041CREATE UNIQUE INDEX ax_turm_gml ON ax_turm USING btree (gml_id,beginnt);
3042
3043COMMENT ON TABLE  ax_turm        IS 'T u r m';
3044COMMENT ON COLUMN ax_turm.gml_id IS 'Identifikator, global eindeutig';
3045
3046
3047-- Bauwerk oder Anlage fuer Industrie und Gewerbe
3048-- ----------------------------------------------
3049CREATE TABLE ax_bauwerkoderanlagefuerindustrieundgewerbe (
3050        ogc_fid                 serial NOT NULL,
3051        gml_id                  character(16),
3052        identifier              character(44),
3053        beginnt                 character(20),
3054        endet                   character(20),
3055        advstandardmodell       varchar,
3056        anlass                  integer,
3057        bauwerksfunktion        integer,
3058        CONSTRAINT ax_bauwerkoderanlagefuerindustrieundgewerbe_pk PRIMARY KEY (ogc_fid)
3059);
3060
3061SELECT AddGeometryColumn('ax_bauwerkoderanlagefuerindustrieundgewerbe','wkb_geometry',25832,'GEOMETRY',2); -- POLYGON/POINT
3062
3063CREATE INDEX ax_bauwerkoderanlagefuerindustrieundgewerbe_geom_idx ON ax_bauwerkoderanlagefuerindustrieundgewerbe USING gist (wkb_geometry);
3064CREATE UNIQUE INDEX ax_bauwerkoderanlagefuerindustrieundgewerbe_gml ON ax_bauwerkoderanlagefuerindustrieundgewerbe USING btree (gml_id,beginnt);
3065
3066COMMENT ON TABLE ax_bauwerkoderanlagefuerindustrieundgewerbe         IS 'Bauwerk oder Anlage fuer Industrie und Gewerbe';
3067COMMENT ON COLUMN ax_bauwerkoderanlagefuerindustrieundgewerbe.gml_id IS 'Identifikator, global eindeutig';
3068
3069
3070-- V o r r a t s b e h a e l t e r  /  S p e i c h e r b a u w e r k
3071-- -----------------------------------------------------------------
3072CREATE TABLE ax_vorratsbehaelterspeicherbauwerk (
3073        ogc_fid                 serial NOT NULL,
3074        gml_id                  character(16),
3075        identifier              character(44),
3076        beginnt                 character(20),
3077        endet                   character(20),
3078        advstandardmodell       varchar,
3079        anlass                  integer,
3080        speicherinhalt          integer,
3081        bauwerksfunktion        integer,
3082        CONSTRAINT ax_vorratsbehaelterspeicherbauwerk_pk PRIMARY KEY (ogc_fid)
3083);
3084
3085SELECT AddGeometryColumn('ax_vorratsbehaelterspeicherbauwerk','wkb_geometry',25832,'GEOMETRY',2);
3086
3087CREATE INDEX ax_vorratsbehaelterspeicherbauwerk_geom_idx ON ax_vorratsbehaelterspeicherbauwerk USING gist (wkb_geometry);
3088CREATE UNIQUE INDEX ax_vorratsbehaelterspeicherbauwerk_gml ON ax_vorratsbehaelterspeicherbauwerk USING btree (gml_id,beginnt);
3089
3090COMMENT ON TABLE  ax_vorratsbehaelterspeicherbauwerk        IS 'V o r r a t s b e h a e l t e r  /  S p e i c h e r b a u w e r k';
3091COMMENT ON COLUMN ax_vorratsbehaelterspeicherbauwerk.gml_id IS 'Identifikator, global eindeutig';
3092
3093
3094-- T r a n s p o r t a n l a g e
3095-- ---------------------------------------------------
3096CREATE TABLE ax_transportanlage (
3097        ogc_fid                 serial NOT NULL,
3098        gml_id                  character(16),
3099        identifier              character(44),
3100        beginnt                 character(20),
3101        endet                   character(20),
3102        advstandardmodell       varchar,
3103        anlass                  integer,
3104        bauwerksfunktion        integer,
3105        lagezurerdoberflaeche   integer,
3106        art                     varchar,  --(15)
3107        "name"                  varchar,  -- (3) "NPL", "RMR"
3108        CONSTRAINT ax_transportanlage_pk PRIMARY KEY (ogc_fid)
3109);
3110
3111SELECT AddGeometryColumn('ax_transportanlage','wkb_geometry',25832,'LINESTRING',2);
3112
3113CREATE INDEX ax_transportanlage_geom_idx ON ax_transportanlage USING gist (wkb_geometry);
3114CREATE UNIQUE INDEX ax_transportanlage_gml ON ax_transportanlage USING btree (gml_id,beginnt);
3115
3116COMMENT ON TABLE  ax_transportanlage        IS 'T r a n s p o r t a n l a g e';
3117COMMENT ON COLUMN ax_transportanlage.gml_id IS 'Identifikator, global eindeutig';
3118
3119
3120-- L e i t u n g
3121-- ----------------------------------------------
3122CREATE TABLE ax_leitung (
3123        ogc_fid                 serial NOT NULL,
3124        gml_id                  character(16),
3125        identifier              character(44),
3126        beginnt                 character(20),
3127        endet                   character(20),
3128        advstandardmodell       varchar,
3129        anlass                  integer,
3130        bauwerksfunktion        integer,
3131        spannungsebene          integer,
3132        CONSTRAINT ax_leitung_pk PRIMARY KEY (ogc_fid)
3133);
3134
3135SELECT AddGeometryColumn('ax_leitung','wkb_geometry',25832,'LINESTRING',2);
3136
3137CREATE INDEX ax_leitung_geom_idx ON ax_leitung USING gist (wkb_geometry);
3138CREATE UNIQUE INDEX ax_leitung_gml ON ax_leitung USING btree (gml_id,beginnt);
3139
3140COMMENT ON TABLE  ax_leitung        IS 'L e i t u n g';
3141COMMENT ON COLUMN ax_leitung.gml_id IS 'Identifikator, global eindeutig';
3142
3143
3144-- Bauwerk oder Anlage fuer Sport, Freizeit und Erholung
3145-- -----------------------------------------------------
3146CREATE TABLE ax_bauwerkoderanlagefuersportfreizeitunderholung (
3147        ogc_fid                 serial NOT NULL,
3148        gml_id                  character(16),
3149        identifier              character(44),
3150        beginnt                 character(20),
3151        endet                   character(20),
3152        advstandardmodell       varchar,
3153        anlass                  integer,
3154        bauwerksfunktion        integer,
3155        -- "name"               varchar,
3156        CONSTRAINT ax_bauwerkoderanlagefuersportfreizeitunderholung_pk PRIMARY KEY (ogc_fid)
3157);
3158
3159SELECT AddGeometryColumn('ax_bauwerkoderanlagefuersportfreizeitunderholung','wkb_geometry',25832,'GEOMETRY',2); -- POLYGON/POINT
3160
3161CREATE INDEX ax_bauwerkoderanlagefuersportfreizeitunderholung_geom_idx ON ax_bauwerkoderanlagefuersportfreizeitunderholung USING gist (wkb_geometry);
3162CREATE UNIQUE INDEX ax_bauwerkoderanlagefuersportfreizeitunderholung_gml ON ax_bauwerkoderanlagefuersportfreizeitunderholung USING btree (gml_id,beginnt);
3163
3164COMMENT ON TABLE  ax_bauwerkoderanlagefuersportfreizeitunderholung        IS 'Bauwerk oder Anlage fuer Sport, Freizeit und Erholung';
3165COMMENT ON COLUMN ax_bauwerkoderanlagefuersportfreizeitunderholung.gml_id IS 'Identifikator, global eindeutig';
3166
3167
3168-- Historisches Bauwerk oder historische Einrichtung
3169-- -------------------------------------------------
3170CREATE TABLE ax_historischesbauwerkoderhistorischeeinrichtung (
3171        ogc_fid                 serial NOT NULL,
3172        gml_id                  character(16),
3173        identifier              character(44),
3174        beginnt                 character(20),
3175        endet                   character(20),
3176        advstandardmodell       varchar,
3177        sonstigesmodell         varchar[],
3178        anlass                  integer,
3179        archaeologischertyp     integer,
3180        CONSTRAINT ax_historischesbauwerkoderhistorischeeinrichtung_pk PRIMARY KEY (ogc_fid)
3181);
3182
3183SELECT AddGeometryColumn('ax_historischesbauwerkoderhistorischeeinrichtung','wkb_geometry',25832,'GEOMETRY',2); -- POLYGON/POINT
3184
3185CREATE INDEX ax_historischesbauwerkoderhistorischeeinrichtung_geom_idx ON ax_historischesbauwerkoderhistorischeeinrichtung USING gist (wkb_geometry);
3186CREATE UNIQUE INDEX ax_historischesbauwerkoderhistorischeeinrichtung_gml ON ax_historischesbauwerkoderhistorischeeinrichtung USING btree (gml_id,beginnt);
3187
3188COMMENT ON TABLE  ax_historischesbauwerkoderhistorischeeinrichtung        IS 'Historisches Bauwerk oder historische Einrichtung';
3189COMMENT ON COLUMN ax_historischesbauwerkoderhistorischeeinrichtung.gml_id IS 'Identifikator, global eindeutig';
3190
3191
3192-- H e i l q u e l l e  /  G a s q u e l l e
3193-- ----------------------------------------------
3194CREATE TABLE ax_heilquellegasquelle (
3195        ogc_fid                 serial NOT NULL,
3196        gml_id                  character(16),
3197        identifier              character(44),
3198        beginnt                 character(20),
3199        endet                   character(20),
3200        advstandardmodell       varchar,
3201        sonstigesmodell         varchar,
3202        anlass                  integer,
3203        art                     integer,
3204        "name"                  varchar,
3205        CONSTRAINT ax_heilquellegasquelle_pk PRIMARY KEY (ogc_fid)
3206);
3207
3208SELECT AddGeometryColumn('ax_heilquellegasquelle','wkb_geometry',25832,'POINT',2);
3209
3210CREATE INDEX ax_heilquellegasquelle_geom_idx ON ax_heilquellegasquelle USING gist (wkb_geometry);
3211CREATE UNIQUE INDEX ax_heilquellegasquelle_gml ON ax_heilquellegasquelle USING btree (gml_id,beginnt);
3212
3213COMMENT ON TABLE  ax_heilquellegasquelle        IS 'H e i l q u e l l e  /  G a s q u e l l e';
3214COMMENT ON COLUMN ax_heilquellegasquelle.gml_id IS 'Identifikator, global eindeutig';
3215
3216
3217-- sonstiges Bauwerk oder sonstige Einrichtung
3218-- ----------------------------------------------
3219CREATE TABLE ax_sonstigesbauwerkodersonstigeeinrichtung (
3220        ogc_fid                 serial NOT NULL,
3221        gml_id                  character(16),
3222        identifier              character(44),
3223        beginnt                 character(20),
3224        endet                   character(20),
3225        advstandardmodell       varchar,
3226        anlass                  integer,
3227--      art                     varchar,        -- Inhalt = "urn:adv:fachdatenverbindung:AA_Antrag" oder leer, wozu?
3228        description             integer,                -- neu 03.02.2012
3229        "name"                  varchar,        -- Lippe immer leer, RLP "Relationsbelegung bei Nachmigration"
3230        bauwerksfunktion        integer,
3231        CONSTRAINT ax_sonstigesbauwerkodersonstigeeinrichtung_pk PRIMARY KEY (ogc_fid)
3232);
3233
3234SELECT AddGeometryColumn('ax_sonstigesbauwerkodersonstigeeinrichtung','wkb_geometry',25832,'GEOMETRY',2); -- POLYGON/LINESTRING
3235
3236CREATE INDEX ax_sonstigesbauwerkodersonstigeeinrichtung_geom_idx ON ax_sonstigesbauwerkodersonstigeeinrichtung USING gist (wkb_geometry);
3237CREATE UNIQUE INDEX ax_sonstigesbauwerkodersonstigeeinrichtung_gml ON ax_sonstigesbauwerkodersonstigeeinrichtung USING btree (gml_id,beginnt);
3238
3239COMMENT ON TABLE  ax_sonstigesbauwerkodersonstigeeinrichtung        IS 'sonstiges Bauwerk oder sonstige Einrichtung';
3240COMMENT ON COLUMN ax_sonstigesbauwerkodersonstigeeinrichtung.gml_id IS 'Identifikator, global eindeutig';
3241
3242
3243-- E i n r i c h t u n g  i n  O e f f e n t l i c h e n  B e r e i c h e n
3244-- ------------------------------------------------------------------------
3245CREATE TABLE ax_einrichtunginoeffentlichenbereichen (
3246        ogc_fid                 serial NOT NULL,
3247        gml_id                  character(16),
3248        identifier              character(44),
3249        beginnt                 character(20),
3250        endet                   character(20),
3251        sonstigesmodell         varchar,
3252        anlass                  integer,
3253        art                     integer,
3254        CONSTRAINT ax_einrichtunginoeffentlichenbereichen_pk PRIMARY KEY (ogc_fid)
3255);
3256
3257SELECT AddGeometryColumn('ax_einrichtunginoeffentlichenbereichen','wkb_geometry',25832,'POINT',2);
3258
3259CREATE INDEX ax_einrichtunginoeffentlichenbereichen_geom_idx ON ax_einrichtunginoeffentlichenbereichen USING gist (wkb_geometry);
3260CREATE UNIQUE INDEX ax_einrichtunginoeffentlichenbereichen_gml ON ax_einrichtunginoeffentlichenbereichen USING btree (gml_id,beginnt);
3261
3262COMMENT ON TABLE  ax_einrichtunginoeffentlichenbereichen        IS 'E i n r i c h t u n g   i n   O e f f e n t l i c h e n   B e r e i c h e n';
3263COMMENT ON COLUMN ax_einrichtunginoeffentlichenbereichen.gml_id IS 'Identifikator, global eindeutig';
3264
3265
3266-- B e s o n d e r e r   B a u w e r k s p u n k t
3267-- -----------------------------------------------
3268CREATE TABLE ax_besondererbauwerkspunkt (
3269        ogc_fid                 serial NOT NULL,
3270        gml_id                  character(16),
3271        identifier              character(44),
3272        beginnt                 character(20),
3273        endet                   character(20),
3274        advstandardmodell       varchar,
3275        anlass                  integer,
3276        punktkennung            varchar, -- integer,
3277        land                    integer,
3278        stelle                  integer,
3279        --sonstigeeigenschaft   character(26),
3280        CONSTRAINT ax_besondererbauwerkspunkt_pk PRIMARY KEY (ogc_fid)
3281);
3282
3283SELECT AddGeometryColumn('ax_besondererbauwerkspunkt','dummy',25832,'POINT',2);
3284
3285CREATE UNIQUE INDEX ax_besondererbauwerkspunkt_gml ON ax_besondererbauwerkspunkt USING btree (gml_id,beginnt);
3286
3287COMMENT 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';
3288COMMENT ON COLUMN ax_besondererbauwerkspunkt.gml_id IS 'Identifikator, global eindeutig';
3289
3290
3291--** Objektartengruppe: Besondere Anlagen auf SiedlungsflÀchen
3292--   ===================================================================
3293
3294--** Objektartengruppe: Bauwerke, Anlagen und Einrichtungen fÃŒr den Verkehr
3295--   =======================================================================
3296
3297-- B a u w e r k   i m  V e r k e h s b e r e i c h
3298-- ------------------------------------------------
3299CREATE TABLE ax_bauwerkimverkehrsbereich (
3300        ogc_fid                 serial NOT NULL,
3301        gml_id                  character(16),
3302        identifier              character(44),
3303        beginnt                 character(20),
3304        endet                   character(20),
3305        advstandardmodell       varchar,
3306        anlass                  integer,
3307        bauwerksfunktion        integer,
3308        CONSTRAINT ax_bauwerkimverkehrsbereich_pk PRIMARY KEY (ogc_fid)
3309);
3310
3311SELECT AddGeometryColumn('ax_bauwerkimverkehrsbereich','wkb_geometry',25832,'GEOMETRY',2); -- POLYGON/MULTIPOLYGON
3312
3313CREATE INDEX ax_bauwerkimverkehrsbereich_geom_idx ON ax_bauwerkimverkehrsbereich USING gist (wkb_geometry);
3314CREATE UNIQUE INDEX ax_bauwerkimverkehrsbereich_gml ON ax_bauwerkimverkehrsbereich USING btree (gml_id,beginnt);
3315
3316COMMENT 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';
3317COMMENT ON COLUMN ax_bauwerkimverkehrsbereich.gml_id IS 'Identifikator, global eindeutig';
3318
3319
3320-- S t r a s s e n v e r k e h r s a n l a g e
3321-- ----------------------------------------------
3322CREATE TABLE ax_strassenverkehrsanlage (
3323        ogc_fid                 serial NOT NULL,
3324        gml_id                  character(16),
3325        beginnt                 character(20),
3326        endet                   character(20),
3327        advstandardmodell       varchar,
3328        sonstigesmodell         varchar[],
3329        anlass                  integer,
3330        art                     integer
3331);
3332
3333SELECT AddGeometryColumn('ax_strassenverkehrsanlage','wkb_geometry',25832,'GEOMETRY',2); -- LINESTRING/MULTIPOLYGON
3334
3335CREATE INDEX ax_strassenverkehrsanlage_geom_idx ON ax_strassenverkehrsanlage USING gist (wkb_geometry);
3336CREATE UNIQUE INDEX ax_strassenverkehrsanlage_gml ON ax_strassenverkehrsanlage USING btree (gml_id,beginnt);
3337
3338COMMENT 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';
3339COMMENT ON COLUMN ax_strassenverkehrsanlage.gml_id IS 'Identifikator, global eindeutig';
3340
3341
3342-- W e g  /  P f a d  /  S t e i g
3343-- ----------------------------------------------
3344CREATE TABLE ax_wegpfadsteig (
3345        ogc_fid                 serial NOT NULL,
3346        gml_id                  character(16),
3347        identifier              character(44),
3348        beginnt                 character(20),
3349        endet                   character(20),
3350        advstandardmodell       varchar,
3351        sonstigesmodell         varchar[],
3352        anlass                  integer,
3353        art                     integer,
3354        CONSTRAINT ax_wegpfadsteig_pk PRIMARY KEY (ogc_fid)
3355);
3356
3357SELECT AddGeometryColumn('ax_wegpfadsteig','wkb_geometry',25832,'GEOMETRY',2); -- LINESTRING/POLYGON
3358
3359CREATE INDEX ax_wegpfadsteig_geom_idx ON ax_wegpfadsteig USING gist (wkb_geometry);
3360CREATE UNIQUE INDEX ax_wegpfadsteig_gml ON ax_wegpfadsteig USING btree (gml_id,beginnt);
3361
3362COMMENT ON TABLE  ax_wegpfadsteig        IS 'W e g  /  P f a d  /  S t e i g';
3363COMMENT ON COLUMN ax_wegpfadsteig.gml_id IS 'Identifikator, global eindeutig';
3364
3365
3366-- B a h n v e r k e h r s a n l a g e
3367-- ----------------------------------------------
3368CREATE TABLE ax_bahnverkehrsanlage (
3369        ogc_fid                 serial NOT NULL,
3370        gml_id                  character(16),
3371        beginnt                 character(20),
3372        endet                   character(20),
3373        advstandardmodell       varchar,
3374        sonstigesmodell         varchar[],
3375        anlass                  integer,
3376        bahnhofskategorie       integer,
3377        bahnkategorie           integer,
3378        CONSTRAINT ax_bahnverkehrsanlage_pk PRIMARY KEY (ogc_fid)
3379);
3380
3381SELECT AddGeometryColumn('ax_bahnverkehrsanlage','wkb_geometry',25832,'POINT',2);
3382
3383CREATE INDEX ax_bahnverkehrsanlage_geom_idx ON ax_bahnverkehrsanlage USING gist (wkb_geometry);
3384CREATE UNIQUE INDEX ax_bahnverkehrsanlage_gml ON ax_bahnverkehrsanlage USING btree (gml_id,beginnt);
3385
3386COMMENT ON TABLE  ax_bahnverkehrsanlage        IS 'B a h n v e r k e h r s a n l a g e';
3387COMMENT ON COLUMN ax_bahnverkehrsanlage.gml_id IS 'Identifikator, global eindeutig';
3388
3389
3390--AX_SeilbahnSchwebebahn
3391-- ** Tabelle bisher noch nicht generiert
3392
3393
3394-- G l e i s
3395-- ----------------------------------------------
3396CREATE TABLE ax_gleis (
3397        ogc_fid                 serial NOT NULL,
3398        gml_id                  character(16),
3399        identifier              character(44),
3400        beginnt                 character(20),
3401        endet                   character(20),
3402        advstandardmodell       varchar,
3403        sonstigesmodell         varchar[],
3404        anlass                  integer,
3405        bahnkategorie           integer,
3406        CONSTRAINT ax_gleis_pk PRIMARY KEY (ogc_fid)
3407);
3408
3409SELECT AddGeometryColumn('ax_gleis','wkb_geometry',25832,'GEOMETRY',2); -- LINESTRING/POLYGON
3410
3411CREATE INDEX ax_gleis_geom_idx ON ax_gleis USING gist (wkb_geometry);
3412CREATE UNIQUE INDEX ax_gleis_gml ON ax_gleis USING btree (gml_id,beginnt);
3413
3414COMMENT ON TABLE  ax_gleis        IS 'G l e i s';
3415COMMENT ON COLUMN ax_gleis.gml_id IS 'Identifikator, global eindeutig';
3416
3417
3418-- F l u g v e r k e h r s a n l a g e
3419-- -----------------------------------
3420CREATE TABLE ax_flugverkehrsanlage (
3421        ogc_fid                 serial NOT NULL,
3422        gml_id                  character(16),
3423        identifier              character(44),
3424        beginnt                 character(20),
3425        endet                   character(20),
3426        advstandardmodell       varchar,
3427        sonstigesmodell         varchar,
3428        anlass                  integer,
3429        art                     integer,
3430        oberflaechenmaterial    integer,
3431        "name"                  varchar,
3432        CONSTRAINT ax_flugverkehrsanlage_pk PRIMARY KEY (ogc_fid)
3433);
3434
3435SELECT AddGeometryColumn('ax_flugverkehrsanlage','wkb_geometry',25832,'GEOMETRY',2);
3436
3437CREATE INDEX ax_flugverkehrsanlage_geom_idx ON ax_flugverkehrsanlage USING gist (wkb_geometry);
3438CREATE UNIQUE INDEX ax_flugverkehrsanlage_gml ON ax_flugverkehrsanlage USING btree (gml_id,beginnt);
3439
3440COMMENT ON TABLE  ax_flugverkehrsanlage             IS 'F l u g v e r k e h r s a n l a g e';
3441COMMENT ON COLUMN ax_flugverkehrsanlage.gml_id      IS 'Identifikator, global eindeutig';
3442
3443
3444--AX_EinrichtungenFuerDenSchiffsverkehr
3445-- ** Tabelle bisher noch nicht generiert
3446
3447
3448-- B a u w e r k   i m   G e w a e s s e r b e r e i c h
3449-- -----------------------------------------------------
3450CREATE TABLE ax_bauwerkimgewaesserbereich (
3451        ogc_fid                 serial NOT NULL,
3452        gml_id                  character(16),
3453        identifier              character(44),
3454        beginnt                 character(20),
3455        endet                   character(20),
3456        advstandardmodell       varchar,
3457        anlass                  integer,
3458        bauwerksfunktion        integer,
3459        CONSTRAINT ax_bauwerkimgewaesserbereich_pk PRIMARY KEY (ogc_fid)
3460);
3461
3462SELECT AddGeometryColumn('ax_bauwerkimgewaesserbereich','wkb_geometry',25832,'GEOMETRY',2); -- LINESTRING/POINT
3463
3464CREATE INDEX ax_bauwerkimgewaesserbereich_geom_idx ON ax_bauwerkimgewaesserbereich USING gist (wkb_geometry);
3465CREATE UNIQUE INDEX ax_bauwerkimgewaesserbereich_gml ON ax_bauwerkimgewaesserbereich USING btree (gml_id,beginnt);
3466
3467COMMENT ON TABLE  ax_bauwerkimgewaesserbereich        IS 'B a u w e r k   i m   G e w a e s s e r b e r e i c h';
3468COMMENT ON COLUMN ax_bauwerkimgewaesserbereich.gml_id IS 'Identifikator, global eindeutig';
3469
3470
3471--** Objektartengruppe: Besondere Vegetationsmerkmale
3472--   ===================================================================
3473
3474-- V e g a t a t i o n s m e r k m a l
3475-- ----------------------------------------------
3476CREATE TABLE ax_vegetationsmerkmal (
3477        ogc_fid                 serial NOT NULL,
3478        gml_id                  character(16),
3479        identifier              character(44),
3480        beginnt                 character(20),
3481        endet                   character(20),
3482        advstandardmodell       varchar,
3483        anlass                  integer,
3484        bewuchs                 integer,
3485        CONSTRAINT ax_vegetationsmerkmal_pk PRIMARY KEY (ogc_fid)
3486);
3487
3488SELECT AddGeometryColumn('ax_vegetationsmerkmal','wkb_geometry',25832,'GEOMETRY',2);
3489
3490CREATE INDEX ax_vegetationsmerkmal_geom_idx ON ax_vegetationsmerkmal USING gist (wkb_geometry);
3491CREATE UNIQUE INDEX ax_vegetationsmerkmal_gml ON ax_vegetationsmerkmal USING btree (gml_id,beginnt);
3492
3493COMMENT ON TABLE  ax_vegetationsmerkmal        IS 'V e g a t a t i o n s m e r k m a l';
3494COMMENT ON COLUMN ax_vegetationsmerkmal.gml_id IS 'Identifikator, global eindeutig';
3495
3496
3497--** Objektartengruppe: Besondere Eigenschaften von GewÀssern
3498--   ===================================================================
3499
3500-- G e w a e s s e r m e r k m a l
3501-- ----------------------------------------------
3502CREATE TABLE ax_gewaessermerkmal (
3503        ogc_fid                 serial NOT NULL,
3504        gml_id                  character(16),
3505        identifier              character(44),
3506        beginnt                 character(20),
3507        endet                   character(20),
3508        advstandardmodell       varchar,
3509        anlass                  integer,
3510        art                     integer,
3511        CONSTRAINT ax_gewaessermerkmal_pk PRIMARY KEY (ogc_fid)
3512);
3513
3514SELECT AddGeometryColumn('ax_gewaessermerkmal','wkb_geometry',25832,'POINT',2);
3515
3516CREATE INDEX ax_gewaessermerkmal_geom_idx ON ax_gewaessermerkmal USING gist (wkb_geometry);
3517CREATE UNIQUE INDEX ax_gewaessermerkmal_gml ON ax_gewaessermerkmal USING btree (gml_id,beginnt);
3518
3519COMMENT ON TABLE  ax_gewaessermerkmal        IS 'G e w a e s s e r m e r k m a l';
3520COMMENT ON COLUMN ax_gewaessermerkmal.gml_id IS 'Identifikator, global eindeutig';
3521
3522
3523-- u n t e r g e o r d n e t e s   G e w a e s s e r
3524-- -------------------------------------------------
3525CREATE TABLE ax_untergeordnetesgewaesser (
3526        ogc_fid                 serial NOT NULL,
3527        gml_id                  character(16),
3528        identifier              character(44),
3529        beginnt                 character(20),
3530        endet                   character(20),
3531        advstandardmodell       varchar,
3532        anlass                  integer,
3533        funktion                integer,
3534        CONSTRAINT ax_untergeordnetesgewaesser_pk PRIMARY KEY (ogc_fid)
3535);
3536
3537SELECT AddGeometryColumn('ax_untergeordnetesgewaesser','wkb_geometry',25832,'GEOMETRY',2); -- LINESTRING/POLYGON
3538
3539CREATE INDEX ax_untergeordnetesgewaesser_geom_idx ON ax_untergeordnetesgewaesser USING gist (wkb_geometry);
3540CREATE UNIQUE INDEX ax_untergeordnetesgewaesser_gml ON ax_untergeordnetesgewaesser USING btree (gml_id,beginnt);
3541
3542COMMENT ON TABLE  ax_untergeordnetesgewaesser        IS 'u n t e r g e o r d n e t e s   G e w a e s s e r';
3543COMMENT ON COLUMN ax_untergeordnetesgewaesser.gml_id IS 'Identifikator, global eindeutig';
3544
3545
3546--** Objektartengruppe: Besondere Angaben zum Verkehr
3547--   ===================================================================
3548
3549--** Objektartengruppe: Besondere Angaben zum GewÀsser
3550--   ===================================================================
3551
3552--AX_Wasserspiegelhoehe
3553-- ** Tabelle bisher noch nicht generiert
3554
3555--AX_SchifffahrtslinieFaehrverkehr
3556-- ** Tabelle bisher noch nicht generiert
3557
3558--*** ############################################################
3559--*** Objektbereich: Relief
3560--*** ############################################################
3561
3562--** Objektartengruppe: Reliefformen
3563--   ===================================================================
3564
3565
3566-- B o e s c h u n g s k l i f f
3567-- -----------------------------
3568CREATE TABLE ax_boeschungkliff (
3569        ogc_fid                 serial NOT NULL,
3570        gml_id                  character(16),
3571        beginnt                 character(20),
3572        endet                   character(20),
3573        advstandardmodell       varchar,
3574        sonstigesmodell         varchar[],
3575        anlass                  integer
3576);
3577
3578SELECT AddGeometryColumn('ax_boeschungkliff','dummy',25832,'POINT',2);
3579
3580CREATE UNIQUE INDEX ax_boeschungkliff_gml ON ax_boeschungkliff USING btree (gml_id,beginnt);
3581
3582COMMENT ON TABLE  ax_boeschungkliff        IS 'B o e s c h u n g s k l i f f';
3583COMMENT ON COLUMN ax_boeschungkliff.gml_id IS 'Identifikator, global eindeutig';
3584
3585
3586-- B o e s c h u n g s f l a e c h e
3587-- ---------------------------------
3588--AX_Boeschungsflaeche GeÀndert (Revisionsnummer: 1623)
3589CREATE TABLE ax_boeschungsflaeche (
3590        ogc_fid                 serial NOT NULL,
3591        gml_id                  character(16),
3592        beginnt                 character(20),
3593        endet                   character(20),
3594        advstandardmodell       varchar,
3595        sonstigesmodell         varchar[],
3596        anlass                  integer,
3597        CONSTRAINT ax_boeschungsflaeche_pk PRIMARY KEY (ogc_fid)
3598);
3599
3600SELECT AddGeometryColumn('ax_boeschungsflaeche','wkb_geometry',25832,'GEOMETRY',2);
3601
3602CREATE INDEX ax_boeschungsflaeche_geom_idx ON ax_boeschungsflaeche USING gist (wkb_geometry);
3603CREATE UNIQUE INDEX ax_boeschungsflaeche_gml ON ax_boeschungsflaeche USING btree (gml_id,beginnt);
3604
3605COMMENT ON TABLE  ax_boeschungsflaeche        IS 'B o e s c h u n g s f l a e c h e';
3606COMMENT ON COLUMN ax_boeschungsflaeche.gml_id IS 'Identifikator, global eindeutig';
3607
3608
3609-- D a m m  /  W a l l  /  D e i c h
3610-- ----------------------------------------------
3611CREATE TABLE ax_dammwalldeich (
3612        ogc_fid                 serial NOT NULL,
3613        gml_id                  character(16),
3614        identifier              character(44),
3615        beginnt                 character(20),
3616        endet                   character(20),
3617        advstandardmodell       varchar,
3618        anlass                  integer,
3619        art                     integer,
3620        CONSTRAINT ax_dammwalldeich_pk PRIMARY KEY (ogc_fid)
3621);
3622
3623SELECT AddGeometryColumn('ax_dammwalldeich','wkb_geometry',25832,'GEOMETRY',2); -- LINESTRING/POLYGON
3624
3625CREATE INDEX ax_dammwalldeich_geom_idx ON ax_dammwalldeich USING gist (wkb_geometry);
3626CREATE UNIQUE INDEX ax_dammwalldeich_gml ON ax_dammwalldeich USING btree (gml_id,beginnt);
3627
3628COMMENT ON TABLE  ax_dammwalldeich        IS 'D a m m  /  W a l l  /  D e i c h';
3629COMMENT ON COLUMN ax_dammwalldeich.gml_id IS 'Identifikator, global eindeutig';
3630
3631
3632--AX_Hoehleneingang
3633-- ** Tabelle bisher noch nicht generiert
3634
3635
3636-- F e l s e n ,  F e l s b l o c k ,   F e l s n a d e l
3637-- ------------------------------------------------------
3638-- Nutzung
3639CREATE TABLE ax_felsenfelsblockfelsnadel (
3640        ogc_fid                 serial NOT NULL,
3641        gml_id                  character(16),
3642        identifier              character(44),
3643        beginnt                 character(20),
3644        endet                   character(20),
3645        advstandardmodell       varchar,
3646        anlass                  integer,
3647        name                    varchar,
3648        CONSTRAINT ax_felsenfelsblockfelsnadel_pk PRIMARY KEY (ogc_fid)
3649);
3650
3651SELECT AddGeometryColumn('ax_felsenfelsblockfelsnadel','wkb_geometry',25832,'GEOMETRY',2);
3652
3653CREATE INDEX ax_felsenfelsblockfelsnadel_geom_idx ON ax_felsenfelsblockfelsnadel USING gist (wkb_geometry);
3654CREATE UNIQUE INDEX ax_felsenfelsblockfelsnadel_gml ON ax_felsenfelsblockfelsnadel USING btree (gml_id,beginnt);
3655
3656COMMENT 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';
3657COMMENT ON COLUMN ax_felsenfelsblockfelsnadel.gml_id IS 'Identifikator, global eindeutig';
3658
3659
3660--AX_Duene
3661-- ** Tabelle bisher noch nicht generiert
3662
3663
3664--AX_Hoehenlinie
3665-- ** Tabelle bisher noch nicht generiert
3666
3667
3668--** Objektartengruppe: PrimÀres DGM
3669--   ===================================================================
3670
3671--AX_Erfassung_DGM
3672-- ** Tabelle bisher noch nicht generiert
3673
3674
3675--AX_ErfassungMarkanterGelaendepunkt
3676-- ** Tabelle bisher noch nicht generiert
3677
3678
3679-- G e l a e n d e k a n t e
3680-- ----------------------------------------------
3681CREATE TABLE ax_gelaendekante (
3682        ogc_fid                 serial NOT NULL,
3683        gml_id                  character(16),
3684        identifier              character(44),
3685        beginnt                 character(20),
3686        endet                   character(20),
3687        advstandardmodell       varchar,
3688        sonstigesmodell         varchar,
3689        anlass                  integer,
3690        istteilvon              character varying, -- Beziehung?
3691        artdergelaendekante     integer,
3692        ax_dqerfassungsmethode  integer,
3693        identifikation          integer,
3694        CONSTRAINT ax_gelaendekante_pk PRIMARY KEY (ogc_fid)
3695);
3696
3697SELECT AddGeometryColumn('ax_gelaendekante','wkb_geometry',25832,'LINESTRING',2);
3698
3699CREATE INDEX ax_gelaendekante_geom_idx ON ax_gelaendekante USING gist (wkb_geometry);
3700CREATE UNIQUE INDEX ax_gelaendekante_gml ON ax_gelaendekante USING btree (gml_id,beginnt);
3701
3702COMMENT ON TABLE  ax_gelaendekante        IS 'G e l a e n d e k a n t e';
3703COMMENT ON COLUMN ax_gelaendekante.gml_id IS 'Identifikator, global eindeutig';
3704
3705
3706--AX_MarkanterGelaendepunkt
3707-- ** Tabelle bisher noch nicht generiert
3708
3709
3710-- B e s o n d e r e r   H o e h e n p u n k t
3711-- -------------------------------------------------------------
3712CREATE TABLE ax_besondererhoehenpunkt (
3713        ogc_fid                 serial NOT NULL,
3714        gml_id                  character(16),
3715        identifier              character(44),
3716        beginnt                 character(20),
3717        endet                   character(20),
3718        advstandardmodell       varchar,
3719        sonstigesmodell         varchar,
3720        anlass                  integer,
3721        besonderebedeutung      integer,
3722        CONSTRAINT ax_besondererhoehenpunkt_pk PRIMARY KEY (ogc_fid)
3723);
3724
3725SELECT AddGeometryColumn('ax_besondererhoehenpunkt','wkb_geometry',25832,'POINT',2);
3726
3727CREATE INDEX ax_besondererhoehenpunkt_geom_idx ON ax_besondererhoehenpunkt USING gist (wkb_geometry);
3728CREATE UNIQUE INDEX ax_besondererhoehenpunkt_gml ON ax_besondererhoehenpunkt USING btree (gml_id,beginnt);
3729
3730COMMENT ON TABLE  ax_besondererhoehenpunkt        IS 'B e s o n d e r e r   H ö h e n - P u n k t';
3731COMMENT ON COLUMN ax_besondererhoehenpunkt.gml_id IS 'Identifikator, global eindeutig';
3732
3733
3734
3735--** Objektartengruppe:SekundÀres DGM
3736--   ===================================================================
3737
3738--*** ############################################################
3739--*** Objektbereich: Gesetzliche Festlegungen, Gebietseinheiten, Kataloge
3740--*** ############################################################
3741
3742--** Objektartengruppe: Öffentlich-rechtliche und sonstige Festlegungen
3743--   ===================================================================
3744
3745
3746-- 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
3747-- -------------------------------------------------------------------
3748CREATE TABLE ax_klassifizierungnachstrassenrecht (
3749        ogc_fid                 serial NOT NULL,
3750        gml_id                  character(16),
3751        identifier              character(44),
3752        beginnt                 character(20),
3753        endet                   character(20),
3754        advstandardmodell       varchar,
3755        anlass                  integer,
3756        artderfestlegung        integer,
3757        bezeichnung             varchar,
3758        CONSTRAINT ax_klassifizierungnachstrassenrecht_pk PRIMARY KEY (ogc_fid)
3759);
3760
3761SELECT AddGeometryColumn('ax_klassifizierungnachstrassenrecht','wkb_geometry',25832,'GEOMETRY',2); -- POLYGON/MULTIPOLYGON
3762
3763CREATE INDEX ax_klassifizierungnachstrassenrecht_geom_idx   ON ax_klassifizierungnachstrassenrecht USING gist  (wkb_geometry);
3764CREATE UNIQUE INDEX ax_klassifizierungnachstrassenrecht_gml ON ax_klassifizierungnachstrassenrecht USING btree (gml_id,beginnt);
3765
3766COMMENT 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';
3767COMMENT ON COLUMN ax_klassifizierungnachstrassenrecht.gml_id IS 'Identifikator, global eindeutig';
3768
3769
3770-- 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
3771-- ---------------------------------------------------------------
3772CREATE TABLE ax_klassifizierungnachwasserrecht (
3773        ogc_fid                 serial NOT NULL,
3774        gml_id                  character(16),
3775        identifier              character(44),
3776        beginnt                 character(20),
3777        endet                   character(20),
3778        advstandardmodell       varchar,
3779        anlass                  integer,
3780        artderfestlegung        integer,
3781        CONSTRAINT ax_klassifizierungnachwasserrecht_pk PRIMARY KEY (ogc_fid)
3782);
3783
3784SELECT AddGeometryColumn('ax_klassifizierungnachwasserrecht','wkb_geometry',25832,'GEOMETRY',2);
3785
3786CREATE INDEX ax_klassifizierungnachwasserrecht_geom_idx ON ax_klassifizierungnachwasserrecht USING gist (wkb_geometry);
3787
3788COMMENT 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';
3789COMMENT ON COLUMN ax_klassifizierungnachwasserrecht.gml_id IS 'Identifikator, global eindeutig';
3790
3791
3792-- 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
3793-- ---------------------------------------------------------------------
3794-- 'Bau-, Raum- oder Bodenordnungsrecht' ist ein fachlich Ìbergeordnetes Gebiet von FlÀchen
3795-- mit bodenbezogenen BeschrÀnkungen, Belastungen oder anderen Eigenschaften nach öffentlichen Vorschriften.
3796CREATE TABLE ax_bauraumoderbodenordnungsrecht (
3797        ogc_fid                 serial NOT NULL,
3798        gml_id                  character(16),
3799        identifier              character(44),
3800        beginnt                 character(20),
3801        endet                   character(20),
3802        advstandardmodell       varchar,
3803        anlass                  integer,
3804        art                     varchar, -- (15)
3805        "name"                  varchar,
3806        artderfestlegung        integer,
3807        land                    integer,
3808        stelle                  varchar,
3809        bezeichnung             varchar,
3810        CONSTRAINT ax_bauraumoderbodenordnungsrecht_pk PRIMARY KEY (ogc_fid)
3811);
3812
3813SELECT AddGeometryColumn('ax_bauraumoderbodenordnungsrecht','wkb_geometry',25832,'GEOMETRY',2);
3814
3815CREATE INDEX ax_bauraumoderbodenordnungsrecht_geom_idx ON ax_bauraumoderbodenordnungsrecht USING gist (wkb_geometry);
3816CREATE UNIQUE INDEX ax_bauraumoderbodenordnungsrecht_gml ON ax_bauraumoderbodenordnungsrecht USING btree (gml_id,beginnt);
3817
3818COMMENT ON TABLE  ax_bauraumoderbodenordnungsrecht             IS 'REO: Bau-, Raum- oder Bodenordnungsrecht';
3819COMMENT ON COLUMN ax_bauraumoderbodenordnungsrecht.gml_id      IS 'Identifikator, global eindeutig';
3820COMMENT ON COLUMN ax_bauraumoderbodenordnungsrecht.artderfestlegung IS 'ADF';
3821COMMENT ON COLUMN ax_bauraumoderbodenordnungsrecht."name"      IS 'NAM, Eigenname von "Bau-, Raum- oder Bodenordnungsrecht"';
3822COMMENT ON COLUMN ax_bauraumoderbodenordnungsrecht.bezeichnung IS 'BEZ, Amtlich festgelegte VerschlÃŒsselung von "Bau-, Raum- oder Bodenordnungsrecht"';
3823
3824
3825-- S o n s t i g e s   R e c h t
3826-- -----------------------------
3827CREATE TABLE ax_sonstigesrecht (
3828        ogc_fid                 serial NOT NULL,
3829        gml_id                  character(16),
3830        identifier              character(44),
3831        beginnt                 character(20),
3832        endet                   character(20),
3833        advstandardmodell       varchar,
3834        anlass                  integer,
3835        artderfestlegung        integer,
3836        land                    integer,
3837        stelle                  varchar,
3838        bezeichnung             varchar,
3839        characterstring         integer,
3840        art                     varchar,  --(15)
3841        "name"                  varchar,
3842--      "qualitaetsangaben|ax_dqmitdatenerhebung|herkunft|li_lineage|pro" varchar,
3843--      datetime                varchar,
3844        CONSTRAINT ax_sonstigesrecht_pk PRIMARY KEY (ogc_fid)
3845);
3846
3847SELECT AddGeometryColumn('ax_sonstigesrecht','wkb_geometry',25832,'GEOMETRY',2);
3848
3849CREATE INDEX ax_sonstigesrecht_geom_idx ON ax_sonstigesrecht USING gist (wkb_geometry);
3850CREATE UNIQUE INDEX ax_sonstigesrecht_gml ON ax_sonstigesrecht USING btree (gml_id,beginnt);
3851
3852COMMENT ON TABLE  ax_sonstigesrecht        IS 'S o n s t i g e s   R e c h t';
3853COMMENT ON COLUMN ax_sonstigesrecht.gml_id IS 'Identifikator, global eindeutig';
3854
3855
3856--** Objektartengruppe: BodenschÀtzung, Bewertung
3857--   ===================================================================
3858
3859
3860-- B o d e n s c h a e t z u n g
3861-- ----------------------------------------------
3862CREATE TABLE ax_bodenschaetzung (
3863        ogc_fid                         serial NOT NULL,
3864        gml_id                          character(16),
3865        identifier                      character(44),
3866        beginnt                         character(20),
3867        endet                           character(20),
3868        advstandardmodell               varchar,
3869        anlass                          integer,
3870        art                             varchar, -- (15)
3871        "name"                          varchar,
3872        kulturart                       integer,
3873        bodenart                        integer,
3874        zustandsstufeoderbodenstufe     integer,
3875        entstehungsartoderklimastufewasserverhaeltnisse integer[], -- veraendert [] 2012-02-03
3876        bodenzahlodergruenlandgrundzahl integer,
3877        ackerzahlodergruenlandzahl      integer,
3878        sonstigeangaben                 integer,
3879        jahreszahl                      integer,
3880        CONSTRAINT ax_bodenschaetzung_pk PRIMARY KEY (ogc_fid)
3881);
3882
3883SELECT AddGeometryColumn('ax_bodenschaetzung','wkb_geometry',25832,'GEOMETRY',2); -- POLYGON/MULTIPOLYGON
3884
3885CREATE INDEX ax_bodenschaetzung_geom_idx ON ax_bodenschaetzung USING gist (wkb_geometry);
3886CREATE UNIQUE INDEX ax_bodenschaetzung_gml ON ax_bodenschaetzung USING btree (gml_id,beginnt);
3887
3888COMMENT ON TABLE  ax_bodenschaetzung        IS 'B o d e n s c h a e t z u n g';
3889COMMENT ON COLUMN ax_bodenschaetzung.gml_id IS 'Identifikator, global eindeutig';
3890
3891
3892-- M u s t e r -,  L a n d e s m u s t e r -   u n d   V e r g l e i c h s s t u e c k
3893-- -----------------------------------------------------------------------------------
3894CREATE TABLE ax_musterlandesmusterundvergleichsstueck (
3895        ogc_fid                         serial NOT NULL,
3896        gml_id                          character(16),
3897        identifier                      character(44),
3898        beginnt                         character(20),
3899        endet                           character(20),
3900        advstandardmodell               varchar,
3901        anlass                          integer,
3902        merkmal                         integer,
3903        nummer                          integer,
3904        kulturart                       integer,
3905        bodenart                        integer,
3906        zustandsstufeoderbodenstufe     integer,
3907        entstehungsartoderklimastufewasserverhaeltnisse integer,
3908        bodenzahlodergruenlandgrundzahl integer,
3909        ackerzahlodergruenlandzahl      integer,
3910        art                             varchar,  -- (15)
3911        "name"                          varchar,
3912        CONSTRAINT ax_musterlandesmusterundvergleichsstueck_pk PRIMARY KEY (ogc_fid)
3913);
3914
3915
3916SELECT AddGeometryColumn('ax_musterlandesmusterundvergleichsstueck','wkb_geometry',25832,'GEOMETRY',2); -- POLYGON/POINT
3917
3918CREATE INDEX ax_musterlandesmusterundvergleichsstueck_geom_idx ON ax_musterlandesmusterundvergleichsstueck USING gist (wkb_geometry);
3919CREATE UNIQUE INDEX ax_musterlandesmusterundvergleichsstueck_gml ON ax_musterlandesmusterundvergleichsstueck USING btree (gml_id,beginnt);
3920
3921COMMENT ON TABLE  ax_musterlandesmusterundvergleichsstueck        IS 'Muster-, Landesmuster- und Vergleichsstueck';
3922COMMENT ON COLUMN ax_musterlandesmusterundvergleichsstueck.gml_id IS 'Identifikator, global eindeutig';
3923
3924
3925--** Objektartengruppe: Kataloge
3926--   ===================================================================
3927
3928
3929-- B u n d e s l a n d
3930-- ----------------------------------------------
3931CREATE TABLE ax_bundesland (
3932        ogc_fid                 serial NOT NULL,
3933        gml_id                  character(16),
3934        identifier              character(44),
3935        beginnt                 character(20),
3936        endet                   character(20),
3937        advstandardmodell       varchar,
3938        anlass                  integer,
3939        schluesselgesamt        integer,
3940        bezeichnung             varchar, --(22)
3941        land                    integer,
3942        CONSTRAINT ax_bundesland_pk PRIMARY KEY (ogc_fid)
3943);
3944
3945SELECT AddGeometryColumn('ax_bundesland','dummy',25832,'POINT',2);
3946
3947CREATE UNIQUE INDEX ax_bundesland_gml ON ax_bundesland USING btree (gml_id,beginnt);
3948
3949COMMENT ON TABLE  ax_bundesland        IS 'B u n d e s l a n d';
3950COMMENT ON COLUMN ax_bundesland.gml_id IS 'Identifikator, global eindeutig';
3951
3952
3953-- R e g i e r u n g s b e z i r k
3954-- ----------------------------------------------
3955CREATE TABLE ax_regierungsbezirk (
3956        ogc_fid                         serial NOT NULL,
3957        gml_id                          character(16),
3958        identifier                      character(44),
3959        beginnt                         character(20),
3960        endet                           character(20),
3961        advstandardmodell               varchar,
3962        anlass                          integer,
3963        schluesselgesamt                integer,
3964        bezeichnung                     varchar,
3965        land                            integer,
3966        regierungsbezirk                integer,
3967        CONSTRAINT ax_regierungsbezirk_pk PRIMARY KEY (ogc_fid)
3968);
3969
3970SELECT AddGeometryColumn('ax_regierungsbezirk','dummy',25832,'POINT',2);
3971
3972-- Verbindungstabellen indizieren
3973CREATE UNIQUE INDEX ax_regierungsbezirk_gml ON ax_regierungsbezirk USING btree (gml_id,beginnt);
3974
3975COMMENT ON TABLE  ax_regierungsbezirk        IS 'R e g i e r u n g s b e z i r k';
3976COMMENT ON COLUMN ax_regierungsbezirk.gml_id IS 'Identifikator, global eindeutig';
3977
3978
3979--AX_KreisRegion GeÀndert (Revisionsnummer: 1658)
3980
3981-- K r e i s   /   R e g i o n
3982-- ---------------------------
3983CREATE TABLE ax_kreisregion (
3984        ogc_fid                         serial NOT NULL,
3985        gml_id                          character(16),
3986        identifier                      character(44),
3987        beginnt                         character(20),
3988        endet                           character(20),
3989        advstandardmodell               varchar,
3990        anlass                          integer,
3991        schluesselgesamt                integer,
3992        bezeichnung                     varchar,
3993        land                            integer,
3994        regierungsbezirk                integer,
3995        kreis                           integer,
3996        CONSTRAINT ax_kreisregion_pk PRIMARY KEY (ogc_fid)
3997);
3998
3999SELECT AddGeometryColumn('ax_kreisregion','dummy',25832,'POINT',2);
4000
4001CREATE UNIQUE INDEX ax_kreisregion_gml ON ax_kreisregion USING btree (gml_id,beginnt);
4002
4003COMMENT ON TABLE  ax_kreisregion        IS 'K r e i s  /  R e g i o n';
4004COMMENT ON COLUMN ax_kreisregion.gml_id IS 'Identifikator, global eindeutig';
4005
4006
4007-- G e m e i n d e
4008-- ----------------------------------------------
4009CREATE TABLE ax_gemeinde (
4010        ogc_fid                 serial NOT NULL,
4011        gml_id                  character(16),
4012        identifier              character(44),
4013        beginnt                 character(20),
4014        endet                   character(20),
4015        advstandardmodell       varchar,
4016        anlass                  integer,
4017        schluesselgesamt        integer,
4018        bezeichnung             varchar,
4019        land                    integer,
4020        regierungsbezirk        integer,
4021        kreis                   integer,
4022        gemeinde                integer,
4023        CONSTRAINT ax_gemeinde_pk PRIMARY KEY (ogc_fid)
4024);
4025
4026SELECT AddGeometryColumn('ax_gemeinde','dummy',25832,'POINT',2);
4027
4028-- Index fÃŒr alkis_beziehungen
4029CREATE UNIQUE INDEX ax_gemeinde_gml ON ax_gemeinde USING btree (gml_id,beginnt);
4030
4031COMMENT ON TABLE  ax_gemeinde        IS 'G e m e i n d e';
4032COMMENT ON COLUMN ax_gemeinde.gml_id IS 'Identifikator, global eindeutig';
4033
4034
4035-- G e m e i n d e t e i l
4036-- -----------------------------------------
4037CREATE TABLE ax_gemeindeteil (
4038        ogc_fid                 serial NOT NULL,
4039        gml_id                  character(16),
4040        identifier              character(44),
4041        beginnt                 character(20),
4042        endet                   character(20),
4043        advstandardmodell       varchar,
4044        anlass                  integer,
4045        schluesselgesamt        double precision,
4046        bezeichnung             varchar,
4047        administrativefunktion  integer,
4048        land                    integer,
4049        regierungsbezirk        integer,
4050        kreis                   integer,
4051        gemeinde                integer,
4052        gemeindeteil            integer,
4053        CONSTRAINT ax_gemeindeteil_pk PRIMARY KEY (ogc_fid)
4054);
4055
4056SELECT AddGeometryColumn('ax_gemeindeteil','dummy',25832,'POINT',2);
4057
4058-- Index fÃŒr alkis_beziehungen
4059CREATE UNIQUE INDEX ax_gemeindeteil_gml ON ax_gemeindeteil USING btree (gml_id,beginnt);
4060
4061COMMENT ON TABLE  ax_gemeindeteil        IS 'G e m e i n d e - T e i l';
4062COMMENT ON COLUMN ax_gemeindeteil.gml_id IS 'Identifikator, global eindeutig';
4063
4064
4065-- G e m a r k u n g
4066-- ----------------------------------------------
4067-- NREO, nur Schluesseltabelle: Geometrie entbehrlich
4068CREATE TABLE ax_gemarkung (
4069        ogc_fid                 serial NOT NULL,
4070        gml_id                  character(16),
4071        identifier              character(44),
4072        beginnt                 character(20),
4073        endet                   character(20),
4074        advstandardmodell       varchar,
4075        anlass                  integer,
4076        schluesselgesamt        integer,
4077        bezeichnung             varchar,
4078        land                    integer,
4079        gemarkungsnummer        integer,  -- Key
4080--      "istamtsbezirkvon|ax_dienststelle_schluessel|land" integer,
4081        stelle                  integer,
4082        CONSTRAINT ax_gemarkung_pk PRIMARY KEY (ogc_fid)
4083);
4084
4085SELECT AddGeometryColumn('ax_gemarkung','dummy',25832,'POINT',2);
4086
4087CREATE UNIQUE INDEX ax_gemarkung_gml ON ax_gemarkung USING btree (gml_id,beginnt);         -- Index fÃŒr alkis_beziehungen
4088CREATE INDEX ax_gemarkung_nr         ON ax_gemarkung USING btree (land, gemarkungsnummer); -- Such-Index, Verweis aus ax_Flurstueck
4089
4090COMMENT ON TABLE  ax_gemarkung        IS 'G e m a r k u n g';
4091COMMENT ON COLUMN ax_gemarkung.gml_id IS 'Identifikator, global eindeutig';
4092
4093
4094-- G e m a r k u n g s t e i l   /   F l u r
4095-- ----------------------------------------------
4096-- Schluesseltabelle: Geometrie entbehrlich
4097CREATE TABLE ax_gemarkungsteilflur (
4098        ogc_fid                 serial NOT NULL,
4099        gml_id                  character(16),
4100        identifier              character(44),
4101        beginnt                 character(20),
4102        endet                   character(20),
4103        advstandardmodell       varchar,
4104        anlass                  integer,
4105        schluesselgesamt        integer,
4106        bezeichnung             varchar, -- integer,
4107        land                    integer,
4108        gemarkung               integer,
4109        gemarkungsteilflur      integer,
4110        CONSTRAINT ax_gemarkungsteilflur_pk PRIMARY KEY (ogc_fid)
4111);
4112
4113SELECT AddGeometryColumn('ax_gemarkungsteilflur','dummy',25832,'POINT',2);
4114
4115-- Index fÃŒr alkis_beziehungen
4116CREATE UNIQUE INDEX ax_gemarkungsteilflur_gml ON ax_gemarkungsteilflur USING btree (gml_id,beginnt);
4117
4118COMMENT ON TABLE  ax_gemarkungsteilflur        IS 'G e m a r k u n g s t e i l   /   F l u r';
4119COMMENT ON COLUMN ax_gemarkungsteilflur.gml_id IS 'Identifikator, global eindeutig';
4120
4121
4122-- B u c h u n g s b l a t t - B e z i r k
4123-- ----------------------------------------------
4124CREATE TABLE ax_buchungsblattbezirk (
4125        ogc_fid                 serial NOT NULL,
4126        gml_id                  character(16),
4127        identifier              character(44),
4128        beginnt                 character(20),
4129        endet                   character(20),
4130        advstandardmodell       varchar,
4131        anlass                  integer,
4132        schluesselgesamt        integer,
4133        bezeichnung             varchar,
4134        land                    integer,
4135        bezirk                  integer,
4136--      "gehoertzu|ax_dienststelle_schluessel|land" integer,
4137        stelle                  varchar,
4138        CONSTRAINT ax_buchungsblattbezirk_pk PRIMARY KEY (ogc_fid)
4139);
4140
4141SELECT AddGeometryColumn('ax_buchungsblattbezirk','dummy',25832,'POINT',2);
4142
4143CREATE UNIQUE INDEX ax_buchungsblattbezirk_gml ON ax_buchungsblattbezirk USING btree (gml_id,beginnt);
4144
4145-- Such-Index auf Land + Bezirk
4146-- Der Verweis von ax_buchungsblatt hat keine alkis_beziehung.
4147CREATE INDEX ax_buchungsblattbez_key ON ax_buchungsblattbezirk USING btree (land, bezirk);
4148
4149COMMENT ON TABLE  ax_buchungsblattbezirk        IS 'Buchungsblatt- B e z i r k';
4150COMMENT ON COLUMN ax_buchungsblattbezirk.gml_id IS 'Identifikator, global eindeutig';
4151
4152
4153-- D i e n s t s t e l l e
4154-- ----------------------------------------------
4155-- NREO, nur Schluesseltabelle: Geometrie entbehrlich
4156CREATE TABLE ax_dienststelle (
4157        ogc_fid                 serial NOT NULL,
4158        gml_id                  character(16),
4159        identifier              character(44),
4160        beginnt                 character(20),
4161        endet                   character(20),
4162        advstandardmodell       varchar,
4163        sonstigesmodell         varchar,
4164        anlass                  integer,
4165        schluesselgesamt        varchar,
4166        bezeichnung             varchar, -- 102
4167        land                    integer,
4168        stelle                  varchar,
4169        stellenart              integer,
4170        -- hat character        varying,
4171        CONSTRAINT ax_dienststelle_pk PRIMARY KEY (ogc_fid)
4172);
4173
4174SELECT AddGeometryColumn('ax_dienststelle','dummy',25832,'POINT',2);
4175
4176-- Index fÃŒr alkis_beziehungen
4177CREATE UNIQUE INDEX ax_dienststelle_gml ON ax_dienststelle USING btree (gml_id,beginnt);
4178
4179COMMENT ON TABLE  ax_dienststelle        IS 'D i e n s t s t e l l e';
4180COMMENT ON COLUMN ax_dienststelle.gml_id IS 'Identifikator, global eindeutig';
4181
4182
4183-- L a g e b e z e i c h n u n g s - K a t a l o g e i n t r a g
4184-- --------------------------------------------------------------
4185CREATE TABLE ax_lagebezeichnungkatalogeintrag (
4186        ogc_fid                 serial NOT NULL,
4187        gml_id                  character(16),
4188        identifier              character(44),
4189        beginnt                 character(20),
4190        endet                   character(20),
4191        advstandardmodell       varchar,
4192        anlass                  integer,
4193        schluesselgesamt        varchar,
4194        bezeichnung             varchar,
4195        land                    integer,
4196        regierungsbezirk        integer,
4197        kreis                   integer,
4198        gemeinde                integer,
4199        lage                    varchar,
4200        CONSTRAINT ax_lagebezeichnungkatalogeintrag_pk PRIMARY KEY (ogc_fid)
4201);
4202
4203SELECT AddGeometryColumn('ax_lagebezeichnungkatalogeintrag','dummy',25832,'POINT',2);
4204
4205CREATE UNIQUE INDEX ax_lagebezeichnungkatalogeintrag_gml ON ax_lagebezeichnungkatalogeintrag USING btree (gml_id,beginnt);
4206
4207-- NRW: Nummerierung Strassenschluessel innerhalb einer Gemeinde
4208-- Die Kombination Gemeinde und StraßenschlÃŒssel ist also ein eindeutiges Suchkriterium.
4209CREATE INDEX ax_lagebezeichnungkatalogeintrag_lage ON ax_lagebezeichnungkatalogeintrag USING btree (gemeinde, lage);
4210
4211-- Suchindex (Verwendung in Navigations-Programm)
4212CREATE INDEX ax_lagebezeichnungkatalogeintrag_gesa ON ax_lagebezeichnungkatalogeintrag USING btree (schluesselgesamt);
4213CREATE INDEX ax_lagebezeichnungkatalogeintrag_bez  ON ax_lagebezeichnungkatalogeintrag USING btree (bezeichnung);
4214
4215COMMENT ON TABLE  ax_lagebezeichnungkatalogeintrag              IS 'Straßentabelle';
4216COMMENT ON COLUMN ax_lagebezeichnungkatalogeintrag.gml_id       IS 'Identifikator, global eindeutig';
4217COMMENT ON COLUMN ax_lagebezeichnungkatalogeintrag.lage         IS 'StraßenschlÃŒssel';
4218COMMENT ON COLUMN ax_lagebezeichnungkatalogeintrag.bezeichnung  IS 'Straßenname';
4219
4220
4221--** Objektartengruppe: Geographische Gebietseinheiten
4222--   ===================================================================
4223
4224-- k l e i n r a e u m i g e r   L a n d s c h a f t s t e i l
4225-- -----------------------------------------------------------
4226CREATE TABLE ax_kleinraeumigerlandschaftsteil (
4227        ogc_fid                 serial NOT NULL,
4228        gml_id                  character(16),
4229        beginnt                 character(20),
4230        endet                   character(20),
4231        advstandardmodell       varchar,
4232        sonstigesmodell         varchar[],
4233        anlass                  integer,
4234        landschaftstyp          integer,
4235        name                    varchar
4236);
4237
4238SELECT AddGeometryColumn('ax_kleinraeumigerlandschaftsteil','wkb_geometry',25832,'POINT',2);
4239
4240CREATE INDEX ax_kleinraeumigerlandschaftsteil_geom_idx   ON ax_kleinraeumigerlandschaftsteil USING gist (wkb_geometry);
4241CREATE UNIQUE INDEX ax_kleinraeumigerlandschaftsteil_gml ON ax_kleinraeumigerlandschaftsteil USING btree (gml_id,beginnt);
4242
4243COMMENT ON TABLE  ax_kleinraeumigerlandschaftsteil        IS 'k l e i n r a e u m i g e r   L a n d s c h a f t s t e i l';
4244COMMENT ON COLUMN ax_kleinraeumigerlandschaftsteil.gml_id IS 'Identifikator, global eindeutig';
4245
4246
4247-- W o h n p l a t z
4248-- -----------------------------------------------------------
4249CREATE TABLE ax_wohnplatz (
4250        ogc_fid                 serial NOT NULL,
4251        gml_id                  character(16),
4252        identifier              character(44),
4253        beginnt                 character(20),
4254        endet                   character(20),
4255        advstandardmodell       varchar,
4256        anlass                  integer,
4257        "name"                  varchar,
4258        CONSTRAINT ax_wohnplatz_pk PRIMARY KEY (ogc_fid)
4259);
4260
4261SELECT AddGeometryColumn('ax_wohnplatz','wkb_geometry',25832,'POINT',2);
4262
4263CREATE INDEX ax_wohnplatz_geom_idx   ON ax_wohnplatz USING gist (wkb_geometry);
4264CREATE UNIQUE INDEX ax_wohnplatz_gml ON ax_wohnplatz USING btree (gml_id,beginnt);
4265
4266COMMENT ON TABLE  ax_wohnplatz        IS 'W o h n p l a t z';
4267COMMENT ON COLUMN ax_wohnplatz.gml_id IS 'Identifikator, global eindeutig';
4268
4269
4270--** Objektartengruppe: Administrative Gebietseinheiten
4271--   ===================================================================
4272
4273
4274-- K o m m u n a l e s   G e b i e t
4275-- ----------------------------------------------
4276CREATE TABLE ax_kommunalesgebiet (
4277        ogc_fid                 serial NOT NULL,
4278        gml_id                  character(16),
4279        identifier              character(44),
4280        beginnt                 character(20),
4281        endet                   character(20),
4282        advstandardmodell       varchar,
4283        anlass                  integer,
4284        schluesselgesamt        integer,
4285        land                    integer,
4286        regierungsbezirk        integer,
4287        kreis                   integer,
4288        gemeinde                integer,
4289        CONSTRAINT ax_kommunalesgebiet_pk PRIMARY KEY (ogc_fid)
4290);
4291
4292SELECT AddGeometryColumn('ax_kommunalesgebiet','wkb_geometry',25832,'GEOMETRY',2);
4293
4294CREATE INDEX ax_kommunalesgebiet_geom_idx   ON ax_kommunalesgebiet USING gist (wkb_geometry);
4295CREATE UNIQUE INDEX ax_kommunalesgebiet_gml ON ax_kommunalesgebiet USING btree (gml_id,beginnt);
4296
4297COMMENT ON TABLE  ax_kommunalesgebiet        IS 'K o m m u n a l e s   G e b i e t';
4298COMMENT ON COLUMN ax_kommunalesgebiet.gml_id IS 'Identifikator, global eindeutig';
4299
4300
4301--AX_Gebiet
4302-- ** Tabelle bisher noch nicht generiert
4303
4304
4305--*** ############################################################
4306--*** Objektbereich: Nutzerprofile
4307--*** ############################################################
4308
4309--** Objektartengruppe: Nutzerprofile
4310--   ===================================================================
4311
4312--AX_FOLGEVA
4313
4314--*** ############################################################
4315--*** Objektbereich: Migration
4316--*** ############################################################
4317
4318--** Objektartengruppe: Migrationsobjekte
4319--   ===================================================================
4320
4321
4322-- SchlÃŒsseltabelle "advstandardmodell" (9):
4323-- ----------------------------------------
4324-- LiegenschaftskatasterModell = DLKM
4325-- KatasterkartenModell500     = DKKM500
4326-- KatasterkartenModell1000    = DKKM1000
4327-- KatasterkartenModell2000    = DKKM2000
4328-- KatasterkartenModell5000    = DKKM5000
4329-- BasisLandschaftsModell      = Basis-DLM
4330-- LandschaftsModell50         = DLM50
4331-- LandschaftsModell250        = DLM250
4332-- LandschaftsModell1000       = DLM1000
4333-- TopographischeKarte10       = DTK10
4334-- TopographischeKarte25       = DTK25
4335-- TopographischeKarte50       = DTK50
4336-- TopographischeKarte100      = DTK100
4337-- TopographischeKarte250      = DTK250
4338-- TopographischeKarte1000     = DTK1000
4339-- Festpunktmodell             = DFGM
4340-- DigitalesGelaendemodell2    = DGM2
4341-- DigitalesGelaendemodell5    = DGM5
4342-- DigitalesGelaendemodell25   = DGM25
4343-- Digitales Gelaendemodell50  = DGM50
4344
4345
4346-- wenn schon, dann auch alle Tabellen mit Kommentaren versehen:
4347-- COMMENT ON TABLE geometry_columns IS 'Metatabelle der Geometrie-Tabellen, Tabellen ohne Geometrie bekommen Dummy-Eintrag fÃŒr PostNAS-Konverter (GDAL/OGR)';
4348-- COMMENT ON TABLE spatial_ref_sys  IS 'Koordinatensysteme und ihre Projektionssparameter';
4349
4350
4351-- Schema aktualisieren (setzt auch die Indizes neu)
4352-- SELECT alkis_update_schema();
4353
4354
4355-- In allen Tabellen die Objekte Löschen, die ein Ende-Datum haben
4356-- SELECT alkis_delete_all_endet();
4357
4358--
4359--          THE  (happy)  END
4360--
Note: See TracBrowser for help on using the repository browser.