Index: trunk/import/norgis_alkis_pp/postprocessing_mapdatei_demo.sql
===================================================================
--- trunk/import/norgis_alkis_pp/postprocessing_mapdatei_demo.sql	(revision 366)
+++ trunk/import/norgis_alkis_pp/postprocessing_mapdatei_demo.sql	(revision 366)
@@ -0,0 +1,4315 @@
+
+-- ALKIS PostNAS 0.8
+
+-- ======================================================
+-- Zusammenfassung der Tabellen der tatsÃ€chlichen Nutzung
+-- ======================================================
+
+-- Um bei einer Feature.Info (Welche Nutzung an dieser Stelle?) 
+-- oder einer Verschneidung (Welche Nutzungen auf dem FlurstÃŒck?) 
+-- nicht 26 verschiedene Tabellen abfragen zu mÃŒssen, werden die wichtigsten 
+-- Felder dieser Tabellen zusammen gefasst.
+
+-- Teil 1: Anlegen der Tabellen
+-- Variable fÃŒr das Koordinatensystem ÃŒbergeben mit "psql .. -v alkis_epsg=":alkis_epsg"
+
+-- Stand 
+
+--  2012-02-10 PostNAS 0.7, Umbenennung
+--  2013-11-15 In nutzung_class.class kÃ¶nnen NULL-Werte auftreten.
+--  2013-11-26 NULL wird durch Zahl "0" ersetzt, "NOT NULL" wieder aktivieren
+--  2014-08-26 erweiterte gml_id (wie in den primÃ€ren Tabellen)
+--  2014-11-25 Version geaendert auf 0.8, EPSG Ãbergabe in Tabelle Nutzung
+--  2015-03-10 Massenhaft "ST_CurvePolygon" in "nutzung".
+--             Quick 'n dirty: EinschrÃ€nkung des geometry-Typ lÃ¶schen.
+
+
+SET client_encoding = 'UTF-8';
+
+-- Alles auf Anfang!
+/*
+  DROP TABLE nutzung;
+  DROP TABLE nutzung_class;
+  DROP TABLE nutzung_meta;
+*/
+
+-- Meta-Informationen ueber die Zusammenfassung und Gruppierung
+-- ------------------------------------------------------------
+CREATE TABLE nutzung_meta (
+	nutz_id           integer NOT NULL,
+	gruppe            character varying(30),
+	source_table      character varying(50),
+	title             character varying(50),
+	fldclass          character varying(30),
+	fldinfo           character varying(30),
+	CONSTRAINT nutzung_meta_pk PRIMARY KEY (nutz_id)
+);
+
+COMMENT ON TABLE  nutzung_meta                IS 'Gruppierung und Indizierung der zusammen gefassten Nutzungsarten in der Tabelle "nutzung".';
+COMMENT ON COLUMN nutzung_meta.nutz_id        IS 'Index fuer die Quell-Tabelle bei der Zusammenfassung in der Tabelle "nutzung".';
+COMMENT ON COLUMN nutzung_meta.source_table   IS 'Name der importierten Tabelle aus PostNAS.';
+COMMENT ON COLUMN nutzung_meta.gruppe         IS 'Objektartengruppe, Gruppierung der Nutzungsart.';
+COMMENT ON COLUMN nutzung_meta.title          IS 'Vorzeigbare Bezeichnung der Nutzungsartentabelle.';
+COMMENT ON COLUMN nutzung_meta.fldclass       IS 'Name des Feldes aus "source_table", das in Feld "nutzung.class" kopiert wird.';
+COMMENT ON COLUMN nutzung_meta.fldinfo        IS 'Name des Feldes aus "source_table", das in Feld "nutzung.info" kopiert wird.';
+
+
+-- Alle Abschnitte der "tatsÃ€chlichen Nutzung" vereinigt in einer Tabelle 
+-- Sie sind dann mit einem gemeinsamen Geometrie-Index mit einer SQL-Abfrage auffindbar.
+-- Dies ist die fÃ¶rderlich fÃŒr eine performante Auskunft.
+
+CREATE TABLE nutzung (
+	gml_id		     character varying NOT NULL,
+	beginnt		     character(20),	     -- mehrfache gml_id eindeutig machen
+--   endet               character(20),      -- nur "ended IS NULL" kopieren
+	nutz_id		     integer,
+	class		     integer NOT NULL,   -- NULL-Werte der Quelltabelle durch den num. Wert 0 ersetzen
+	info		          integer,
+	zustand		     integer,
+	"name"		     character varying,
+	bezeichnung	     character varying,
+	CONSTRAINT nutzung_pk      PRIMARY KEY (gml_id, beginnt),
+	CONSTRAINT nutzung_meta_id FOREIGN KEY (nutz_id)
+		REFERENCES nutzung_meta (nutz_id) MATCH SIMPLE
+		ON UPDATE NO ACTION ON DELETE CASCADE
+)
+WITH (OIDS=FALSE);
+
+
+SELECT AddGeometryColumn('nutzung','wkb_geometry',:alkis_epsg,'POLYGON',2);
+-- Vereinzelt auch vorkommende MULTIPOLYGON
+-- 2015-03-10: Massenhaft "ST_CurvePolygon"
+--ALTER TABLE nutzung DROP CONSTRAINT enforce_geotype_wkb_geometry;
+-- 2015-03-16 diese wieder rÃŒckgÃ€ngig, statt dessen Parameter beim Konverter-Aufruf.
+
+-- 'class' ist nur innerhalb einer Gruppe ein sinvoller Index
+CREATE INDEX idx_nutz_cls  ON nutzung USING btree (nutz_id, class);
+
+-- Geometrischer Index fÃŒr die rÃ€umliche Suche
+CREATE INDEX nutzung_geom_idx ON nutzung USING gist (wkb_geometry);
+
+COMMENT ON TABLE  nutzung             IS 'Zusammenfassung von 26 Tabellen des Objektbereiches "TatsÃ€chliche Nutzung".';
+COMMENT ON COLUMN nutzung.gml_id      IS 'Identifikator, global eindeutig';
+COMMENT ON COLUMN nutzung.nutz_id     IS 'Index fuer die Quell-Tabelle bei der Zusammenfassung in der Tabelle "nutzung".';
+COMMENT ON COLUMN nutzung.class       IS 'Klassifizierung innerhalb der Nutzung. Aus verschiedenen Feldern importiert. Siehe "nutzung_meta.fldclass".';
+COMMENT ON COLUMN nutzung.info        IS 'Weitere verschlÃŒsselte Information zur Nutzung. Aus verschiedenen Feldern importiert. Siehe "nutzung_meta.fldinfo".';
+COMMENT ON COLUMN nutzung.name        IS 'NAM Eigenname';
+COMMENT ON COLUMN nutzung.bezeichnung IS 'weitere unverschlÃŒsselte Information wie Zweitname, Bezeichnung, fachliche Nummerierung usw.';
+COMMENT ON COLUMN nutzung.zustand     IS 'ZUS "Zustand" beschreibt, ob der Abschnitt ungenutzt ist.';
+
+
+-- Schluesseltabelle: classes innerhalb einer Nutzungsart.
+-- Wird nicht aus NAS geladen sondern durch das manuell zu pflegende Script "nutzungsart_metadaten.sql"
+CREATE TABLE nutzung_class (
+	nutz_id       integer NOT NULL,
+	class         integer, --  NOT NULL,
+	label         character varying(100),
+	blabla        character varying(1000),
+    CONSTRAINT nutzung_class_pk PRIMARY KEY (nutz_id, class),
+	CONSTRAINT nutzung_class_id FOREIGN KEY (nutz_id)
+		REFERENCES nutzung_meta (nutz_id) MATCH SIMPLE
+		ON UPDATE NO ACTION ON DELETE CASCADE
+);
+
+  COMMENT ON TABLE  nutzung_class            IS 'SchlÃŒsseltabelle. Feinere Klassifizierung der zusammen gefassten Nutzungsarten.';
+  COMMENT ON COLUMN nutzung_class.nutz_id    IS 'Index fuer die Quell-Tabelle bei der Zusammenfassung in der Tabelle nutzung.';
+  COMMENT ON COLUMN nutzung_class.class      IS 'Key, SchlÃŒsselwert oder NULL';
+  COMMENT ON COLUMN nutzung_class.label      IS 'EntschlÃŒsselung. Art der Nutzung, Dies Feld soll in der Auskunft angezeigt werden.';
+  COMMENT ON COLUMN nutzung_class.blabla     IS 'Weitere ErlÃ€uterungen und Definitionen dazu.';
+
+
+-- Fehlersuche nach GDAL Patch #5444:
+-- Da nun gml_id nicht mehr PRIMARY KEY der Ausgangstabellen ist , kommt es auch zu Doppelbelegungen der Zusammenfassung.
+-- Diese FÃ€lle suchen.
+CREATE OR REPLACE VIEW nutzung_mehrfache_gml AS
+	SELECT a.gml_id, a.nutz_id, a.beginnt as beginnt1, b.beginnt as beginnt2
+	FROM nutzung a 
+	JOIN nutzung b ON a.gml_id = b.gml_id
+	WHERE a.beginnt < b.beginnt
+	--LIMIT 100
+	;
+
+-- Vorkommende Geometry-Typen
+
+--  SELECT a.gml_id, st_geometrytype(a.wkb_geometry) as geomtype ,a.artderbebauung, a.zustand, a.name, a.beginnt
+--  FROM ax_wohnbauflaeche a WHERE geometrytype(wkb_geometry) <> 'POLYGON';
+
+--  SELECT a.gml_id, st_geometrytype(a.wkb_geometry) as geomtype ,a.artderbebauung, a.zustand, a.name, a.beginnt
+--  FROM ax_wohnbauflaeche a WHERE geometrytype(wkb_geometry) <> 'POLYGON';
+
+-- Ergebnis:    Ein MULTIPOLYGON
+-- Konsequenz:  nur Polygone kopieren.
+
+-- END --
+
+
+
+-- ALKIS PostNAS 0.7
+
+-- ======================================================
+-- Zusammenfassung der Tabellen der tatsÃ€chlichen Nutzung
+-- ======================================================
+
+-- Um bei einer Feature.Info (Welche Nutzung an dieser Stelle?) 
+-- oder einer Verschneidung (Welche Nutzungen auf dem FlurstÃŒck?) 
+-- nicht 26 verschiedene Tabellen abfragen zu mÃŒssen, werden die wichtigsten 
+-- Felder dieser Tabellen zusammen gefasst.
+
+-- Teil 2: Laden der statischen Tabellen mit Metadaten und SchlÃŒsseln (Classes)
+
+-- Stand 
+
+--  2012-02-10 PostNAS 07, Umbenennung
+--  2013-11-18 Auch jeweils einen 0-Wert in "nutzung_class.class" laden fÃŒr die FÃ€lle wo die Quelltabelle ein "IS NULL" enthÃ€lt.
+--             Weitere Werte erfasst.
+
+-- WARNUNG:  Wenn in der Praxis weitere SchlÃŒssel vorkommen, die in dieser Tabelle "nutzung_class" noch nicht 
+--           vorkommen, dann kann das bei Equivalenz-Abfragen (INNER JOIN) dazu fÃŒhren, dass die 
+--           Nutzungsarten-Abschnitte mit den hier fehlenden SchlÃŒsseln ausgelassen werden.
+-- LÃ¶sung: - Bei SQL-Abfragen diese Tabelle mit "LEFT JOIN" verknÃŒpfen.
+--         - Im PostProcessing (pp_) diese Tabelle durch vorkommende SchlÃŒssel aus der der Tabelle "nutzung" ergÃ€nzen.
+
+
+-- DoDo: Sollte die Durchnummerierung der Gruppen (Spalte "nutz_id") ersetzt werden durch
+--       den Wert "Kennung" aus der GeoInfoDok?
+--  http://www.bezreg-koeln.nrw.de/extra/33alkis/dokumente/GeoInfoDok/ALKIS/ALKIS_OK_V6-0.html#_3DFA354A0193
+
+-- Objektartengruppe:Siedlung
+
+-- nutz_id Kennung Name
+
+-- 1       41001 'WohnbauflÃ€che'
+-- 2       41002 'Industrie- und GewerbeflÃ€che'
+-- 3       41003 'Halde'
+-- 4       41004 'Bergbaubetrieb'
+-- 5       41005 'Tagebau, Grube, Steinbruch'
+-- 6       41006 'FlÃ€che gemischter Nutzung'
+-- 7       41007 'FlÃ€che besonderer funktionaler PrÃ€gung'
+-- 8       41008 'Sport-, Freizeit- und ErholungsflÃ€che'
+-- 9       41009 'Friedhof'
+-- ?       41010 'SiedlungsflÃ€che'
+
+-- Objektartengruppe:Verkehr
+
+-- 10      42001 'StraÃenverkehr'
+-- ?       42002 'StraÃe'
+-- ?       42003 'StraÃenachse'
+-- ?       42005 'Fahrbahnachse'
+-- 11      42006 'Weg'
+-- ?       42008 'Fahrwegachse'
+-- 12      42009 'Platz'
+-- 13      42010 'Bahnverkehr'
+-- ?       42014 'Bahnstrecke'
+-- 14      42015 'Flugverkehr'
+-- 15      42016 'Schiffsverkehr'
+
+-- Objektartengruppe:Vegetation
+
+-- 16      43001 'Landwirtschaft'
+-- 17      43002 'Wald'
+-- 18      43003 'GehÃ¶lz'
+-- 19      43004 'Heide'
+-- 20      43005 'Moor'
+-- 21      43006 'Sumpf'
+-- 22      43007 'Unland/Vegetationslose FlÃ€che'
+-- ?       43008 'FlÃ€che zur Zeit unbestimmbar'
+
+-- Objektartengruppe:GewÃ€sser
+
+-- 24      44001 'FlieÃgewÃ€sser'
+-- ?       44002 'Wasserlauf'
+-- ?       44003 'Kanal'
+-- ?       44004 'GewÃ€sserachse'
+-- 25      44005 'Hafenbecken'
+-- 26      44006 'Stehendes GewÃ€sser'
+-- 27      44007 'Meer'
+
+SET client_encoding = 'UTF-8';
+
+
+-- Tabellen  l e e r e n 
+DELETE FROM nutzung_meta;
+DELETE FROM nutzung_class;
+
+
+-- Ãber die Tabelle "nutzung_meta" wird dokumentiert, welche Felder der Ursprungstabellen 
+-- in die Zielfelder "class" und "info" der zusammen gefassten Tabelle "nutzung" geladen werden,
+
+
+-- ****  Objektbereich: TatsÃ€chliche Nutzung  ****
+
+-- ** Objektartengruppe: Siedlung **
+
+-- 01 REO: ax_Wohnbauflaeche
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (1, 'Siedlung','ax_wohnbauflaeche','WohnbauflÃ€che', 'Art der Bebauung', null);
+
+-- Classes (ArtDerBebauung):
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (1,    0, '');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (1, 1000, 'Offen',       '"Offen" beschreibt die Bebauung von "WohnbauflÃ€che", die vorwiegend durch einzelstehende GebÃ€ude charakterisiert wird.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (1, 2000, 'Geschlossen', '"Geschlossen" beschreibt die Bebauung von "WohnbauflÃ€che", die vorwiegend durch zusammenhÃ€ngende GebÃ€ude charakterisiert wird. Die GebÃ€udeabdeckung ist in der Regel >50 Prozent der WohnbauflÃ€che.');
+
+
+-- Zustand: 2 Werte
+-- 2100,'AuÃer Betrieb, stillgelegt, verlassen', '"AuÃer Betrieb, stillgelegt; verlassen" bedeutet, dass sich die FlÃ€che nicht mehr in regelmÃ€Ãiger, der Bestimmung entsprechenden Nutzung befindet.');
+-- 8000,'Erweiterung, Neuansiedlung'
+
+
+-- 02 REO: ax_IndustrieUndGewerbeflaeche
+-- -------------------------------------
+-- Metadaten
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (2, 'Siedlung','ax_industrieundgewerbeflaeche','Industrie- und GewerbeflÃ€che', 'Funktion', null);
+
+-- Classes (Funktion):
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 1700,'Industrie und Gewerbe', '"Industrie und Gewerbe" bezeichnet FlÃ€chen, auf denen vorwiegend Industrie- und Gewerbebetriebe vorhanden sind. Darin sind GebÃ€ude- und FreiflÃ€chen und die BetriebslÃ€che Lagerplatz enthalten.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1710,'Produktion');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1720,'Handwerk');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1730,'Tankstelle');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 1740,'Lagerplatz', '"Lagerplatz" bezeichnet FlÃ€chen, auf denen inner- und auÃerhalb von GebÃ€uden wirtschaftliche GÃŒter gelagert werden.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1750,'Transport');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1760,'Forschung');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1770,'Grundstoff');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1780,'Betriebliche Sozialeinrichtung');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1790,'Werft');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 1400,'Handel und Dienstleistung', '"Handel und Dienstleistung" bezeichnet eine FlÃ€che, auf der vorwiegend GebÃ€ude stehen, in denen Handels- und/oder Dienstleistungsbetriebe ansÃ€ssig sind.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1410,'Verwaltung, freie Berufe');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1420,'Bank, Kredit');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1430,'Versicherung');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1440,'Handel');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 1450,'Ausstellung, Messe', '"Ausstellung, Messe" bezeichnet eine FlÃ€che mit Ausstellungshallen und sonstigen Einrichtungen zur PrÃ€sentation von Warenmustern.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1460,'Beherbergung');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1470,'Restauration');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 1480,'VergnÃŒgung');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 1490,'GÃ€rtnerei', '"GÃ€rtnerei" bezeichnet eine FlÃ€che mit GebÃ€uden, GewÃ€chshÃ€usern und sonstigen Einrichtungen, zur Aufzucht von Blumen und GemÃŒsepflanzen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 2500,'Versorgungsanlage', '"Versorgungsanlage" bezeichnet eine FlÃ€che, auf der vorwiegend Anlagen und GebÃ€ude zur Versorgung der Allgemeinheit mit ElektrizitÃ€t, WÃ€rme und Wasser vorhanden sind.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2501,'GebÃ€ude- und FreiflÃ€che Versorgungsanlage');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2502,'BetriebsflÃ€che Versorgungsanlage');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 2510,'FÃ¶rderanlage', '"FÃ¶rderanlage" bezeichnet eine FlÃ€che mit Einrichtungen zur FÃ¶rderung von ErdÃ¶l, Erdgas, Sole, KohlensÃ€ure oder ErdwÃ€rme aus dem Erdinneren.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 2520,'Wasserwerk', '"Wasserwerk" bezeichnet eine FlÃ€che mit Bauwerken und sonstigen Einrichtungen zur Gewinnung und/ oder zur Aufbereitung von (Trink-)wasser.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2521,'GebÃ€ude- und FreiflÃ€che Versorgungsanlage, Wasser');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2522,'BetriebsflÃ€che Versorgungsanlage, Wasser');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 2530,'Kraftwerk', '"Kraftwerk" bezeichnet eine FlÃ€che mit Bauwerken und sonstigen Einrichtungen zur Erzeugung von elektrischer Energie.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2531,'GebÃ€ude- und FreiflÃ€che Versorgungsanlage, ElektrizitÃ€t');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2532,'BetriebsflÃ€che Versorgungsanlage, ElektrizitÃ€t');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 2540,'Umspannstation', '"Umspannstation" bezeichnet eine FlÃ€che mit GebÃ€uden und sonstigen Einrichtungen, um Strom auf eine andere Spannungsebene zu transformieren.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 2550,'Raffinerie', '"Raffinerie" bezeichnet eine FlÃ€che mit Bauwerken und sonstigen Einrichtungen zur Aufbereitung von ErdÃ¶l.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2551,'GebÃ€ude- und FreiflÃ€che Versorgungsanlage, Ãl');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2552,'BetriebsflÃ€che Versorganlage, Ãl');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2560,'Gaswerk');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2561,'GebÃ€ude- und FreiflÃ€che Versorgungsanlage, Gas');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2562,'BetriebsflÃ€che Versorgungsanlage, Gas');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 2570,'Heizwerk', '"Heizwerk" bezeichnet eine FlÃ€che mit Bauwerken und sonstigen Einrichtungen zur Erzeugung von WÃ€rmeenergie zu Heizzwecken.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2571,'GebÃ€ude- und FreiflÃ€che Versorgungsanlage, WÃ€rme');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2572,'BetriebsflÃ€che Versorgungsanlage, WÃ€rme');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 2580,'Funk- und Fernmeldeanlage', '"Funk- und Fernmeldeanlage" bezeichnet eine FlÃ€che, auf der vorwiegend Anlagen und GebÃ€ude zur elektronischen Informationenvermittlung stehen.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2581,'GebÃ€ude- und FreiflÃ€che Versorgungsanlage, Funk- und Fernmeldewesen');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2582,'BetriebsflÃ€che Versorgungsanlage, Funk- und Fernmeldewesen');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 2600,'Entsorgung', '"Entsorgung" bezeichnet eine FlÃ€che, auf der vorwiegend Anlagen und GebÃ€ude zur Verwertung und Entsorgung von Abwasser und festen Abfallstoffen vorhanden sind.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2601,'GebÃ€ude- und FreiflÃ€che Entsorgungsanlage');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2602,'BetriebsflÃ€che Entsorgungsanlage');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 2610,'KlÃ€ranlage, KlÃ€rwerk', '"KlÃ€ranlage, KlÃ€rwerk" bezeichnet eine FlÃ€che mit Bauwerken und sonstigen Einrichtungen zur Reinigung von Abwasser.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2611,'GebÃ€ude- und FreiflÃ€che Entsorgungsanlage, Abwasserbeseitigung');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2612,'BetriebsflÃ€che Entsorgungsanlage, Abwasserbeseitigung');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 2620,'Abfallbehandlungsanlage', '"Abfallbehandlungsanlage" bezeichnet eine FlÃ€che mit Bauwerken und sonstigen Einrichtungen, auf der AbfÃ€lle mit chemisch/physikalischen und biologischen oder thermischen Verfahren oder Kombinationen dieser Verfahren behandelt werden.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2621,'GebÃ€ude- und FreiflÃ€che Entsorgungsanlage, Abfallbeseitigung');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2622,'BetriebsflÃ€che Entsorgungsanlage, Abfallbeseitigung');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, 2623,'BetriebsflÃ€che Entsorgungsanlage, Schlamm');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 2630,'Deponie (oberirdisch)', '"Deponie (oberirdisch)" bezeichnet eine FlÃ€che, auf der oberirdisch Abfallstoffe gelagert werden.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, 2640,'Deponie (untertÃ€gig)', '"Deponie (untertÃ€gig)" bezeichnet eine oberirdische BetriebsflÃ€che, unter der Abfallstoffe eingelagert werden (Untertagedeponie).');
+
+
+-- MUSTER:
+--INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (2, __,'__');
+--INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (2, __,'__', '____');
+
+
+-- Zustand als 2. Feld?
+
+--*FÃ¶rdergut:
+-- 1000 ErdÃ¶l        'ErdÃ¶l' ist ein flÃŒssiges und brennbares Kohlenwasserstoffgemisch, das gefÃ¶rdert wird.
+-- 2000 Erdgas       'Erdgas' ist ein in der Erdkruste vorkommendes brennbares Naturgas, das gefÃ¶rdert wird.
+-- 3000 Sole, Lauge  'Sole, Lauge' ist ein kochsalzhaltiges Wasser, das gefÃ¶rdert wird.
+-- 4000 KohlensÃ€ure  'KohlensÃ€ure' ist eine schwache SÃ€ure, die durch LÃ¶sung von Kohlendioxid in Wasser entsteht und gefÃ¶rdert wird.
+-- 5000 ErdwÃ€rme     'ErdwÃ€rme' ist eine auf natÃŒrlichem Wege sich erneuernde WÃ€rmeenergie, die aus einer geothermisch geringen Tiefenstufe der Erdkruste gefÃ¶rdert wird.
+
+--*Lagergut:
+-- 7000 Abraum
+-- 1000 Baustoffe
+-- 4000 Erde
+-- 2000 Kohle
+-- 3000 Ãl
+-- 6000 Schlacke
+-- 8000 Schrott, Altmaterial
+
+--*PrimÃ€renergie:
+-- 1000 Wasser    --'Wasser' bedeutet, dass das Kraftwerk potentielle und kinetische Energie des Wasserkreislaufs in elektrische Energie umwandelt.
+-- 2000 Kernkraft --'Kernkraft' bedeutet, dass das Kraftwerk die durch Kernspaltung gewonnene Energie in eine andere Energieform umwandelt.
+-- 3000 Sonne     --'Sonne' bedeutet, dass das Kraftwerk bzw. Heizwerk Sonnenenergie in eine andere Energieform umwandelt.
+-- 4000 Wind      --'Wind' bedeutet, dass das Kraftwerk die StrÃ¶mungsenergie des Windes in elektrische Energie umwandelt.
+-- 5000 Gezeiten  --'Gezeiten' bedeutet, dass das Kraftwerk die kinetische Energie der Meeresgezeiten in elektrische Energie umwandelt.
+-- 6000 ErdwÃ€rme  --'ErdwÃ€rme' bedeutet, dass das Heizwerk die geothermische Energie der Erde nutzt.
+-- 7000 Verbrennung --'Verbrennung' bedeutet, dass das Kraftwerk bzw. Heizwerk die durch Verbrennung freiwerdende Energie in eine andere Energieform umwandelt.
+-- 7100 Kohle     --'Kohle' bedeutet, dass das Kraftwerk bzw. Heizwerk die durch Verbrennung von Kohle freiwerdende Energie in eine andere Energieform umwandelt.
+-- 7200 Ãl        --'Ãl' bedeutet, dass das Kraftwerk bzw. Heizwerk die durch Verbrennung von Ãl freiwerdende Energie in eine andere Energieform umwandelt.
+-- 7300 Gas       --'Gas' bedeutet, dass das Kraftwerk bzw. Heizwerk die durch Verbrennung von Gas freiwerdende Energie in eine andere Energieform umwandelt.
+-- 7400 MÃŒll, Abfall --'MÃŒll, Abfall' bedeutet, dass das Kraftwerk bzw. Heizwerk die durch Verbrennung von MÃŒll bzw. Abfall freiwerdende Energie in eine andere Energieform umwandelt.
+
+
+-- 03 REO: ax_Halde
+-- -------------------------------------
+-- 'Halde' ist eine FlÃ€che, auf der Material langfristig gelagert wird und beschreibt die auch im Relief 
+-- zu modellierende tatsÃ€chliche AufschÃŒttung. 
+-- Aufgeforstete Abraumhalden werden als Objekte der Objektart 'Wald' erfasst.
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (3, 'Siedlung','ax_halde','Halde', 'Lagergut', null);
+
+-- Classes (Lagergut):
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (3,    0,'');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (3, 1000,'Baustoffe');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (3, 2000,'Kohle');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (3, 4000,'Erde');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (3, 5000,'Schutt');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (3, 6000,'Schlacke');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (3, 7000,'Abraum');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (3, 8000,'Schrott, Altmaterial');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (3, 9999,'Sonstiges');
+
+-- Zustand: 2 Werte
+
+
+-- 04 ax_Bergbaubetrieb
+-- -------------------------------------
+-- 'Bergbaubetrieb' ist eine FlÃ€che, die fÃŒr die FÃ¶rderung des Abbaugutes unter Tage genutzt wird.
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (4, 'Siedlung','ax_bergbaubetrieb','Bergbaubetrieb', 'Abbaugut', null);
+
+-- Classes (Abbaugut):
+-- 'Abbaugut' gibt an, welches Material abgebaut wird.
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (4,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 1000,'Erden, Lockergestein', '"Erden, Lockergestein" bedeutet, dass feinkÃ¶rnige Gesteine abgebaut werden.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 1001,'Ton', '"Ton" ist ein Abbaugut, das aus gelblichem bis grauem Lockergestein besteht und durch Verwitterung Ã€lterer Gesteine entsteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 1007,'Kalk, Kalktuff, Kreide', '"Kalk, Kalktuff, Kreide" ist ein Abbaugut, das aus erdigem weiÃen Kalkstein besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 2000,'Steine, Gestein, Festgestein', '"Steine, Gestein, Festgestein" bedeutet, dass grobkÃ¶rnige oder feste Gesteine abgebaut werden.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 2002,'Schiefer, Dachschiefer', '"Schiefer, Dachschiefer" ist ein toniges Abbaugut, das in dÃŒnne ebene Platten spaltbar ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 2003,'Metamorpher Schiefer', '"Metamorpher Schiefer" ist ein Abbaugut, dessen ursprÃŒngliche Zusammensetzung und Struktur durch WÃ€rme und Druck innerhalb der Erdkruste verÃ€ndert worden ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 2005,'Kalkstein', '"Kalkstein" ist ein Abbaugut, das als weit verbreitetes Sedimentgestein ÃŒberwiegend aus Calciumcarbonat besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 2006,'Dolomitstein', '"Dolomitstein" ist ein Abbaugut, das ÃŒberwiegend aus calcium- und magnesiumhaltigen Mineralien besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 2013,'Basalt, Diabas', '"Basalt, Diabas" ist ein Abbaugut, das aus basischem Ergussgestein besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 2021,'Talkschiefer, Speckstein', '"Talkschiefer, Speckstein" ist ein farbloses bis graugrÃŒnes, sich fettig anfÃŒhlendes Abbaugut, das aus dem weichen Mineral Talk besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 3000,'Erze', '"Erze" bedeutet, dass die in der Natur vorkommenden, metallhaltigen Mineralien und Mineralgemische abgebaut oder gespeichert werden.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 3001,'Eisen', '"Eisen" wird als Eisenerz abgebaut und durch VerhÃŒttung gewonnen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 3002,'Buntmetallerze', '"Buntmetallerze" ist das Abbaugut, das alle Nichteisenmetallerze als Sammelbegriff umfasst.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 3003,'Kupfer', '"Kupfer" wird als Kupfererz abgebaut und durch VerhÃŒttung gewonnen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 3004,'Blei', '"Blei" wird als Bleierz abgebaut und durch spezielle Verfahren gewonnen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 3005,'Zink', '"Zink" wird als Zinkerz abgebaut und durch spezielle Verfahren gewonnen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 3006,'Zinn', '"Zinn" wird als Zinnerz abgebaut und durch spezielle Verfahren gewonnen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 3007,'Wismut, Kobalt, Nickel', '"Wismut, Kobalt, Nickel" werden als Erze abgebaut und durch spezielle Verfahren gewonnen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 3008,'Uran', '"Uran" wird als Uranerz abgebaut und durch spezielle Verfahren gewonnen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 3009,'Mangan', '"Mangan" wird als Manganerz abgebaut und durch spezielle Verfahren gewonnen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 3010,'Antimon', '"Antimon" wird als Antimonerz abgebaut und durch spezielle Verfahren gewonnen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 3011,'Edelmetallerze', '"Edelmetallerze" ist das Abbaugut, aus dem Edelmetalle (z. B. Gold, Silber) gewonnen werden.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 4000,'Treib- und Brennstoffe', '"Treib- und Brennstoffe" bedeutet, dass die in der Natur vorkommenden brennbaren organischen und anorganischen Substanzen abgebaut oder gewonnen werden.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 4020,'Kohle', '"Kohle" ist ein Abbaugut, das durch Inkohlung (Umwandlungsprozess pflanzlicher Substanzen) entstanden ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 4021,'Braunkohle', '"Braunkohle" ist ein Abbaugut, das durch einen bestimmten Grad von Inkohlung (Umwandlungsprozess pflanzlicher Substanzen) entstanden ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 4022,'Steinkohle', '"Steinkohle" ist ein Abbaugut, das durch vollstÃ€ndige Inkohlung (Umwandlungsprozess pflanzlicher Substanzen) entstanden ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 4030,'Ãlschiefer', '"Ãlschiefer" ist ein Abbaugut, das aus dunklem, bitumenhaltigem, tonigem Gestein besteht');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 5000,'Industrieminerale, Salze ', '"Industrieminerale, Salze" bedeutet, dass die in der Natur vorkommenden Mineralien abgebaut werden.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 5001,'Gipsstein', '"Gipsstein" ist ein natÃŒrliches Abbaugut.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 5002,'Anhydritstein', '"Anhydritstein" ist ein Abbaugut, das aus wasserfreiem Gips besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 5003,'Steinsalz', '"Steinsalz" ist ein Abbaugut, das aus SalzstÃ¶cken gewonnen wird und aus Natriumchlorid besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 5004,'Kalisalz', '"Kalisalz" ist ein Abbaugut, das aus SalzstÃ¶cken gewonnen wird und aus Chloriden und Sulfaten besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 5005,'Kalkspat', '"Kalkspat" ist ein weiÃes oder hell gefÃ€rbtes Abbaugut (Calciumcarbonat).');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 5006,'Flussspat', '"Flussspat" ist ein Abbaugut, das aus Calciumfluorid besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 5007,'Schwerspat', '"Schwerspat" ist ein formenreiches, rhombisches weiÃes bis farbiges Abbaugut.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (4, 5011,'Graphit', '"Graphit" ist ein bleigraues, weiches, metallglÃ€nzendes Abbaugut, das aus fast reinem Kohlenstoff besteht.');
+
+-- Zustand: 2 Werte
+
+
+-- 05 REO: ax_TagebauGrubeSteinbruch
+-- -------------------------------------
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo) 
+VALUES (5, 'Siedlung','ax_tagebaugrubesteinbruch','Tagebau, Grube, Steinbruch', 'Abbaugut', null);
+
+-- Classes (Abbaugut):                                                          Ton Steine Scherben
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (5,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 1000,'Erden, Lockergestein', '"Erden, Lockergestein" bedeutet, dass feinkÃ¶rnige Gesteine abgebaut werden.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 1001,'Ton',         '"Ton" ist ein Abbaugut, das aus gelblichem bis grauem Lockergestein besteht und durch Verwitterung Ã€lterer Gesteine entsteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 1002,'Bentonit',    '"Bentonit" ist ein tonartiges Abbaugut, das durch Verwitterung vulkanischer Asche (Tuffe) entstanden ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 1003,'Kaolin',      '"Kaolin" ist ein Abbaugut, das aus weiÃem, erdigem Gestein, fast reinem Aluminiumsilikat (kieselsaure Tonerde) besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 1004,'Lehm',        '"Lehm" ist ein Abbaugut, das durch Verwitterung entstanden ist und aus gelb bis braun gefÃ€rbtem sandhaltigem Ton besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 1005,'LÃ¶Ã, LÃ¶Ãlehm', '"LÃ¶Ã, LÃ¶Ãlehm" ist ein Abbaugut das aus feinsten gelblichen Sedimenten besteht und eine hohe WasserspeicherfÃ€higkeit aufweist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 1006,'Mergel',      '"Mergel" ist ein Abbaugut das aus kalk- und tonartigem Sedimentgestein besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 1007,'Kalk, Kalktuff, Kreide', '"Kalk, Kalktuff, Kreide" ist ein Abbaugut, das aus erdigem weiÃen Kalkstein besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 1008,'Sand',        '"Sand" ist ein Abbaugut, das aus kleinen, losen MineralkÃ¶rnern (hÃ€ufig Quarz) besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 1009,'Kies, Kiessand', '"Kies, Kiessand" ist ein Abbaugut, das aus vom Wasser rund geschliffenen Gesteinsbrocken besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 1011,'Farberden',    '"Farberden" ist ein Abbaugut, das durch Verwitterung entstanden ist und vorrangig aus eisenhaltigem Gestein besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 1012,'Quarzsand',    '"Quarzsand" ist ein Abbaugut, das vorwiegend aus kleinen, losen QuarzkÃ¶rnern besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 1013,'Kieselerde',   '"Kieselerde" ist ein Abbaugut, das durch tertiÃ€re Binnenseeablagerungen aus Kieselschalen toter Kieselalgen entstanden ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2000,'Steine, Gestein, Festgestein', '"Steine, Gestein, Festgestein" bedeutet, dass grobkÃ¶rnige oder feste Gesteine abgebaut werden.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2001,'Tonstein',     '"Tonstein" ist ein gelblich bis graues Abbaugut, das ÃŒberwiegend aus Tonmineralien besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2002,'Schiefer, Dachschiefer', '"Schiefer, Dachschiefer" ist ein toniges Abbaugut, das in dÃŒnne ebene Platten spaltbar ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2003,'Metamorpher Schiefer', '"Metamorpher Schiefer" ist ein Abbaugut, dessen ursprÃŒngliche Zusammensetzung und Struktur durch WÃ€rme und Druck innerhalb der Erdkruste verÃ€ndert worden ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2004,'Mergelstein',  '"Mergelstein" ist ein Abbaugut, das sich grÃ¶Ãtenteils aus Ton und Kalk zusammensetzt.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2005,'Kalkstein',    '"Kalkstein" ist ein Abbaugut, das als weit verbreitetes Sedimentgestein ÃŒberwiegend aus Calciumcarbonat besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2006,'Dolomitstein', '"Dolomitstein" ist ein Abbaugut, das ÃŒberwiegend aus calcium- und magnesiumhaltigen Mineralien besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2007,'Travertin',    '"Travertin" ist ein Abbaugut, das aus gelblichen Kiesel- oder Kalktuffen besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2008,'Marmor',       '"Marmor" ist ein Abbaugut, das als rein weiÃer kristalliner, kÃ¶rniger Kalkstein (Calciumcarbonat) vorkommt.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2009,'Sandstein',    '"Sandstein" ist ein Abbaugut, das aus verfestigtem Sedimentgestein besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2010,'Grauwacke',    '"Grauwacke" ist ein Abbaugut, das aus tonhaltigem Sandstein besteht und mit GesteinsbruchstÃŒcken angereichert sein kann.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2011,'Quarzit',      '"Quarzit" ist ein sehr hartes metamorphes Abbaugut, das vorwiegend aus feinkÃ¶rnigen Quarzmineralien besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2012,'Gneis',        '"Gneis" ist ein metamorphes Abbaugut mit Schieferung, das aus Feldspat, Quarz und Glimmer besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2013,'Basalt, Diabas', '"Basalt, Diabas" ist ein Abbaugut, das aus basischem Ergussgestein besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2014,'Andesit',      '"Andesit" ist ein Abbaugut, das aus Ergussgestein besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2015,'Porphyr, Quarzporphyr', '"Porphyr, Quarzporphyr" ist ein eruptiv entstandenes Abbaugut, das aus einer dichten Grundmasse und groben Einsprenglingen besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2016,'Granit',        '"Granit" ist ein eruptiv entstandenes Abbaugut, das aus kÃ¶rnigem Feldspat, Quarz, Glimmer besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2017,'Granodiorit',   '"Granodiorit" ist ein hell- bis dunkelgraues Abbaugut. Es ist ein mittelkÃ¶rniges Tiefengestein mit den Hauptbestandteilen Feldspat, Quarz, Hornblende und Biotit.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2018,'Tuff-, Bimsstein', '"Tuff-, Bimsstein" ist ein helles, sehr porÃ¶ses Abbaugut, das durch rasches Erstarren der Lava entstanden ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2019,'Trass',        '"Trass" ist ein Abbaugut, das aus vulkanischem Aschentuff (Bimsstein) besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2020,'Lavaschlacke',   '"Lavaschlacke" ist ein Abbaugut, das aus ausgestoÃenem, geschmolzenen Vulkangestein besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 2021,'Talkschiefer, Speckstein', '"Talkschiefer, Speckstein" ist ein farbloses bis graugrÃŒnes, sich fettig anfÃŒhlendes Abbaugut, das aus dem weichen Mineral Talk besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 4000,'Treib- und Brennstoffe', '"Treib- und Brennstoffe" bedeutet, dass die in der Natur vorkommenden brennbaren organischen und anorganischen Substanzen abgebaut oder gewonnen werden.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 4010,'Torf',          '"Torf" ist ein Abbaugut, das aus der unvollkommenen Zersetzung abgestorbener pflanzlicher Substanz unter Luftabschluss in Mooren entstanden ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 4020,'Kohle',         '"Kohle" ist ein Abbaugut, das durch Inkohlung (Umwandlungsprozess pflanzlicher Substanzen) entstanden ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 4021,'Braunkohle',    '"Braunkohle" ist ein Abbaugut, das durch einen bestimmten Grad von Inkohlung (Umwandlungsprozess pflanzlicher Substanzen) entstanden ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 4022,'Steinkohle',    '"Steinkohle" ist ein Abbaugut, das durch vollstÃ€ndige Inkohlung (Umwandlungsprozess pflanzlicher Substanzen) entstanden ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 4030,'Ãlschiefer',    '"Ãlschiefer" ist ein Abbaugut, das aus dunklem, bitumenhaltigen, tonigen Gestein besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 5000,'Industrieminerale, Salze', '-"Industrieminerale, Salze" bedeutet, dass die in der Natur vorkommenden Mineralien abgebaut werden.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 5001,'Gipsstein',    '"Gipsstein" ist ein natÃŒrliches Abbaugut.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 5002,'Anhydritstein', '"Anhydritstein" ist ein Abbaugut, das aus wasserfreiem Gips besteht.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 5005,'Kalkspat',      '"Kalkspat" ist ein weiÃes oder hell gefÃ€rbtes Abbaugut (Calciumcarbonat).');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 5007,'Schwerspat',    '"Schwerspat" ist ein formenreiches, rhombisches weiÃes bis farbiges Abbaugut.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 5008,'Quarz',         '"Quarz" ist ein Abbaugut, das aus verschiedenen Gesteinsarten (Granit, Gneis, Sandstein) gewonnen wird.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 5009,'Feldspat',      '"Feldspat" ist ein weiÃ bis grauweiÃes gesteinsbildendes Mineral von blÃ€ttrigem Bruch, das abgebaut wird.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 5010,'Pegmatitsand',  '"Pegmatitsand" ist ein Abbaugut, das durch Verwitterung von Granit und Gneis entstanden ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (5, 9999,'Sonstiges',     '"Sonstiges" bedeutet, dass das Abbaugut bekannt, aber nicht in der Attributwertliste aufgefÃŒhrt ist.');
+
+-- 2. Feld: "Zustand"
+-- 2100   AuÃer Betrieb, stillgelegt, verlassen
+-- "AuÃer Betrieb, stillgelegt; verlassen" bedeutet, dass sich 'Tagebau, Grube, Steinbruch' nicht mehr in regelmÃ€Ãiger, der Bestimmung entsprechenden Nutzung befindet.
+
+
+-- 06 REO: ax_FlaecheGemischterNutzung
+-- -------------------------------------
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (6, 'Siedlung','ax_flaechegemischternutzung','FlÃ€che gemischter Nutzung', 'Funktion', null);
+
+-- Classes (Funktion):
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (6,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (6, 2100,'GebÃ€ude- und FreiflÃ€che, Mischnutzung mit Wohnen');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (6, 2110,'GebÃ€ude- und FreiflÃ€che, Mischnutzung mit Wohnen / Wohnen mit Ãffentlich ');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (6, 2120,'GebÃ€ude- und FreiflÃ€che, Mischnutzung mit Wohnen / Wohnen mit Handel und Dienstleistungen');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (6, 2130,'GebÃ€ude- und FreiflÃ€che, Mischnutzung mit Wohnen / Wohnen mit Gewerbe und Industrie ');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (6, 2140,'GebÃ€ude- und FreiflÃ€che, Mischnutzung mit Wohnen / Ãffentlich mit Wohnen');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (6, 2150,'GebÃ€ude- und FreiflÃ€che, Mischnutzung mit Wohnen / Handel und Dienstleistungen mit Wohnen');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (6, 2160,'GebÃ€ude- und FreiflÃ€che, Mischnutzung mit Wohnen / Gewerbe und Industrie mit Wohnen');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (6, 2700,'GebÃ€ude- und FreiflÃ€che Land- und Forstwirtschaft');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (6, 2710,'GebÃ€ude- und FreiflÃ€che Land- und Forstwirtschaft / Wohnen');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (6, 2720,'GebÃ€ude- und FreiflÃ€che Land- und Forstwirtschaft / Betrieb');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (6, 2730,'GebÃ€ude- und FreiflÃ€che Land- und Forstwirtschaft / Wohnen und Betrieb');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (6, 6800,'Landwirtschaftliche BetriebsflÃ€che');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (6, 7600,'Forstwirtschaftliche BetriebsflÃ€che');
+
+
+-- Art der Bebauung
+-- Offen       1000 -- "Offen" beschreibt die Bebauung von 'FlÃ€che gemischter Nutzung', die vorwiegend durch einzelstehende GebÃ€ude charakterisiert wird.
+-- Geschlossen 2000 -- "Geschlossen" beschreibt die Bebauung von 'FlÃ€che gemischter Nutzung', die vorwiegend durch zusammenhÃ€ngende GebÃ€ude charakterisiert wird. Die GebÃ€udeabdeckung ist in der Regel > 50 Prozent der FlÃ€che.
+
+
+-- 07 REO: ax_FlaecheBesondererFunktionalerPraegung
+-- -------------------------------------
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (7, 'Siedlung','ax_flaechebesondererfunktionalerpraegung','FlÃ€che besonderer funktionaler PrÃ€gung', 'Funktion', 'Art der Bebauung');
+
+
+-- Classes (Funktion):
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (7,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (7, 1100,'Ãffentliche Zwecke');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (7, 1110,'Ãffentliche Zwecke / Verwaltung', '"Verwaltung" bezeichnet eine FlÃ€che auf der vorwiegend GebÃ€ude der Ã¶ffentlichen Verwaltung, z. B. Rathaus, Gericht, Kreisverwaltung stehen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (7, 1120,'Ãffentliche Zwecke / Bildung und Forschung', '"Bildung und Forschung" bezeichnet eine FlÃ€che, auf der vorwiegend GebÃ€ude stehen, in denen geistige, kulturelle und soziale FÃ€higkeiten vermittelt werden und/oder wissenschaftliche Forschung betrieben wird (z.B. Schulen, UniversitÃ€ten, Forschungsinstitute).');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (7, 1130,'Ãffentliche Zwecke / Kultur', '"Kultur" bezeichnet eine FlÃ€che auf der vorwiegend Anlagen und GebÃ€ude fÃŒr kulturelle Zwecke, z.B. Konzert- und MuseumsgebÃ€ude, Bibliotheken, Theater, SchlÃ¶sser und Burgen sowie Rundfunk- und FernsehgebÃ€ude stehen.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (7, 1140,'Ãffentliche Zwecke / ReligiÃ¶se Einrichtung');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (7, 1150,'Ãffentliche Zwecke / Gesundheit, Kur', '"Gesundheit, Kur" bezeichnet eine FlÃ€che auf der vorwiegend GebÃ€ude des Gesundheitswesens stehen, z.B. KrankenhÃ€user, Heil- und Pflegeanstalten.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (7, 1160,'Ãffentliche Zwecke / Soziales', '"Soziales" bezeichnet eine FlÃ€che auf der vorwiegend GebÃ€ude des Sozialwesens stehen, z. B. KindergÃ€rten, Jugend- und Senioreneinrichtungen, Freizeit-, Fremden- und Obdachlosenheime.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (7, 1170,'Ãffentliche Zwecke / Sicherheit und Ordnung', '"Sicherheit und Ordnung" bezeichnet eine FlÃ€che auf der vorwiegend Anlagen und GebÃ€ude der Polizei, der Bundeswehr, der Feuerwehr und der JustizvollzugsbehÃ¶rden stehen.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (7, 1200,'Parken');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (7, 1300,'Historische Anlage');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (7, 1310,'Historische Anlage / Burg-, Festungsanlage');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (7, 1320,'Historische Anlage / Schlossanlage');
+
+
+-- 08 REO: ax_SportFreizeitUndErholungsflaeche
+-- -------------------------------------
+-- 'Sport-, Freizeit- und ErholungsflÃ€che' ist eine bebaute oder unbebaute FlÃ€che, 
+-- die dem Sport, der Freizeitgestaltung oder der Erholung dient.
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (8, 'Siedlung','ax_sportfreizeitunderholungsflaeche','Sport-, Freizeit- und ErholungsflÃ€che', 'Funktion', null);
+
+-- Classes:
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4100,'Sportanlage', '"Sportanlage" ist eine FlÃ€che mit Bauwerken und Einrichtungen, die zur AusÃŒbung von (Wettkampf-)sport und fÃŒr Zuschauer bestimmt ist.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4101,'GebÃ€ude- u. FreiflÃ€che Erholung, Sport');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4110,'Golfplatz', '"Golfplatz" ist eine FlÃ€che mit Bauwerken und Einrichtungen, die zur AusÃŒbung des Golfsports genutzt wird.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4120,'Sportplatz');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4130,'Rennbahn');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4140,'Reitplatz');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4150,'SchieÃanlage');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4160,'Eis-, Rollschuhbahn');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4170,'Tennisplatz');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4200,'Freizeitanlage', '"Freizeitanlage" ist eine FlÃ€che mit Bauwerken und Einrichtungen, die zur Freizeitgestaltung bestimmt ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4210,'Zoo', '"Zoo" ist ein GelÃ€nde mit TierschauhÃ€usern und umzÃ€unten Gehegen, auf dem Tiere gehalten und gezeigt werden.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4211,'GebÃ€ude- u. FreiflÃ€che Erholung, Zoologie');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4220,'Safaripark, Wildpark', '"Safaripark, Wildpark", ist ein GelÃ€nde mit umzÃ€unten Gehegen, in denen Tiere im Freien gehalten und gezeigt werden.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4230,'Freizeitpark', '"Freizeitpark" ist ein GelÃ€nde mit Karussells, Verkaufs- und Schaubuden und/oder Wildgattern, das der Freizeitgestaltung dient.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4240,'Freilichttheater', '"Freilichttheater" ist eine Anlage mit BÃŒhne und ZuschauerbÃ€nken fÃŒr TheaterauffÃŒhrungen im Freien.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4250,'Freilichtmuseum', '"Freilichtmuseum" ist eine volkskundliche Museumsanlage, in der Wohnformen oder historische Betriebsformen in ihrer natÃŒrlichen Umgebung im Freien dargestellt sind.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4260,'Autokino, Freilichtkino', '"Autokino, Freilichtkino" ist ein Lichtspieltheater im Freien, in dem der Film im Allgemeinen vom Auto aus angesehen wird.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4270,'VerkehrsÃŒbungsplatz');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4280,'HundeÃŒbungsplatz');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4290,'Modellflugplatz', '"Modellflugplatz" ist eine FlÃ€che, die zur AusÃŒbung des Modellflugsports dient.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4300,'ErholungsflÃ€che');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4301,'GebÃ€ude- und FreiflÃ€che Erholung');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4310,'Wochenend- und FerienhausflÃ€che', '"Wochenend- und FerienhausflÃ€che" bezeichnet eine extra dafÃŒr ausgewiesene FlÃ€che auf der vorwiegend Wochenend- und FerienhÃ€user stehen dÃŒrfen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4320,'Schwimmbad, Freibad', '"Schwimmbad, Freibad" ist eine Anlage mit Schwimmbecken oder Anlage an Ufern von GewÃ€ssern fÃŒr den Badebetrieb und Schwimmsport.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4321,'GebÃ€ude- u. FreiflÃ€che Erholung, Bad');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4330,'Campingplatz', '"Campingplatz" ist eine FlÃ€che fÃŒr den Aufbau einer grÃ¶Ãeren Zahl von Zelten oder zum Abstellen und Benutzen von Wohnwagen mit ortsfesten Anlagen und Einrichtungen.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4331,'GebÃ€ude- u. FreiflÃ€che Erholung, Camping');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4400,'GrÃŒnanlage', '"GrÃŒnanlage" ist eine Anlage mit BÃ€umen, StrÃ€uchern, RasenflÃ€chen, Blumenrabatten und Wegen, die vor allem der Erholung und VerschÃ¶nerung des Stadtbildes dient.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4410,'GrÃŒnflÃ€che');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4420,'Park', '"Park" ist eine landschaftsgÃ€rtnerisch gestaltete GrÃŒnanlage, die der ReprÃ€sentation und der Erholung dient.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4430,'Botanischer Garten');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4431,'GebÃ€ude- u. FreiflÃ€che Erholung, Botanik');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (8, 4440,'Kleingarten', '"Kleingarten" (Schrebergarten) ist eine Anlage von GartengrundstÃŒcken, die von Vereinen verwaltet und verpachtet werden.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4450,'Wochenendplatz');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4460,'Garten');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 4470,'Spielplatz, Bolzplatz');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (8, 9999,'Sonstiges');
+
+
+-- 09 REO: ax_Friedhof
+-- -------------------------------------
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass) -- kein info
+VALUES (9, 'Siedlung','ax_friedhof','Friedhof', 'Funktion');
+
+-- Class (Funktion):
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (9,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (9, 9401,'GebÃ€ude- und FreiflÃ€che Friedhof');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (9, 9402,'Friedhof (ohne GebÃ€ude)');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (9, 9403,'Friedhof (Park)');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (9, 9404,'Historischer Friedhof');
+
+
+-- ** Verkehr **
+
+-- 10 ax_Strassenverkehr
+-- -------------------------------------
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (10, 'Verkehr','ax_strassenverkehr','StraÃenverkehr', 'Funktion', 'Zweitname');
+
+-- Class (Funktion):
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (10,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (10, 2311,'GebÃ€ude- und FreiflÃ€che zu Verkehrsanlagen, StraÃe');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (10, 2312,'VerkehrsbegleitflÃ€che StraÃe', '"VerkehrsbegleitflÃ€che StraÃe" bezeichnet eine bebaute oder unbebaute FlÃ€che, die einer StraÃe zugeordnet wird. Die "VerkehrsbegleitflÃ€che StraÃe" ist nicht Bestandteil der Fahrbahn.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (10, 2313,'StraÃenentwÃ€sserungsanlage');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (10, 5130,'FuÃgÃ€ngerzone');
+
+
+-- 11 ax_Weg
+-- -------------------------------------
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (11, 'Verkehr','ax_weg','Weg', 'Funktion', 'Bezeichnung');
+
+-- Classes (Funktion):
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (11,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (11, 5210,'Fahrweg');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (11, 5211,'Hauptwirtschaftsweg');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (11, 5212,'Wirtschaftsweg');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (11, 5220,'FuÃweg');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (11, 5230,'Gang');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (11, 5240,'Radweg');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (11, 5250,'Rad- und FuÃweg');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (11, 5260,'Reitweg');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (11, 9999,'Sonstiges');
+
+
+-- 12 ax_Platz
+-- -------------------------------------
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (12, 'Verkehr','ax_platz','Platz', 'Funktion', 'Zweitname');
+
+-- Classes (Funktion):
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (12,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (12, 5130,'FuÃgÃ€ngerzone', '"FuÃgÃ€ngerzone" ist ein dem FuÃgÃ€ngerverkehr vorbehaltener Bereich, in dem ausnahmsweise Ã¶ffentlicher Personenverkehr, Lieferverkehr oder Fahrradverkehr zulÃ€ssig sein kann.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (12, 5310,'Parkplatz', '"Parkplatz" ist eine zum vorÃŒbergehenden Abstellen von Fahrzeugen bestimmte FlÃ€che.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (12, 5320,'Rastplatz', '"Rastplatz" ist eine Anlage zum Halten, Parken oder Rasten der Verkehrsteilnehmer mit unmittelbarem Anschluss zur StraÃe ohne Versorgungseinrichtung, ggf. mit Toiletten.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (12, 5330,'RaststÃ€tte', '"RaststÃ€tte" ist eine Anlage an VerkehrsstraÃen mit Bauwerken und Einrichtungen zur Versorgung und Erholung von Reisenden.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (12, 5340,'Marktplatz');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (12, 5350,'Festplatz', '"Festplatz" ist eine FlÃ€che, auf der zeitlich begrenzte Festveranstaltungen stattfinden');
+
+
+-- 13 ax_Bahnverkehr
+-- -------------------------------------
+
+--Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (13, 'Verkehr','ax_bahnverkehr','Bahnverkehr', 'Funktion', 'Bahnkategorie');
+
+-- Classes (Funktion):)
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (13,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (13, 2321,'GebÃ€ude- und FreiflÃ€che zu Verkehrsanlagen, Schiene');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (13, 2322,'VerkehrsbegleitflÃ€che Bahnverkehr', '"VerkehrsbegleitflÃ€che Bahnverkehr" bezeichnet eine bebaute oder unbebaute, an den BahnkÃ¶rper angrenzende FlÃ€che, die dem Schienenverkehr dient.');
+
+
+-- alternative Kategorie:
+
+-- Bahnkategorie
+
+--Eisenbahn 1100
+-- 'Eisenbahn' ist die Bezeichnung fÃŒr einen schienengebundenen Verkehrsweg, auf dem im Nah- und Fernverkehr Personen befÃ¶rdert und GÃŒter transportiert werden.
+--GÃŒterverkehr 1102
+-- 'GÃŒterverkehr' ist die Bezeichnung fÃŒr einen schienengebundenen Verkehrsweg, auf dem im Nah- und Fernverkehr ausschlieÃlich GÃŒter transportiert werden.
+--S-Bahn 1104
+-- 'S-Bahn' ist die Bezeichnung fÃŒr einen schienengebundenen Verkehrsweg, der zur schnellen PersonenbefÃ¶rderung in BallungsrÃ€umen dient und meist auf eigenen Gleisen verlÃ€uft.
+--Stadtbahn 1200
+-- 'Stadtbahn' ist die Bezeichnung fÃŒr einen schienengebundenen Verkehrsweg, auf dem eine elektrisch betriebene Schienenbahn zur PersonenbefÃ¶rderung im Ã¶ffentlichen Nahverkehr fÃ€hrt. Sie kann sowohl ober- als auch unterirdisch verlaufen.
+--StraÃenbahn 1201
+-- 'StraÃenbahn' ist die Bezeichnung fÃŒr einen schienengebundenen Verkehrsweg, auf dem eine elektrisch betriebene Schienbahn zur PersonenbefÃ¶rderung fÃ€hrt. Sie verlÃ€uft i. d. R. oberirdisch.
+--U-Bahn 1202
+-- 'U-Bahn' ist die Bezeichnung fÃŒr einen schienengebundenen Verkehrsweg, auf dem eine elektrisch betriebene Schienenbahn zur PersonenbefÃ¶rderung in GroÃstÃ€dten fÃ€hrt. Sie verlÃ€uft i. d. R. unterirdisch.
+--Seilbahn, Bergbahn 1300
+-- 'Seilbahn, Bergbahn' ist die Bezeichnung fÃŒr einen schienengebundenen Verkehrsweg, auf dem eine Schienenbahn groÃe HÃ¶henunterschiede ÃŒberwindet.
+--Zahnradbahn 1301
+-- 'Zahnradbahn' ist die Bezeichnung fÃŒr einen schienengebundenen Verkehrsweg, auf dem eine Schienenbahn mittels Zahnradantrieb groÃe HÃ¶henunterschiede in stark geneigtem GelÃ€nde ÃŒberwindet.
+--Standseilbahn 1302
+-- 'Standseilbahn' ist die Bezeichnung fÃŒr einen schienengebundenen Verkehrsweg, auf dem eine Schienenbahn auf einer stark geneigten, meist kurzen und geraden Strecke verlÃ€uft. Mit Hilfe eines oder mehrerer Zugseile wird ein Schienenfahrzeug bergauf gezogen und gleichzeitig ein zweites bergab gelassen.
+--Museumsbahn 1400
+-- 'Museumsbahn' ist die Bezeichnung fÃŒr einen schienengebundenen Verkehrsweg, auf dem ausschlieÃlich Touristen in alten, meist restaurierten ZÃŒgen befÃ¶rdert werden.
+--Magnetschwebebahn 1600
+-- 'Magnetschwebebahn' ist die Bezeichnung fÃŒr einen schienengebundenen Verkehrsweg, auf dem rÃ€derlose Schienenfahrzeuge mit Hilfe von Magnetfeldern an oder auf einer Fahrschiene schwebend entlanggefÃŒhrt werden.
+
+
+-- 14 ax_Flugverkehr
+-- -------------------------------------
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (14, 'Verkehr','ax_flugverkehr','Flugverkehr', 'Art', 'Bezeichnung');
+
+-- Classes (Funktion):
+--INSERT INTO nutzung_class (nutz_id, class, label) VALUES (14, 5501,'GebÃ€ude- und FreiflÃ€che zu Verkehrsanlagen, Luftfahrt');
+
+-- Classes (Art):
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (14,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (14, 5510,'Flughafen', '"Flughafen" ist eine Anlage mit GebÃ€uden, Bauwerken, Start- und Landebahnen sowie sonstigen flugtechnischen Einrichtungen zur Abwicklung des Flugverkehrs.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (14, 5511,'Internationaler Flughafen', '"Internationaler Flughafen" ist ein Flughafen, der in der Luftfahrtkarte 1 : 500000 (ICAO) als solcher ausgewiesen ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (14, 5512,'Regionalflughafen', '"Regionalflughafen" ist ein Flughafen der gemÃ€Ã Raumordnungsgesetz als Regionalflughafen eingestuft ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (14, 5520,'Verkehrslandeplatz', '"Verkehrslandeplatz" ist ein Flugplatz, der in der Luftfahrtkarte 1:500000 (ICAO) als solcher ausgewiesen ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (14, 5530,'Hubschrauberflugplatz', '"Hubschrauberflugplatz" ist ein Flugplatz, der in der Luftfahrtkarte 1:500000 (ICAO) als solcher ausgewiesen ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (14, 5540,'Landeplatz, Sonderlandeplatz', '"Landeplatz, Sonderlandeplatz" ist eine FlÃ€che, die in der Luftfahrtkarte 1:500000 (ICAO) als Landeplatz, Sonderlandeplatz ausgewiesen ist.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (14, 5550,'SegelfluggelÃ€nde', '"SegelfluggelÃ€nde" ist eine FlÃ€che, die in der Luftfahrtkarte 1:500000 (ICAO) als SegelfluggelÃ€nde ausgewiesen ist.');
+
+-- Nutzung:
+
+--Zivil 1000
+-- "Zivil" bedeutet, dass 'Flugverkehr' privaten, Ã¶ffentlichen oder religiÃ¶sen Zwecken dient und nicht militÃ€risch genutzt wird.
+--MilitÃ€risch 2000
+-- "MilitÃ€risch" bedeutet, dass 'Flugverkehr' nur von StreitkrÃ€ften genutzt wird.
+--Teils zivil, teils militÃ€risch 3000
+-- "Teils zivil, teils militÃ€risch" bedeutet dass ''Flugverkehr' sowohl zivil als auch militÃ€risch genutzt wird.
+
+
+
+-- 15 ax_Schiffsverkehr
+-- -------------------------------------
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass)  -- keine info
+VALUES (15, 'Verkehr','ax_schiffsverkehr','Schiffsverkehr', 'Funktion');
+
+-- Classes (Funktion):
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (15,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (15, 2341,'GebÃ€ude und FreiflÃ€che zu Verkehrsanlagen, Schifffahrt');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (15, 5610,'Hafenanlage (LandflÃ€che)', '"Hafenanlage (LandflÃ€che)" bezeichnet die FlÃ€che innerhalb von "Hafen", die nicht von Wasser bedeckt ist und die ausschlieÃlich zum Betrieb des Hafens dient.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (15, 5620,'Schleuse (LandflÃ€che)', '"Schleuse (LandflÃ€che)" bezeichnet die FlÃ€che innerhalb von "Schleuse", die nicht von Wasser bedeckt ist und die ausschlieÃlich zum Betrieb der Schleuse dient..');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (15, 5630,'Anlegestelle');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (15, 5640,'FÃ€hranlage');
+
+
+-- ** Objektartengruppe: Vegetation **
+
+-- Die Objektartengruppe mit der Bezeichnung 'Vegetation' und der Kennung '43000' 
+-- umfasst die FlÃ€chen auÃerhalb der Ansiedlungen, die durch land- oder forstwirtschaftliche Nutzung, 
+-- durch natÃŒrlichen Bewuchs oder dessen Fehlen geprÃ€gt werden.
+
+
+-- 16 ax_Landwirtschaft
+-- -------------------------------------
+-- 'Landwirtschaft' ist eine FlÃ€che fÃŒr den Anbau von FeldfrÃŒchten sowie eine FlÃ€che, 
+-- die beweidet und gemÃ€ht werden kann, einschlieÃlich der mit besonderen Pflanzen angebauten FlÃ€che. 
+-- Die Brache, die fÃŒr einen bestimmten Zeitraum (z. B. ein halbes oder ganzes Jahr) landwirtschaftlich unbebaut bleibt, 
+-- ist als 'Landwirtschaft' bzw. 'Ackerland' zu erfassen.
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass)
+VALUES (16, 'Vegetation','ax_landwirtschaft','Landwirtschaft', 'Vegetationsmerkmal');
+
+-- Classes:
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (16,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (16, 1010,'Ackerland',     '"Ackerland" ist eine FlÃ€che fÃŒr den Anbau von FeldfrÃŒchten (z.B. Getreide, HÃŒlsenfrÃŒchte, HackfrÃŒchte) und BeerenfrÃŒchten (z.B. Erdbeeren). Zum Ackerland gehÃ¶ren auch die Rotationsbrachen, Dauerbrachen sowie FlÃ€chen, die zur Erlangung der Ausgleichszahlungen der EU stillgelegt worden sind.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (16, 1011,'Streuobstacker', '"Streuobstacker" beschreibt den Bewuchs einer AckerflÃ€che mit ObstbÃ€umen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (16, 1012,'Hopfen',         '"Hopfen" ist eine mit speziellen Vorrichtungen ausgestattete AgrarflÃ€che fÃŒr den Anbau von Hopfen.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (16, 1013,'Spargel');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (16, 1020,'GrÃŒnland',       '"GrÃŒnland" ist eine GrasflÃ€che, die gemÃ€ht oder beweidet wird.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (16, 1021,'Streuobstwiese', '"Streuobstwiese" beschreibt den Bewuchs einer GrÃŒnlandflÃ€che mit ObstbÃ€umen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (16, 1030,'Gartenland',     '"Gartenland" ist eine FlÃ€che fÃŒr den Anbau von GemÃŒse, Obst und Blumen sowie fÃŒr die Aufzucht von Kulturpflanzen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (16, 1031,'Baumschule',     '"Baumschule" ist eine FlÃ€che, auf der HolzgewÃ€chse aus Samen, Ablegern oder Stecklingen unter mehrmaligem Umpflanzen (Verschulen) gezogen werden.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (16, 1040,'Weingarten',     '"Weingarten" ist eine mit speziellen Vorrichtungen ausgestattete AgrarflÃ€che auf der WeinstÃ¶cke angepflanzt sind.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (16, 1050,'Obstplantage',   '"Obstplantage" ist eine landwirtschaftliche FlÃ€che, die mit ObstbÃ€umen und ObststrÃ€uchern bepflanzt ist');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (16, 1051,'Obstbaumplantage', '"Obstbaumplantage" ist eine landwirtschaftliche FlÃ€che, die ausschlieÃlich mit ObstbÃ€umen bepflanzt ist.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (16, 1052,'Obststrauchplantage');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (16, 1200,'Brachland',      '"Brachland" ist eine FlÃ€che der Landwirtschaft, die seit lÃ€ngerem nicht mehr zu Produktionszwecken genutzt wird.');
+
+
+-- 17 ax_Wald
+-- -------------------------------------
+-- 'Wald' ist eine FlÃ€che, die mit Forstpflanzen (WaldbÃ€ume und WaldstrÃ€ucher) bestockt ist.
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (17, 'Vegetation','ax_wald','Wald', 'Vegetationsmerkmal', 'Bezeichnung');
+
+-- Classes (Vegetationsmerkmal):
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (17,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (17, 1100,'Laubholz',              '"Laubholz" beschreibt den Bewuchs einer VegetationsflÃ€che mit LaubbÃ€umen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (17, 1200,'Nadelholz',             '"Nadelholz" beschreibt den Bewuchs einer VegetationsflÃ€che mit NadelbÃ€umen.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (17, 1300,'Laub- und Nadelholz',   '"Laub- und Nadelholz" beschreibt den Bewuchs einer VegetationsflÃ€che mit Laub- und NadelbÃ€umen.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (17, 1310,'Laubwald mit Nadelholz');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (17, 1320,'Nadelwald mit Laubholz');
+
+
+-- 18 ax_Gehoelz
+-- -------------------------------------
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (18, 'Vegetation','ax_gehoelz','GehÃ¶lz','Funktion', 'Vegetationsmerkmal');
+
+-- Classes (VEG)
+--INSERT INTO nutzung_class (nutz_id, class, label) VALUES (18, 1400,'Latschenkiefer');
+
+-- Classes (Funktion)
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (18,    0,''); 
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (18, 1000,'Windschutz');
+
+
+-- 19 ax_Heide
+-- -------------------------------------
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title)
+VALUES (19, 'Vegetation','ax_heide','Heide');
+
+-- Keine Classes
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (19,    0,'');
+
+
+-- 20 ax_Moor
+-- -------------------------------------
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title)
+VALUES (20, 'Vegetation','ax_moor','Moor');
+
+-- Keine Classes
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (20,    0,'');
+
+
+-- 21 ax_Sumpf
+-- -------------------------------------
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title)
+VALUES (21, 'Vegetation','ax_sumpf','Sumpf');
+
+-- Keine Classes
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (21,    0,'');
+ 
+
+-- 22 ax_UnlandVegetationsloseFlaeche
+-- -------------------------------------
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (22, 'Vegetation','ax_unlandvegetationsloseflaeche','Unland, vegetationslose FlÃ€che', 'Funktion', 'OberflÃ€chenmaterial');
+
+-- Classes (Funktion):
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (22,    0,'');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (22, 1000,'Vegetationslose FlÃ€che',  '"Vegetationslose FlÃ€che" ist eine FlÃ€che ohne nennenswerten Bewuchs aufgrund besonderer Bodenbeschaffenheit.');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (22, 1100,'GewÃ€sserbegleitflÃ€che',   '"GewÃ€sserbegleitflÃ€che" bezeichnet eine bebaute oder unbebaute FlÃ€che, die einem FlieÃgewÃ€sser zugeordnet wird. Die GewÃ€sserbegleitflÃ€che ist nicht Bestandteil der GewÃ€sserflÃ€che.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (22, 1110,'Bebaute GewÃ€sserbegleitflÃ€che');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (22, 1120,'Unbebaute GewÃ€sserbegleitflÃ€che');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (22, 1200,'SukzessionsflÃ€che',       '"SukzessionsflÃ€che" ist eine FlÃ€che, die dauerhaft aus der landwirtschaftlichen oder sonstigen bisherigen Nutzung herausgenommen ist und die in den Urzustand z. B. GehÃ¶lz, Moor, Heide ÃŒbergeht.');
+
+
+-- Info (OberflÃ€chenmaterial)
+--INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (22, 1010,'Fels',             '"Fels" bedeutet, dass die ErdoberflÃ€che aus einer festen Gesteinsmasse besteht.');
+--INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (22, 1020,'Steine, Schotter', '"Steine, Schotter" bedeutet, dass die ErdoberflÃ€che mit zerkleinertem Gestein unterschiedlicher GrÃ¶Ãe bedeckt ist.');
+--INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (22, 1030,'GerÃ¶ll',           '"GerÃ¶ll" bedeutet, dass die ErdoberflÃ€che mit durch flieÃendes Wasser abgerundeten Gesteinen bedeckt ist.');
+--INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (22, 1040,'Sand',             '"Sand" bedeutet, dass die ErdoberflÃ€che mit kleinen, losen GesteinskÃ¶rnern bedeckt ist.');
+--INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (22, 1110,'Schnee',           '"Schnee" bedeutet, dass die ErdoberflÃ€che fÃŒr die grÃ¶Ãte Zeit des Jahres mit Schnee bedeckt ist.');
+--INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (22, 1120,'Eis, Firn',        '"Eis, Firn" bedeutet, dass die ErdoberflÃ€che mit altem, grobkÃ¶rnigem, mehrjÃ€hrigem Schnee im Hochgebirge bedeckt ist, der unter zunehmendem Druck zu Gletschereis wird.');
+
+
+-- ** GewÃ€sser **
+
+-- 24 ax_Fliessgewaesser
+-- -------------------------------------
+-- 'FlieÃgewÃ€sser' ist ein geometrisch begrenztes, oberirdisches, auf dem Festland flieÃendes GewÃ€sser, 
+-- das die Wassermengen sammelt, die als NiederschlÃ€ge auf die ErdoberflÃ€che fallen oder in Quellen austreten, 
+-- und in ein anderes GewÃ€sser, ein Meer oder in einen See transportiert
+--   oder
+-- in einem System von natÃŒrlichen oder kÃŒnstlichen Bodenvertiefungen verlaufendes Wasser, 
+-- das zur Be- und EntwÃ€sserung an- oder abgeleitet wird
+--   oder
+-- ein geometrisch begrenzter, fÃŒr die Schifffahrt angelegter kÃŒnstlicher Wasserlauf, 
+-- der in einem oder in mehreren Abschnitten die jeweils gleiche HÃ¶he des Wasserspiegels besitzt.
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass)
+VALUES (24, 'GewÃ€sser','ax_fliessgewaesser','FlieÃgewÃ€sser', 'Funktion');
+
+-- Classes (Funktion):
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (24,    0,'');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (24, 8200,'Fluss');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (24, 8210,'Altwasser');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (24, 8220,'Altarm');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (24, 8230,'FlussmÃŒndungstrichter', '"FlussmÃŒndungstrichter" ist der Bereich des Flusses im Ãbergang zum Meer. Er beginnt dort, wo die bis dahin etwa parallel verlaufenden Ufer des Flusses sich trichterfÃ¶rmig zur offenen See hin erweitern. Die Abgrenzungen der FlussmÃŒndungstrichter ergeben sich aus dem BundeswasserstraÃengesetz (meerseitig) und den Bekanntmachungen der Wasser- und Schifffahrtsverwaltung sowie hÃ¶chst-richterlicher Rechtsprechung (binnenseitig).');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (24, 8300,'Kanal',                 '"Kanal" ist ein fÃŒr die Schifffahrt angelegter, kÃŒnstlicher Wasserlauf.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (24, 8400,'Graben');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (24, 8410,'Fleet');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (24, 8500,'Bach');
+
+
+-- 25 ax_Hafenbecken
+-- -------------------------------------
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (25, 'GewÃ€sser','ax_hafenbecken','Hafenbecken', 'Funktion', 'Nutzung');
+
+-- Classes (Funktion):
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (25,    0,'');
+INSERT INTO nutzung_class (nutz_id, class, label) VALUES (25, 8810,'Sportboothafenbecken');
+
+-- Nutzung:
+
+-- Zivil 1000
+-- 'Zivil' bedeutet, dass 'Hafenbecken' privaten oder Ã¶ffentlichen Zwecken dient und nicht militÃ€risch genutzt wird.
+-- MilitÃ€risch 2000
+-- 'MilitÃ€risch' bedeutet, dass 'Hafenbecken' nur von StreitkrÃ€ften genutzt wird.
+-- Teils zivil, teils militÃ€risch 3000
+-- 'Teils zivil, teils militÃ€risch' bedeutet, dass 'Hafenbecken' sowohl zivil als auch militÃ€risch genutzt wird.
+
+
+-- 26 ax_StehendesGewaesser
+-- -------------------------------------
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (26, 'GewÃ€sser','ax_stehendesgewaesser','stehendes GewÃ€sser', 'Funktion', 'GewÃ€sserkennziffer');
+
+-- Classes (Funktion):
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (26,    0,'');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (26, 8610,'See');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (26, 8620,'Teich');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (26, 8630,'Stausee');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (26, 8631,'Speicherbecken');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (26, 8640,'Baggersee', '"Baggersee" ist ein kÃŒnstlich geschaffenes GewÃ€sser, aus dem Bodenmaterial gefÃ¶rdert wird.');
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (26, 9999,'Sonstiges');
+
+-- hydrologischesMerkmal
+--  2000   Nicht stÃ€ndig Wasser fÃŒhrend
+--  "Nicht stÃ€ndig Wasser fÃŒhrend" heiÃt, dass ein GewÃ€sser nicht ganzjÃ€hrig Wasser fÃŒhrt.
+
+
+-- 27 ax_meer
+-- -------------------------------------
+
+-- Metadaten:
+INSERT INTO nutzung_meta (nutz_id, gruppe, source_table, title, fldclass, fldinfo)
+VALUES (27, 'GewÃ€sser','ax_meer','Meer', 'Funktion', 'Bezeichnung');
+
+-- Classes (Funktion):
+INSERT INTO nutzung_class (nutz_id, class, label)         VALUES (27,    0,'');
+INSERT INTO nutzung_class (nutz_id, class, label, blabla) VALUES (27, 8710,'KÃŒstengewÃ€sser', '"KÃŒstengewÃ€sser" ist die FlÃ€che zwischen der KÃŒstenlinie bei mittlerem Hochwasser oder der seewÃ€rtigen Begrenzung der oberirdischen GewÃ€sser und der seewÃ€rtigen Begrenzung des deutschen Hoheitsgebietes. Dem mittleren Hochwasser ist der mittlere Wasserstand der Ostsee gleichzusetzen.');
+
+--tidemerkmal:
+
+-- Mit Tideeinfluss 1000
+-- "Mit Tideeinfluss" sind periodische Ãnderungen des Wasserspiegels und horizontale Bewegungen des Wassers, hervorgerufen durch die Massenanziehungs- und FliehkrÃ€fte des Systems Sonne, Mond und Erde in Verbindung mit der Erdrotation.
+
+-- END --
+
+--
+-- ALKIS PostNAS 0.7
+--
+-- ======================================================
+-- Zusammenfassung der Tabellen der tatsÃ€chlichen Nutzung
+-- ======================================================
+--
+-- Um bei einer Feature.Info (Welche Nutzung an dieser Stelle?) 
+-- oder einer Verschneidung (Welche Nutzungen auf dem FlurstÃŒck?) 
+-- nicht 26 verschiedene Tabellen abfragen zu mÃŒssen, werden die wichtigsten 
+-- Felder dieser Tabellen zusammen gefasst.
+--
+-- Teil 3: Laden der (redundanten) Tabelle "nutzung", notwendig nach jeder FortfÃŒhrung.
+--
+-- Stand 
+--
+--  2012-02-10 PostNAS 07, Umbenennung
+--  2012-04-24 keine historischen Flaechen (..WHERE endet IS NULL), 
+--             Feld 'beginnt' mitnehmen wegen Doppelbelegung gml_id (noch klÃ€ren)
+--  2013-11-18 - Spalte nutzung.class mit Wert 0 fÃŒllen wenn Quellspalte NULL ist.
+--             - Korrektur der SchlÃŒsseltabelle "nutzung_class":
+--               Fehlende Werte aus konvertierten Daten ergÃ€nzen. Wenn dies in der Praxis wirklich 
+--               vorkommt, sollte das Lade-Script "nutzungsart_metadaten.sql" ergÃ€nzt werden.
+--  2015-03-10 Korrektur: bei ax_TagebauGrubeSteinbruch ist nutz_id = 5
+--             EinschrÃ€nkung " AND st_geometrytype(wkb_geometry) = 'ST_Polygon' " deaktivieren, denn
+--             es ist ein neuer Geometrietyp "ST_CurvePolygon" aufgetaucht.
+--  2016-04-14 Korrektur: bei ax_TagebauGrubeSteinbruch: Im SQL '...FROM ax_bergbaubetrieb...' durch 
+--      	'...FROM ax_tagebauGrubesteinbruch...' ersetzt
+
+
+SET client_encoding = 'UTF-8';
+
+
+-- Tabelle  l e e r e n
+-- --------------------
+DELETE FROM nutzung;
+
+
+-- Tabelle  l a d e n 
+-- --------------------
+
+-- Welche Felder der Ursprungstabellen in die Zielfelder "class" und "info" geladen werden,
+-- wird dokumentiert ÃŒber die Tabelle "nutzung_meta" im Script "alkis_nutzungsart_meta.sql".
+
+
+-- ****  Objektbereich: TatsÃ€chliche Nutzung  ****
+
+-- ** Objektartengruppe: Siedlung **
+
+-- 01 REO: ax_Wohnbauflaeche
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                       info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 1,       coalesce(artderbebauung, 0), null ,zustand, name, null,        wkb_geometry 
+  FROM ax_wohnbauflaeche
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+-- 02 REO: ax_IndustrieUndGewerbeflaeche
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 2,       coalesce(funktion, 0), null, zustand, name, null,        wkb_geometry 
+  FROM ax_industrieundgewerbeflaeche
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 03 REO: ax_Halde
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 3,       coalesce(lagergut, 0), null, zustand, name, null,        wkb_geometry 
+  FROM ax_halde
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 04 ax_Bergbaubetrieb
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 4,       coalesce(abbaugut, 0), null, zustand, name, null,        wkb_geometry 
+  FROM ax_bergbaubetrieb
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 05 REO: ax_TagebauGrubeSteinbruch
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 5,       coalesce(abbaugut, 0), null, zustand, name, null,        wkb_geometry 
+  FROM ax_tagebauGrubesteinbruch
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 06 REO: ax_FlaecheGemischterNutzung
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 6,       coalesce(funktion, 0), null, zustand, name, null,        wkb_geometry 
+  FROM ax_flaechegemischternutzung
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 07 REO: ax_FlaecheBesondererFunktionalerPraegung
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info,           zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 7,       coalesce(funktion, 0), artderbebauung, zustand, name, null,        wkb_geometry 
+  FROM ax_flaechebesondererfunktionalerpraegung
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 08 REO: ax_SportFreizeitUndErholungsflaeche
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 8,       coalesce(funktion, 0), null, zustand, name, null,        wkb_geometry 
+  FROM ax_sportfreizeitunderholungsflaeche
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+-- weiteres Feld: name char(20)?
+
+
+-- 09 REO: ax_Friedhof
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 9,       coalesce(funktion, 0), null, zustand, name, null,        wkb_geometry 
+  FROM ax_friedhof
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- ** Objektartengruppe: Verkehr **
+
+-- 10 ax_Strassenverkehr
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info,   zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 10,      coalesce(funktion, 0), null,   zustand, name, zweitname,   wkb_geometry 
+  FROM ax_strassenverkehr
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 11 ax_Weg
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info,  zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 11,      coalesce(funktion, 0), null,  null,    name, bezeichnung, wkb_geometry 
+  FROM ax_weg
+  WHERE endet IS NULL;
+
+
+-- 12 ax_Platz
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 12,      coalesce(funktion, 0), null, null,    name, zweitname,   wkb_geometry 
+  FROM ax_platz
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 13 ax_Bahnverkehr
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info,          zustand, name,        bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 13,      coalesce(funktion, 0), bahnkategorie, zustand, bezeichnung, null,        wkb_geometry 
+  FROM ax_bahnverkehr
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+-- bahnkategorie ist alternativ ein geeignetes class-Feld
+
+
+-- 14 ax_Flugverkehr
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info,  zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 14,      coalesce(art, 0),      null,  zustand, name, bezeichnung, wkb_geometry 
+  FROM ax_flugverkehr
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 15 ax_Schiffsverkehr
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 15,      coalesce(funktion, 0), null, zustand, name, null,        wkb_geometry 
+  FROM ax_schiffsverkehr
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- ** Objektartengruppe: Vegetation **
+
+-- 16 ax_Landwirtschaft
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                           info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 16,      coalesce(vegetationsmerkmal, 0), null, null,    name, null,        wkb_geometry 
+  FROM ax_landwirtschaft
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 17 ax_Wald
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                           info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 17,      coalesce(vegetationsmerkmal, 0), null, null,    name, bezeichnung, wkb_geometry 
+  FROM ax_wald
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 18 ax_Gehoelz
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info,  zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 18,      coalesce(funktion, 0), vegetationsmerkmal, null,    null, null,        wkb_geometry 
+  FROM ax_gehoelz
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 19 ax_Heide
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,  info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 19,      0,      null, null,    name, null,        wkb_geometry 
+  FROM ax_heide
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 20 ax_Moor
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,  info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 20,          0,  null, null,    name, null,        wkb_geometry 
+  FROM ax_moor
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 21 ax_Sumpf
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,  info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 21,          0,  null, null,    name, null,        wkb_geometry 
+  FROM ax_sumpf
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 22 ax_UnlandVegetationsloseFlaeche
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info,                 zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 22,      coalesce(funktion, 0), oberflaechenmaterial, null,    name, null,        wkb_geometry 
+  FROM ax_unlandvegetationsloseflaeche
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+-- (23 NummerierungslÃŒcke)
+
+-- ** Objektartengruppe: GewÃ€sser **
+
+-- 24 ax_Fliessgewaesser
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info, zustand,  name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 24,      coalesce(funktion, 0), null, zustand,  name, null,        wkb_geometry 
+  FROM ax_fliessgewaesser
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 25 ax_Hafenbecken
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info,    zustand,   name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 25,      coalesce(funktion, 0), nutzung, null,      name, null,        wkb_geometry 
+  FROM ax_hafenbecken
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 26 ax_StehendesGewaesser
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info, zustand, name, bezeichnung,         wkb_geometry)
+  SELECT             gml_id, beginnt, 26,      coalesce(funktion, 0), null, null,    name, gewaesserkennziffer, wkb_geometry 
+  FROM ax_stehendesgewaesser
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- 27 ax_Meer
+-- -------------------------------------
+INSERT INTO nutzung (gml_id, beginnt, nutz_id, class,                 info, zustand, name, bezeichnung, wkb_geometry)
+  SELECT             gml_id, beginnt, 27,      coalesce(funktion, 0), null, null,    name, bezeichnung, wkb_geometry 
+  FROM ax_meer
+  WHERE endet IS NULL
+--  AND st_geometrytype(wkb_geometry) = 'ST_Polygon'
+  ;
+
+
+-- Ergaenzung der SchlÃŒsseltabelle
+-- -------------------------------
+
+-- Fehlende EintrÃ€ge in der manuell gefÃŒllten Tabelle "nutzung_class" (Theorie, aus GeoInfoDok)
+-- durch EintrÃ€ge aus der zusammen gefassten Tabelle "nutzung" ergÃ€nzen (Praxis).
+
+-- Wenn in der Praxis weitere SchlÃŒssel vorkommen, die in der Tabelle "nutzung_class" noch nicht 
+-- enthalten sind, dann kann das bei Equivalenz-Abfragen (INNER JOIN) dazu fÃŒhren, dass die 
+-- Nutzungsarten-Abschnitte mit den dort fehlenden SchlÃŒsseln ausgelassen werden.
+
+INSERT INTO  nutzung_class ( nutz_id, class, label, blabla )
+  SELECT DISTINCT 
+         n.nutz_id,
+         n.class,
+        '(unbekannt)' AS label, 
+        'SchlÃŒssel wurde im PostProcessing aus der Tabelle "nutzung" ergÃ€nzt' AS blabla
+     FROM nutzung n  -- Daten aus Konverter -- die Praxis
+     WHERE NOT EXISTS 
+     ( SELECT c.class
+         FROM nutzung_class c -- vorbereitete Metadaten aus GeoInfoDok  -- die Theorie
+        WHERE n.nutz_id = c.nutz_id 
+          AND n.class = c.class
+      )
+      ORDER BY n.nutz_id, n.class ;
+
+-- END --
+
+-- ALKIS-Datenbank aus dem Konverter PostNAS
+
+-- Z u s a e t z l i c h e   S c h l u e s s e l t a b e l l e n
+
+-- Dieses Script fuegt der Datenbank einige Schluesseltabellen hinzu, die der 
+-- Konverter PostNAS NICHT aufbaut, weil sie nicht in den NAS-Daten enthalten sind.
+-- Die Schluessel sind der Dokumentation zu entnehmen.
+
+-- Die Tabellen werden vom Buchwerk-Auskunftsprogramm benoetigt.
+
+-- Dies Script kann nach dem Anlegen der Datenbank mit dem Script 'alkis_PostNAS_schema.sql' verarbeitet werden.
+
+-- Version
+--  2014-09-30  F.J. Umbenennung SchlÃŒsseltabellen (Prefix) von "ax_*" nach "v_*"
+--                   Der Prefix "ax_" sollte Objekt-Tabellen des ALKIS-Namenschemas vorbehalten sein.
+--                   Vorgehen bei Umstellung: neue Tabellen anlegen, Programme und Views umstellen, alte Tab. lÃ¶schen
+
+  SET client_encoding = 'UTF8';
+
+-- G e b Ã€ u d e - B a u w e i s e
+-- -------------------------------
+-- Wird z.B. benoetigt in Buchauskunft, Modul 'alkisgebaeudenw.php'
+-- Nicht im Grunddatenbestand NRW 
+-- Siehe http://www.kreis-euskirchen.de/service/downloads/geoinformation/Kreis_EU_Gebaeudeerfassung.pdf
+-- alter Name: ax_gebaeude_bauweise
+DROP TABLE v_geb_bauweise;
+CREATE TABLE v_geb_bauweise (
+    bauweise_id            integer, 
+    bauweise_beschreibung  character varying,
+    CONSTRAINT pk_v_geb_bauweise PRIMARY KEY (bauweise_id)
+  );
+
+COMMENT ON TABLE v_geb_bauweise 
+ IS 'GebÃ€ude, Spalte: Bauweise - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_gebaeude", Feld "bauweise".';
+
+COMMENT ON COLUMN v_geb_bauweise.bauweise_id           IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_geb_bauweise.bauweise_beschreibung IS 'Bezeichnung, Bedeutung';
+
+INSERT INTO v_geb_bauweise (bauweise_id, bauweise_beschreibung) VALUES (1100,'Freistehendes EinzelgebÃ€ude');
+INSERT INTO v_geb_bauweise (bauweise_id, bauweise_beschreibung) VALUES (1200,'Freistehender GebÃ€udeblock');
+INSERT INTO v_geb_bauweise (bauweise_id, bauweise_beschreibung) VALUES (1300,'Einzelgarage');
+INSERT INTO v_geb_bauweise (bauweise_id, bauweise_beschreibung) VALUES (1400,'Doppelgarage');
+INSERT INTO v_geb_bauweise (bauweise_id, bauweise_beschreibung) VALUES (1500,'Sammelgarage');
+INSERT INTO v_geb_bauweise (bauweise_id, bauweise_beschreibung) VALUES (2100,'DoppelhaushÃ€lfte');
+INSERT INTO v_geb_bauweise (bauweise_id, bauweise_beschreibung) VALUES (2200,'Reihenhaus');
+INSERT INTO v_geb_bauweise (bauweise_id, bauweise_beschreibung) VALUES (2300,'Haus in Reihe');
+INSERT INTO v_geb_bauweise (bauweise_id, bauweise_beschreibung) VALUES (2400,'Gruppenhaus');
+INSERT INTO v_geb_bauweise (bauweise_id, bauweise_beschreibung) VALUES (2500,'GebÃ€udeblock in geschlossener Bauweise');
+INSERT INTO v_geb_bauweise (bauweise_id, bauweise_beschreibung) VALUES (4000,'Offene Halle');
+
+
+-- G e b a e u d e - F u n k t i o n
+-- ---------------------------------
+-- Objektart = 'ax_gebaeude'
+-- alter Name: ax_gebaeude_funktion
+DROP TABLE v_geb_funktion; 
+CREATE TABLE v_geb_funktion (
+    wert        integer, 
+    bezeichner  character varying,
+    CONSTRAINT pk_v_geb_funktion_w PRIMARY KEY (wert)
+   );
+
+COMMENT ON TABLE  v_geb_funktion 
+ IS 'GebÃ€ude, Spalte: Funktion - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_gebaeude", Feld "funktion".';
+
+COMMENT ON COLUMN v_geb_funktion.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_geb_funktion.bezeichner IS 'Bezeichnung, Bedeutung';
+
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1000,'WohngebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1010,'Wohnhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1020,'Wohnheim');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1021,'Kinderheim');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1022,'Seniorenheim');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1023,'Schwesternwohnheim');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1024,'Studenten-, SchÃŒlerwohnheim');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1025,'Schullandheim');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1100,'Gemischt genutztes GebÃ€ude mit Wohnen');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1110,'WohngebÃ€ude mit Gemeinbedarf');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1120,'WohngebÃ€ude mit Handel und Dienstleistungen');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1121,'Wohn- und VerwaltungsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1122,'Wohn- und BÃŒrogebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1123,'Wohn- und GeschÃ€ftsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1130,'WohngebÃ€ude mit Gewerbe und Industrie');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1131,'Wohn- und BetriebsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1210,'Land- und forstwirtschaftliches WohngebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1220,'Land- und forstwirtschaftliches Wohn- und BetriebsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1221,'Bauernhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1222,'Wohn- und WirtschaftsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1223,'Forsthaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1310,'GebÃ€ude zur Freizeitgestaltung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1311,'Ferienhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1312,'Wochenendhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (1313,'Gartenhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2000,'GebÃ€ude fÃŒr Wirtschaft oder Gewerbe');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2010,'GebÃ€ude fÃŒr Handel und Dienstleistungen');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2020,'BÃŒrogebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2030,'Kreditinstitut');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2040,'Versicherung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2050,'GeschÃ€ftsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2051,'Kaufhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2052,'Einkaufszentrum');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2053,'Markthalle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2054,'Laden');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2055,'Kiosk');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2056,'Apotheke');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2060,'Messehalle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2070,'GebÃ€ude fÃŒr Beherbergung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2071,'Hotel, Motel, Pension');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2072,'Jugendherberge');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2073,'HÃŒtte (mit ÃbernachtungsmÃ¶glichkeit)');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2074,'CampingplatzgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2080,'GebÃ€ude fÃŒr Bewirtung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2081,'GaststÃ€tte, Restaurant');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2082,'HÃŒtte (ohne ÃbernachtungsmÃ¶glichkeit)');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2083,'Kantine');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2090,'Freizeit- und VergnÃŒgungsstÃ€tte');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2091,'Festsaal');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2092,'Kino');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2093,'Kegel-, Bowlinghalle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2094,'Spielkasino');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2100,'GebÃ€ude fÃŒr Gewerbe und Industrie');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2110,'ProduktionsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2111,'Fabrik');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2112,'BetriebsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2113,'Brauerei');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2114,'Brennerei');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2120,'Werkstatt');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2121,'SÃ€gewerk');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2130,'Tankstelle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2131,'WaschstraÃe, Waschanlage, Waschhalle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2140,'GebÃ€ude fÃŒr Vorratshaltung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2141,'KÃŒhlhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2142,'SpeichergebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2143,'Lagerhalle, Lagerschuppen, Lagerhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2150,'SpeditionsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2160,'GebÃ€ude fÃŒr Forschungszwecke');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2170,'GebÃ€ude fÃŒr Grundstoffgewinnung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2171,'Bergwerk');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2172,'Saline');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2180,'GebÃ€ude fÃŒr betriebliche Sozialeinrichtung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2200,'Sonstiges GebÃ€ude fÃŒr Gewerbe und Industrie');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2210,'MÃŒhle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2211,'WindmÃŒhle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2212,'WassermÃŒhle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2213,'SchÃ¶pfwerk');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2220,'Wetterstation');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2310,'GebÃ€ude fÃŒr Handel und Dienstleistung mit Wohnen');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2320,'GebÃ€ude fÃŒr Gewerbe und Industrie mit Wohnen');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2400,'BetriebsgebÃ€ude zu Verkehrsanlagen (allgemein)');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2410,'BetriebsgebÃ€ude fÃŒr StraÃenverkehr');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2411,'StraÃenmeisterei');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2412,'Wartehalle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2420,'BetriebsgebÃ€ude fÃŒr Schienenverkehr');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2421,'BahnwÃ€rterhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2422,'Lokschuppen, Wagenhalle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2423,'Stellwerk, Blockstelle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2424,'BetriebsgebÃ€ude des GÃŒterbahnhofs');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2430,'BetriebsgebÃ€ude fÃŒr Flugverkehr');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2431,'Flugzeughalle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2440,'BetriebsgebÃ€ude fÃŒr Schiffsverkehr');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2441,'Werft (Halle)');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2442,'Dock (Halle)');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2443,'BetriebsgebÃ€ude zur Schleuse');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2444,'Bootshaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2450,'BetriebsgebÃ€ude zur Seilbahn');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2451,'Spannwerk zur Drahtseilbahn');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2460,'GebÃ€ude zum Parken');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2461,'Parkhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2462,'Parkdeck');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2463,'Garage');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2464,'Fahrzeughalle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2465,'Tiefgarage');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2500,'GebÃ€ude zur Versorgung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2501,'GebÃ€ude zur Energieversorgung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2510,'GebÃ€ude zur Wasserversorgung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2511,'Wasserwerk');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2512,'Pumpstation');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2513,'WasserbehÃ€lter');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2520,'GebÃ€ude zur ElektrizitÃ€tsversorgung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2521,'ElektrizitÃ€tswerk');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2522,'Umspannwerk');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2523,'Umformer');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2527,'ReaktorgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2528,'Turbinenhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2529,'Kesselhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2540,'GebÃ€ude fÃŒr Fernmeldewesen');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2560,'GebÃ€ude an unterirdischen Leitungen');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2570,'GebÃ€ude zur Gasversorgung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2571,'Gaswerk');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2580,'Heizwerk');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2590,'GebÃ€ude zur Versorgungsanlage');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2591,'Pumpwerk (nicht fÃŒr Wasserversorgung)');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2600,'GebÃ€ude zur Entsorgung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2610,'GebÃ€ude zur Abwasserbeseitigung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2611,'GebÃ€ude der KlÃ€ranlage');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2612,'Toilette');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2620,'GebÃ€ude zur Abfallbehandlung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2621,'MÃŒllbunker');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2622,'GebÃ€ude zur MÃŒllverbrennung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2623,'GebÃ€ude der Abfalldeponie');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2700,'GebÃ€ude fÃŒr Land- und Forstwirtschaft');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2720,'Land- und forstwirtschaftliches BetriebsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2721,'Scheune');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2723,'Schuppen');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2724,'Stall');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2726,'Scheune und Stall');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2727,'Stall fÃŒr TiergroÃhaltung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2728,'Reithalle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2729,'WirtschaftsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2732,'AlmhÃŒtte');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2735,'Jagdhaus, JagdhÃŒtte');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2740,'Treibhaus, GewÃ€chshaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2741,'Treibhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (2742,'GewÃ€chshaus, verschiebbar');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3000,'GebÃ€ude fÃŒr Ã¶ffentliche Zwecke');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3010,'VerwaltungsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3011,'Parlament');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3012,'Rathaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3013,'Post');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3014,'Zollamt');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3015,'Gericht');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3016,'Botschaft, Konsulat');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3017,'Kreisverwaltung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3018,'Bezirksregierung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3019,'Finanzamt');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3020,'GebÃ€ude fÃŒr Bildung und Forschung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3021,'Allgemein bildende Schule');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3022,'Berufsbildende Schule');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3023,'HochschulgebÃ€ude (Fachhochschule, UniversitÃ€t)');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3024,'Forschungsinstitut');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3030,'GebÃ€ude fÃŒr kulturelle Zwecke');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3031,'Schloss');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3032,'Theater, Oper');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3033,'KonzertgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3034,'Museum');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3035,'Rundfunk, Fernsehen');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3036,'VeranstaltungsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3037,'Bibliothek, BÃŒcherei');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3038,'Burg, Festung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3040,'GebÃ€ude fÃŒr religiÃ¶se Zwecke');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3041,'Kirche');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3042,'Synagoge');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3043,'Kapelle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3044,'Gemeindehaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3045,'Gotteshaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3046,'Moschee');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3047,'Tempel');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3048,'Kloster');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3050,'GebÃ€ude fÃŒr Gesundheitswesen');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3051,'Krankenhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3052,'Heilanstalt, Pflegeanstalt, Pflegestation');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3053,'Ãrztehaus, Poliklinik');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3060,'GebÃ€ude fÃŒr soziale Zwecke');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3061,'Jugendfreizeitheim');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3062,'Freizeit-, Vereinsheim, Dorfgemeinschafts-, BÃŒrgerhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3063,'SeniorenfreizeitstÃ€tte');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3064,'Obdachlosenheim');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3065,'Kinderkrippe, Kindergarten, KindertagesstÃ€tte');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3066,'Asylbewerberheim');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3070,'GebÃ€ude fÃŒr Sicherheit und Ordnung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3071,'Polizei');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3072,'Feuerwehr');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3073,'Kaserne');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3074,'Schutzbunker');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3075,'Justizvollzugsanstalt');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3080,'FriedhofsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3081,'Trauerhalle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3082,'Krematorium');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3090,'EmpfangsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3091,'BahnhofsgebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3092,'FlughafengebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3094,'GebÃ€ude zum U-Bahnhof');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3095,'GebÃ€ude zum S-Bahnhof');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3097,'GebÃ€ude zum Busbahnhof');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3098,'EmpfangsgebÃ€ude Schifffahrt');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3100,'GebÃ€ude fÃŒr Ã¶ffentliche Zwecke mit Wohnen');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3200,'GebÃ€ude fÃŒr Erholungszwecke');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3210,'GebÃ€ude fÃŒr Sportzwecke');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3211,'Sport-, Turnhalle');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3212,'GebÃ€ude zum Sportplatz');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3220,'BadegebÃ€ude');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3221,'Hallenbad');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3222,'GebÃ€ude im Freibad');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3230,'GebÃ€ude im Stadion');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3240,'GebÃ€ude fÃŒr Kurbetrieb');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3241,'BadegebÃ€ude fÃŒr medizinische Zwecke');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3242,'Sanatorium');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3260,'GebÃ€ude im Zoo');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3261,'EmpfangsgebÃ€ude des Zoos');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3262,'Aquarium, Terrarium, Voliere');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3263,'Tierschauhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3264,'Stall im Zoo');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3270,'GebÃ€ude im botanischen Garten');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3271,'EmpfangsgebÃ€ude des botanischen Gartens');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3272,'GewÃ€chshaus (Botanik)');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3273,'Pflanzenschauhaus');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3280,'GebÃ€ude fÃŒr andere Erholungseinrichtung');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3281,'SchutzhÃŒtte');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (3290,'Touristisches Informationszentrum');
+INSERT INTO v_geb_funktion (wert, bezeichner) VALUES (9998,'Nach Quellenlage nicht zu spezifizieren');
+
+
+-- W e i t e r e   G e b a e u d e - F u n k t i o n
+-- -------------------------------------------------
+-- alter Name: ax_gebaeude_weiterefunktion
+DROP TABLE v_geb_weiterefkt;
+CREATE TABLE v_geb_weiterefkt (
+    wert        integer,
+    bezeichner  character varying,
+    erklaer     character varying,
+    CONSTRAINT pk_v_geb_weitfkt_w PRIMARY KEY (wert)
+   );
+
+COMMENT ON TABLE  v_geb_weiterefkt 
+ IS 'GebÃ€ude, Spalte: Weitere Funktion - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_gebaeude", Feld "weiterefunktion".';
+
+COMMENT ON COLUMN v_geb_weiterefkt.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_geb_weiterefkt.bezeichner IS 'Lange Bezeichnung';
+COMMENT ON COLUMN v_geb_weiterefkt.erklaer    IS 'ALKIS erklÃ€rt uns die Welt';
+
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1000, 'Bankfiliale',    '"Bankfiliale" ist eine Einrichtung in der GeldgeschÃ€fte getÃ€tigt werden.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1010, 'Hotel',          '"Hotel" ist ein Beherbergungs- und/oder Verpflegungsbetrieb.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1020, 'Jugendherberge', '"Jugendherberge" ist eine zur FÃ¶rderung von Jugendreisen dienende Aufenthalts- und ÃbernachtungsstÃ€tte.');	
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1030, 'GaststÃ€tte',     '"GaststÃ€tte" ist eine Einrichtung, in der gegen Entgelt Mahlzeiten und GetrÃ€nke zum sofortigen Verzehr angeboten werden.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1040, 'Kino',           '"Kino" ist eine Einrichtung, in der alle Arten von Filmen bzw. Lichtspielen fÃŒr ein Publikum abgespielt werden.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1050, 'Spielkasino',    '"Spielkasino" ist eine Einrichtung, in der Ã¶ffentlich zugÃ€nglich staatlich konzessioniertes GlÃŒcksspiel betrieben wird.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1060, 'Tiefgarage',     '"Tiefgarage" ist ein Bauwerk unterhalb der ErdoberflÃ€che, in dem Fahrzeuge abgestellt werden.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1070, 'Parkdeck',       '"Parkdeck" ist eine FlÃ€che auf einem GebÃ€ude, auf der Fahrzeuge abgestellt werden.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1080, 'Toilette',       '"Toilette" ist eine Einrichtung mit sanitÃ€ren Vorrichtungen zum Verrichtung der Notdurft.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1090, 'Post',           '"Post" ist eine Einrichtung, von der aus Briefe, Pakete befÃ¶rdert und weitere Dienstleistungen angeboten werden.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1100, 'Zoll',           '"Zoll" ist eine Einrichtung der Zollabfertigung.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1110, 'Theater',        '"Theater" ist eine Einrichtung, in der BÃŒhnenstÃŒcke aufgefÃŒhrt werden.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1120, 'Museum',         '"Museum" ist eine Einrichtung in der Sammlungen von (historischen) Objekten oder Reproduktionen davon ausgestellt werden.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1130, 'Bibliothek',     '"Bibliothek" ist eine Einrichtung, in der BÃŒcher und Zeitschriften gesammelt, aufbewahrt und ausgeliehen werden.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1140, 'Kapelle',        '"Kapelle" ist eine Einrichtung fÃŒr (christliche) gottesdienstliche Zwecke.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1150, 'Moschee',        '"Moschee" ist ein Einrichtung, in der sich Muslime zu Gottesdiensten versammeln oder zu anderen Zwecken treffen.');	
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1160, 'Tempel',         '');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1170, 'Apotheke',       '"Apotheke" ist ein GeschÃ€ft, in dem Arzneimittel hergestellt und verkauft werden.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1180, 'Polizeiwache',   '"Polizeiwache" ist eine Dienststelle der Polizei.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1190, 'Rettungsstelle', '"Rettungsstelle" ist eine Einrichtung zur Aufnahme, Erstbehandlung und gezielten Weiterverlegung von Patienten mit Erkrankungen und UnfÃ€llen aller Art.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1200, 'Touristisches Informationszentrum', '"Touristisches Informationszentrum" ist eine Auskunftsstelle fÃŒr Touristen.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1210, 'Kindergarten',    '"Kindergarten" ist eine Einrichtung, in der Kinder im Vorschulalter betreut werden.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1220, 'Arztpraxis',      '"Arztpraxis" ist die ArbeitsstÃ€tte eines Arztes.');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1230, 'Supermarkt',      '');
+INSERT INTO v_geb_weiterefkt (wert, bezeichner, erklaer) VALUES (1240, 'GeschÃ€ft',        '');
+
+
+-- G e b Ã€ u d e   D a c h f o r m
+-- -------------------------------
+-- alter Name: ax_gebaeude_dachform
+DROP TABLE v_geb_dachform;
+CREATE TABLE v_geb_dachform 
+   (wert        integer, 
+    bezeichner  character varying,
+    CONSTRAINT pk_v_geb_dach_w PRIMARY KEY (wert)
+   );
+
+COMMENT ON TABLE  v_geb_dachform 
+ IS 'GebÃ€ude, Spalte: Dachform - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_gebaeude", Feld "dachform".';
+
+COMMENT ON COLUMN v_geb_dachform.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_geb_dachform.bezeichner IS 'Lange Bezeichnung';
+
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (1000, 'Flachdach');
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (2100, 'Pultdach');
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (2200, 'Versetztes Pultdach');
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (3100, 'Satteldach');
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (3200, 'Walmdach');
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (3300, 'KrÃŒppelwalmdach');
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (3400, 'Mansardendach');
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (3500, 'Zeltdach');
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (3600, 'Kegeldach');
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (3700, 'Kuppeldach');
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (3800, 'Sheddach');
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (3900, 'Bogendach');
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (4000, 'Turmdach');
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (5000, 'Mischform');
+INSERT INTO v_geb_dachform (wert, bezeichner) VALUES (9999, 'Sonstiges');
+
+
+-- G e b Ã€ u d e   Z u s t a n d
+-- -----------------------------
+-- alter Name: ax_gebaeude_zustand
+DROP TABLE v_geb_zustand; 
+CREATE TABLE v_geb_zustand 
+   (wert        integer, 
+    bezeichner  character varying,
+    erklaer     character varying,
+    CONSTRAINT pk_v_geb_zustand_w PRIMARY KEY (wert)
+   );
+
+COMMENT ON TABLE  v_geb_zustand 
+ IS 'GebÃ€ude, Spalte: Zustand - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "___", Feld "___".';
+
+COMMENT ON COLUMN v_geb_zustand.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_geb_zustand.erklaer    IS 'ggf. zusÃ€tzliche ErklÃ€rung';
+COMMENT ON COLUMN v_geb_zustand.bezeichner IS 'Lange Bezeichnung';
+
+INSERT INTO v_geb_zustand (wert, bezeichner) VALUES (1000, 'In behelfsmÃ€Ãigem Zustand');
+INSERT INTO v_geb_zustand (wert, bezeichner) VALUES (2000, 'In ungenutztem Zustand');
+INSERT INTO v_geb_zustand (wert, bezeichner, erklaer) VALUES (2100, 'AuÃer Betrieb, stillgelegt, verlassen', '"AuÃer Betrieb, stillgelegt, verlassen" bedeutet, dass das GebÃ€ude auf Dauer nicht mehr bewohnt oder genutzt wird');
+INSERT INTO v_geb_zustand (wert, bezeichner, erklaer) VALUES (2200, 'Verfallen, zerstÃ¶rt', '"Verfallen, zerstÃ¶rt" bedeutet, dass sich der ursprÃŒngliche Zustand des GebÃ€udes durch menschliche oder zeitliche Einwirkungen so verÃ€ndert hat, dass eine Nutzung nicht mehr mÃ¶glich ist.');
+INSERT INTO v_geb_zustand (wert, bezeichner) VALUES (2300, 'Teilweise zerstÃ¶rt');
+INSERT INTO v_geb_zustand (wert, bezeichner) VALUES (3000, 'Geplant und beantragt');
+INSERT INTO v_geb_zustand (wert, bezeichner) VALUES (4000, 'Im Bau');
+
+
+-- LageZurErdoberflaeche
+-- ---------------------
+-- nur 2 Werte:
+-- 1200, Unter der ErdoberflÃ€che
+--	    "Unter der ErdoberflÃ€che" bedeutet, dass sich das GebÃ€ude unter der ErdoberflÃ€che befindet.
+-- 1400, AufgestÃ€ndert
+--	    "AufgestÃ€ndert" bedeutet, dass ein GebÃ€ude auf StÃŒtzen steht.
+
+
+-- Dachgeschossausbau
+-- ------------------
+-- nur 4 Werte:
+-- 1000 Nicht ausbaufÃ€hig
+-- 2000 AusbaufÃ€hig
+-- 3000 Ausgebaut
+-- 4000 AusbaufÃ€higkeit unklar
+
+
+-- B u c h u n g s t s t e l l e  -  B u c h u n g s a r t
+-- -------------------------------------------------------
+-- Objektart = 'ax_buchungsstelle'
+-- alter Name: ax_buchungsstelle_buchungsart
+DROP TABLE v_bs_buchungsart; 
+CREATE TABLE v_bs_buchungsart (
+   wert integer,
+   bezeichner character varying,
+   CONSTRAINT pk_v_bsba_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE  v_bs_buchungsart 
+ IS 'Buchungsstelle (GrundstÃŒck), Spalte: Buchungsart - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_buchungsstelle", Feld "buchungsart".';
+
+COMMENT ON COLUMN v_bs_buchungsart.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_bs_buchungsart.bezeichner IS 'Lange Bezeichnung';
+
+-- 51 Werte
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (1100,'GrundstÃŒck');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (1101,'Aufgeteiltes GrundstÃŒck WEG');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (1102,'Aufgeteiltes GrundstÃŒck Par. 3 Abs. 4 GBO');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (1200,'Ungetrennter Hofraum');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (1301,'Wohnungs-/Teileigentum');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (1302,'Miteigentum Par. 3 Abs. 4 GBO');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (1303,'Anteil am ungetrennten Hofraum');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (1401,'Aufgeteilter Anteil Wohnungs-/Teileigentum');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (1402,'Aufgeteilter Anteil Miteigentum Par. 3 Abs. 4 GBO');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (1403,'Aufgeteilter Anteil am ungetrennten Hofraum');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (1501,'Anteil an Wohnungs-/Teileigentumsanteil');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (1502,'Anteil an Miteigentumsanteil Par. 3 Abs. 4 GBO');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (1503,'Anteil am Anteil zum ungetrennten Hofraum');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2101,'Erbbaurecht');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2102,'Untererbbaurecht');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2103,'GebÃ€udeeigentum');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2104,'Fischereirecht');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2105,'Bergwerksrecht');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2106,'Nutzungsrecht');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2107,'Realgewerberecht');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2108,'Gemeinderecht');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2109,'Stavenrecht');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2110,'Hauberge');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2201,'Aufgeteiltes Erbbaurecht WEG');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2202,'Aufgeteiltes Untererbbaurecht WEG');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2203,'Aufgeteiltes Recht Par. 3 Abs. 4 GBO');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2204,'Aufgeteiltes Recht, KÃ¶rperschaft');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2205,'Aufgeteiltes GebÃ€udeeigentum');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2301,'Wohnungs-/Teilerbbaurecht');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2302,'Wohnungs-/Teiluntererbbaurecht');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2303,'Erbbaurechtsanteil Par. 3 Abs. 4 GBO');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2304,'Anteiliges Recht, KÃ¶rperschaft');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2305,'Anteil am GebÃ€udeeigentum');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2401,'Aufgeteilter Anteil Wohnungs-/Teilerbbaurecht');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2402,'Aufgeteilter Anteil Wohnungs-/Teiluntererbbaurecht');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2403,'Aufgeteilter Erbbaurechtsanteil Par. 3 Abs. 4 GBO');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2404,'Aufgeteiltes anteiliges Recht, KÃ¶rperschaft');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2405,'Aufgeteilter Anteil am GebÃ€udeeigentum');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2501,'Anteil am Wohnungs-/Teilerbbaurechtsanteil');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2502,'Anteil am Wohnungs-/Teiluntererbbaurechtsanteil');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2503,'Anteil am Erbbaurechtsanteil Par. 3 Abs. 4 GBO');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2504,'Anteil am anteiligen Recht, KÃ¶rperschaft');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (2505,'Anteil am Anteil zum GebÃ€udeeigentum');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (3100,'Vermerk subjektiv dinglicher Rechte (Par. 9 GBO)');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (4100,'Stockwerkseigentum');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (5101,'Von Buchungspflicht befreit Par. 3 Abs. 2 GBO');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (5200,'AnliegerflurstÃŒck');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (5201,'Anliegerweg');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (5202,'Anliegergraben');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (5203,'Anliegerwasserlauf, AnliegergewÃ€sser');
+INSERT INTO v_bs_buchungsart (wert, bezeichner) VALUES (6101,'Nicht gebuchtes Fischereirecht');
+
+
+-- N a m e n s n u m m e r  -  E i g e n t u e m e r a r t
+-- -------------------------------------------------------
+-- Objektart = 'AX_Namensnummer'
+-- alter Name: ax_namensnummer_eigentuemerart
+DROP TABLE v_namnum_eigart; 
+CREATE TABLE v_namnum_eigart (
+   wert integer,
+   bezeichner character varying,
+   CONSTRAINT pk_v_nnea_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE  v_namnum_eigart 
+ IS 'Namensnummer, Spalte: EigentÃŒmerart - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_namensnummer", Feld "eigentuemerart".';
+
+COMMENT ON COLUMN v_namnum_eigart.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_namnum_eigart.bezeichner IS 'Lange Bezeichnung';
+
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (1000,'NatÃŒrliche Personen');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (1100,'NatÃŒrliche Person - Alleineigentum oder Ehepartner');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (1200,'NatÃŒrliche Person - Wohnsitz im Land');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (1300,'NatÃŒrliche Person - Wohnsitz auÃerhalb des Landes');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (1500,'NatÃŒrliche Person - Gemeinschaftseigentum');
+
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (2000,'Juristische Personen');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (2100,'GemeinnÃŒtzige Bau-, Wohnungs- oder Siedlungsgesellschaft oder -genossenschaft einschlieÃlich HeimstÃ€tte');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (2200,'Sonstige gemeinnÃŒtzige Institution (TrÃ€ger von KrankenhÃ€usern, Altenheimen usw.) ');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (2300,'Privates Wohnungsunternehmen, private Baugesellschaft u.Ã€.');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (2400,'Kreditinstitut');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (2500,'Versicherungsunternehmen');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (2900,'Andere Unternehmen, Gesellschaften usw.');
+
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (3000,'KÃ¶rperschaften');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (3100,'Stiftung');
+
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (4000,'Kirchliches Eigentum');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (4100,'Evangelische Kirche');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (4200,'Katholische Kirche ');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (4900,'Andere Kirchen, Religionsgemeinschaften usw.');
+
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5100,'Bundesrepublik Deutschland');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5101,'Bundesrepublik Deutschland, BundesstraÃenverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5102,'Bundesrepublik Deutschland, Bundeswehrverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5103,'Bundesrepublik Deutschland, Forstverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5104,'Bundesrepublik Deutschland, Finanzverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5105,'Bundesrepublik Deutschland, Zivilschutz');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5106,'Bundesrepublik Deutschland, WasserstraÃenverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5107,'Bundesrepublik Deutschland, BundeseisenbahnvermÃ¶gen');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5210,'Eigentum des Volkes nach DDR-Recht');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5220,'Eigentum der Genossenschaften und deren Einrichtungen');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5230,'Eigentum der gesellschaftlichen Organisationen und deren Einrichtungen ');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5240,'Kommunale GebietskÃ¶rperschaften nach DDR-Recht');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5300,'AuslÃ€ndischer Staat');
+
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5400,'Kreis');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5500,'Gemeinde');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5600,'Kommunale GebietskÃ¶rperschaften ');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5700,'Andere GebietskÃ¶rperschaften, RegionalverbÃ€nde usw.');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5800,'ZweckverbÃ€nde, Kommunale Betriebe');
+
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5920,'Eigenes Bundesland');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5921,'Eigenes Bundesland, Denkmalpflege');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5922,'Eigenes Bundesland, DomÃ€nenverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5923,'Eigenes Bundesland, Eichverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5924,'Eigenes Bundesland, Finanzverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5925,'Eigenes Bundesland, Forstverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5926,'Eigenes Bundesland, Gesundheitswesen');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5927,'Eigenes Bundesland, Polizeiverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5928,'Eigenes Bundesland, innere Verwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5929,'Eigenes Bundesland, Justizverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5930,'Eigenes Bundesland, Kultusverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5931,'Eigenes Bundesland, Landespflanzenschutzverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5932,'Eigenes Bundesland, Arbeitsverwaltung ');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5933,'Eigenes Bundesland, Sozialwesen');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5934,'Eigenes Bundesland, Landesbetrieb StraÃen und Verkehr');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5935,'Eigenes Bundesland, Umweltverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5936,'Eigenes Bundesland, Vermessungs- und Katasterverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5937,'Eigenes Bundesland, Wasserwirtschaftsverwaltung ');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5938,'Eigenes Bundesland, Wirtschaftsverwaltung');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (5939,'Eigenes Bundesland, Liegenschafts- und Baubetreuung (LBB)');
+
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6000,'Anderes Bundesland (allg.)');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6001,'Schleswig-Holstein');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6002,'Hamburg');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6003,'Niedersachsen');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6004,'Bremen');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6005,'Nordrhein-Westfalen');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6006,'Hessen');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6007,'Rheinland-Pfalz');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6008,'Baden-WÃŒrttemberg');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6009,'Bayern');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6010,'Saarland');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6012,'Brandenburg');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6011,'Berlin');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6013,'Mecklenburg-Vorpommern');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6014,'Sachsen');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6015,'Sachsen-Anhalt');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (6016,'ThÃŒringen');
+
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (7100,'Deutsche Bahn AG');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (8000,'Herrenlos');
+INSERT INTO v_namnum_eigart (wert, bezeichner) VALUES (9000,'EigentÃŒmer unbekannt');
+
+-- In der Praxis kommt vor:
+--   SELECT DISTINCT eigentuemerart FROM ax_namensnummer ORDER BY eigentuemerart;
+
+
+-- B a u - , R a u m -  oder  B o d e n - O r d n u n g s r e c h t  -  A r t  d e r  F e s t l e g u n g
+-- ------------------------------------------------------------------------------------------------------
+-- Objektart = 'ax_bauraumoderbodenordnungsrecht'
+-- alter Name: ax_bauraumoderbodenordnungsrecht_artderfestlegung
+DROP TABLE v_baurecht_adf; 
+CREATE TABLE v_baurecht_adf (
+	wert        integer, 
+	bezeichner  character varying,
+	CONSTRAINT pk_v_brecht_artfest_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE  v_baurecht_adf 
+IS 'Bau-, Raum- oder Bodenordnungsrecht, Spalte: Art der Festlegung - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_bauraumoderbodenordnungsrecht", Feld "artderfestlegung".';
+
+COMMENT ON COLUMN v_baurecht_adf.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_baurecht_adf.bezeichner IS 'Lange Bezeichnung';
+
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1700,'Festlegung nach Baugesetzbuch - Allgemeines StÃ€dtebaurecht');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1710,'Bebauungsplan');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1720,'VerÃ€nderungssperre nach Baugesetzbuch');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1730,'Vorkaufrechtssatzung');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1740,'Enteignungsverfahren');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1750,'Umlegung nach dem BauGB');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1760,'Bauland');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1770,'Vereinfachte Umlegung');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1780,'Vorhaben- und ErschlieÃungsplan');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1790,'FlÃ€chennutzungsplan');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1800,'Festlegung nach Baugesetzbuch - Besonderes StÃ€dtebaurecht');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1810,'StÃ€dtebauliche EntwicklungsmaÃnahme');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1811,'StÃ€dtebauliche EntwicklungsmaÃnahme (Beschluss zu vorbereitenden Untersuchungen gefasst)');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1820,'Erhaltungssatzung');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1821,'StÃ€dtebauliches Erhaltungsgebiet');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1822,'Soziales Erhaltungsgebiet');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1823,'Erhaltungsgebiet zur stÃ€dtebaulichen Umstrukturierung');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1824,'Soziales Erhaltungsgebiet (Aufstellungsbeschluss gefasst)');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1830,'StÃ€dtebauliche Gebote');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1840,'Sanierung');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1841,'Sanierung (Beschluss zu vorbereitenden Untersuchungen gefasst)');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (1900,'Wohnungsbauerleichterungsgesetz');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2100,'Flurbereinigungsgesetz');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2110,'Flurbereinigung (Par. 1, 37 FlurbG)');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2120,'Vereinfachtes Flurbereinigungsverfahren (Par. 86 FlurbG)');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2130,'Unternehmensflurbereinigung (nach Par. 87 oder 90 FlurbG)');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2140,'Beschleunigtes Zusammenlegungsverfahren (Par. 91 FlurbG)');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2150,'Freiwilliger Landtausch (Par. 103a FlurbG)');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2160,'Verfahren nach dem Gemeinheitsteilungsgesetz');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2170,'Verfahren nach dem Gemeinschaftswaldgesetz');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2180,'Freiwilliger Nutzungstausch');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2200,'Verfahren nach dem Landwirtschaftsanpassungsgesetz');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2210,'Flurneuordnung');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2220,'Freiwilliger Landtausch (Par. 54 LwAnpG)');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2230,'Bodenordnungsverfahren (Par. 56 LwAnpG)');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2240,'ZusammenfÃŒhrung von Boden- und GebÃ€udeeigentum (Par. 64 LwAnpG)');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2300,'Bodensonderungsgesetz');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2310,'Unvermessenes Eigentum');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2320,'Unvermessenes Nutzungsrecht');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2330,'ErgÃ€nzende Bodenneuordnung');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2340,'Komplexe Bodenneuordnung');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2400,'VermÃ¶genszuordnungsgesetz');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2410,'VermÃ¶genszuordnung nach Plan');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2411,'VermÃ¶genszuordnung nach dem Aufteilungsplan');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2412,'VermÃ¶genszuordnung nach dem Zuordnungsplan');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2500,'Landesraumordnungsgesetz');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2510,'Wasservorranggebiete');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2600,'Bauordnung');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2610,'Baulast');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2611,'BegÃŒnstigende Baulast');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2612,'Belastende Baulast');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2700,'Grenzfeststellungsverfahren nach Hamb. Wassergesetz');
+INSERT INTO v_baurecht_adf (wert, bezeichner) VALUES (2800,'VerkehrsflÃ€chenbereinigung');
+
+
+-- B o d e n s c h a e t z u n g -  K u l t u r a r t
+-- --------------------------------------------------
+-- alter Name: ax_bodenschaetzung_kulturart
+DROP TABLE v_bschaetz_kulturart;
+CREATE TABLE v_bschaetz_kulturart (
+    wert integer,
+	kurz character varying,
+    bezeichner character varying,
+    CONSTRAINT pk_v_bschaetz_kulturart_w  PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_bschaetz_kulturart 
+ IS 'BodenschÃ€tzung, Spalte: Kulturart - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_bodenschaetzung", Feld "kulturart".';
+
+COMMENT ON COLUMN v_bschaetz_kulturart.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_bschaetz_kulturart.kurz       IS 'KÃŒrzel';
+COMMENT ON COLUMN v_bschaetz_kulturart.bezeichner IS 'Lange Bezeichnung';
+
+INSERT INTO v_bschaetz_kulturart (wert, kurz, bezeichner) VALUES (1000,'A'  , 'Ackerland (A)');
+INSERT INTO v_bschaetz_kulturart (wert, kurz, bezeichner) VALUES (2000,'AGr', 'Acker-GrÃŒnland (AGr)');
+INSERT INTO v_bschaetz_kulturart (wert, kurz, bezeichner) VALUES (3000,'Gr' , 'GrÃŒnland (Gr)');
+INSERT INTO v_bschaetz_kulturart (wert, kurz, bezeichner) VALUES (4000,'GrA', 'GrÃŒnland-Acker (GrA)');
+
+
+-- B o d e n s c h a e t z u n g  -  B o d e n a r t
+-- -------------------------------------------------
+-- alter Name: ax_bodenschaetzung_bodenart
+DROP TABLE v_bschaetz_bodenart;
+CREATE TABLE v_bschaetz_bodenart (
+    wert integer,
+    kurz character varying,
+    bezeichner character varying,
+    CONSTRAINT pk_v_bschaetz_bodenart_w  PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_bschaetz_bodenart 
+ IS 'BodenschÃ€tzung, Spalte: Bodenart - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_bodenschaetzung", Feld "bodenart".';
+
+COMMENT ON COLUMN v_bschaetz_bodenart.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_bschaetz_bodenart.kurz       IS 'KÃŒrzel, Kartenanzeige';
+COMMENT ON COLUMN v_bschaetz_bodenart.bezeichner IS 'Lange Bezeichnung';
+
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (1100,'S',     'Sand (S)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (2100,'lS',    'Lehmiger Sand (lS)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (3100,'L',     'Lehm (L)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (4100,'T',     'Ton (T)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (5000,'Mo',    'Moor (Mo)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (1200,'Sl',    'Anlehmiger Sand (Sl)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (2200,'SL',    'Stark lehmiger Sand (SL)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (3200,'sL',    'Sandiger Lehm (sL)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (4200,'LT',    'Schwerer Lehm (LT)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (6110,'SMo',   'Sand, Moor (SMo)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (6120,'lSMo',  'Lehmiger Sand, Moor (lSMo)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (6130,'LMo',   'Lehm, Moor (LMo)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (6140,'TMo',   'Ton, Moor (TMo)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (6210,'MoS',   'Moor,Sand (MoS)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (6220,'MolS',  'Moor, Lehmiger Sand (MolS)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (6230,'MoL',   'Moor, Lehm (MoL)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (6240,'MoT',   'Moor, Ton (MoT)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7110,'S/sL',  'Sand auf sandigem Lehm (S/sL)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7130,'S/LT',  'Sand auf schwerem Lehm (S/LT)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7210,'Sl/L',  'Anlehmiger Sand auf Lehm (Sl/L)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7220,'Sl/LT', 'Anlehmiger Sand auf schwerem Lehm (Sl/LT)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7230,'Sl/T',  'Anlehmiger Sand auf Ton (Sl/T)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7310,'lS/LT', 'Lehmiger Sand auf schwerem Lehm (lS/LT)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7320,'lS/S',  'Lehmiger Sand auf Sand (lS/S)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7400,'SL/T)', 'Stark lehmiger Sand auf Ton (SL/T)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7510,'T/SL',  'Ton auf stark lehmigen Sand (T/SL)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7530,'T/Sl',  'Ton auf anlehmigen Sand (T/Sl)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7610,'LT/lS', 'Schwerer Lehm auf lehmigen Sand (LT/lS)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7620,'LT/Sl', 'Schwerer Lehm auf anlehmigen Sand (LT/Sl)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7630,'LT/S',  'Schwerer Lehm auf Sand (LT/S)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7710,'L/Sl',  'Lehm auf anlehmigen Sand (L/Sl)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7800,'sL/S',  'Sandiger Lehm auf Sand (sL/S)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7120,'S/L',   'Sand auf Lehm (S/L)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7140,'S/T',   'Sand auf Ton (S/T)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7330,'lS/T',  'Lehmiger Sand auf Ton (lS/T)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7520,'T/lS',  'Ton auf lehmigen Sand (T/lS)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7540,'T/S',   'Ton auf Sand (T/S)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (7720,'L/S',   'Lehm auf Sand (L/S)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (8110,'S/Mo',  'Sand auf Moor (S/Mo)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (8120,'lS/Mo', 'Lehmiger Sand auf Moor (lS/Mo)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (8130,'L/Mo',  'Lehm auf Moor (L/Mo)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (8140,'T/Mo',  'Ton auf Moor (T/Mo)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (8210,'Mo/S',  'Moor auf Sand (Mo/S)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (8220,'Mo/lS', 'Moor auf lehmigen Sand (Mo/lS)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (8230,'Mo/L',  'Moor auf Lehm (Mo/L)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (8240,'Mo/T',  'Moor auf Ton (Mo/T)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9120,'L+Mo',  'Bodenwechsel vom Lehm zu Moor (L+Mo)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9130,'lSg',   'Lehmiger Sand mit starkem Steingehalt (lSg)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9140,'Lg',    'Lehm mit starkem Steingehalt (Lg)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9150,'lS+St', 'lehmiger Sand mit Steinen und BlÃ¶cken (lS+St)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9160,'L+St',  'Lehm mit Steinen und BlÃ¶cken (L+St)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9170,'St+lS', 'Steine und BlÃ¶cke mit lehmigem Sand (St+lS)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9180,'St+L',  'Steine und BlÃ¶cke mit Lehm (St+L)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9190,'lS+Fe', 'lehmiger Sand mit Felsen (lS+Fe)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9200,'L+Fe',  'Lehm mit Felsen (L+Fe)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9210,'Fe+lS', 'Felsen mit lehmigem Sand (Fe+lS)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9220,'Fe+L',  'Felsen mit Lehm (Fe+L)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9310,'S/lS',  'Sand auf lehmigen Sand (S/lS)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9320,'Sl/Me', 'Anlehmiger Sand auf Mergel (Sl/Me)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9330,'Sl/sL', 'Anlehmiger Sand auf sandigem Lehm (Sl/sL)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9340,'lS/L',  'Lehmiger Sand auf Lehm (lS/L)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9350,'lS/Me', 'Lehmiger Sand auf Mergel (lS/Me)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9360,'lS/sL', 'Lehmiger Sand auf sandigem Lehm (lS/sL)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9370,'lSMe',  'Lehmiger Sand, Mergel (lSMe)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9380,'lSMo/Me','Lehmiger Sand, Moor auf Mergel (lSMo/Me)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9390,'SlMo',  'Anlehmiger Sand, Moor (SlMo)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9410,'L/Me',  'Lehm auf Mergel (L/Me)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9420,'LMo/Me','Lehm, Moor auf Mergel (LMo/Me)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9430,'LT/Mo', 'Schwerer Lehm auf Moor (LT/Mo)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9440,'T/Me',  'Ton auf Mergel (T/Me)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9450,'Mo/Me', 'Moor auf Mergel (Mo/Me)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9460,'MoL/Me','Moor, Lehm auf Mergel (MoL/Me)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9470,'MoMe',  'Moor, Mergel (MoMe)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9480,'LÃ¶D',   'LÃ¶ÃDiluvium (LÃ¶D)');
+INSERT INTO v_bschaetz_bodenart (wert, kurz, bezeichner) VALUES (9490,'AlD',   'AlluviumDiluvium (AlD)');
+
+
+-- B o d e n s c h a e t z u n g  -  Z u s t a n d s s t u f e
+-- ------------------------------------------------------------
+-- alter Name: ax_bodenschaetzung_zustandsstufe
+DROP TABLE v_bschaetz_zustandsstufe; 
+CREATE TABLE v_bschaetz_zustandsstufe (
+    wert integer,
+    kurz character varying,
+    bezeichner character varying,
+    CONSTRAINT pk_v_bschaetz_zustuf_w  PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_bschaetz_zustandsstufe 
+ IS 'BodenschÃ€tzung, Spalte: Zustandsstufe - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_bodenschaetzung", Feld "zustandsstufe".';
+
+COMMENT ON COLUMN v_bschaetz_zustandsstufe.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_bschaetz_zustandsstufe.kurz       IS 'KÃŒrzel, Kartenanzeige';
+COMMENT ON COLUMN v_bschaetz_zustandsstufe.bezeichner IS 'Lange Bezeichnung';
+
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (1100,'1','Zustandsstufe (1)');
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (1200,'2','Zustandsstufe (2)');
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (1300,'3','Zustandsstufe (3)');
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (1400,'4','Zustandsstufe (4)');
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (1500,'5','Zustandsstufe (5)');
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (1600,'6','Zustandsstufe (6)');
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (1700,'7','Zustandsstufe (7)');
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (1800,'-','Zustandsstufe Misch- und SchichtbÃ¶den sowie kÃŒnstlichverÃ€nderte BÃ¶den (-)');
+
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (2100,'I','Bodenstufe (I)');
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (2200,'II','Bodenstufe (II)');
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (2300,'III','Bodenstufe (III)');
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (2400,'-','Bodenstufe Misch- und SchichtbÃ¶den sowie kÃŒnstlich verÃ€nderte BÃ¶den (-)');
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (3100,'II+III','Bodenstufe (II+III)');
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (3200,'(III)','Bodenstufe ("(III)")');
+INSERT INTO v_bschaetz_zustandsstufe (wert, kurz, bezeichner) VALUES (3300,'IV','Bodenstufe (IV)');
+
+
+-- B o d e n s c h a e t z u n g   -  Muster-, Landesmuster- und Vergleichsstueck
+-- ------------------------------------------------------------------------------
+-- alter Name: ax_musterlandesmusterundvergleichsstueck_merkmal
+DROP TABLE v_muster_merkmal; 
+CREATE TABLE v_muster_merkmal (
+    wert integer,
+    kurz character varying,
+    bezeichner character varying,
+    CONSTRAINT pk_v_muster_merkmal_w  PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_muster_merkmal 
+ IS 'Muster-, Landesmuster- und VergleichsstÃŒck, Spalte: Merkmal - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_musterlandesmusterundvergleichsstueck", Feld "merkmal".';
+
+COMMENT ON COLUMN v_muster_merkmal.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_muster_merkmal.kurz       IS 'KÃŒrzel, Kartenanzeige';
+COMMENT ON COLUMN v_muster_merkmal.bezeichner IS 'Lange Bezeichnung';
+
+INSERT INTO v_muster_merkmal (wert, kurz, bezeichner) VALUES (1000,'M','MusterstÃŒck (M)');
+INSERT INTO v_muster_merkmal (wert, kurz, bezeichner) VALUES (2000,'L','LandesmusterstÃŒck (L)');
+INSERT INTO v_muster_merkmal (wert, kurz, bezeichner) VALUES (3000,'V','VergleichsstÃŒck (V)');
+
+
+-- B o d e n s c h a e t z u n g  -  Grabloch der Bodenschaetzung
+-- --------------------------------------------------------------
+-- alter Name: ax_grablochderbodenschaetzung_bedeutung
+DROP TABLE v_grabloch_bedeutg; 
+CREATE TABLE v_grabloch_bedeutg (
+    wert integer,
+    bezeichner character varying,
+    CONSTRAINT pk_ax_grabloch_bedeutung  PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_grabloch_bedeutg
+ IS 'Grabloch der BodenschÃ€tzung, Spalte: Bedeutung - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_grablochderbodenschaetzung", Feld "bedeutung".';
+
+COMMENT ON COLUMN v_grabloch_bedeutg.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_grabloch_bedeutg.bezeichner IS 'Lange Bezeichnung';
+
+INSERT INTO v_grabloch_bedeutg (wert, bezeichner) VALUES (1100, 'Grabloch, bestimmend, lagerichtig (innerhalb der FlÃ€che)');
+INSERT INTO v_grabloch_bedeutg (wert, bezeichner) VALUES (1200, 'Grabloch, bestimmend, lagerichtig (auÃerhalb des Abschnitts)');
+INSERT INTO v_grabloch_bedeutg (wert, bezeichner) VALUES (1300, 'Grabloch, nicht lagerichtig, im Abschnitt nicht vorhanden');
+INSERT INTO v_grabloch_bedeutg (wert, bezeichner) VALUES (2000, 'Grabloch fÃŒr Muster-, Landesmuster-, VergleichsstÃŒck');
+INSERT INTO v_grabloch_bedeutg (wert, bezeichner) VALUES (3000, 'Grabloch, nicht bestimmend');
+
+
+-- B o d e n s c h a e t z u n g   -  Entstehungsart oder Klimastufe / Wasserverhaeltnisse
+-- ----------------------------------------------------------------------------------------
+-- alter Name: ax_bodenschaetzung_entstehungsartoderklimastufe
+DROP TABLE v_bschaetz_entsteh_klima;
+CREATE TABLE v_bschaetz_entsteh_klima (
+    wert integer,
+    kurz character varying,
+    bezeichner character varying,
+    CONSTRAINT pk_v_bschaetz_entsteh_klima_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_bschaetz_entsteh_klima
+ IS 'BodenschÃ€tzung, Spalte: Entstehungsart oder Klimastufe - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_bodenschaetzung", Feld "entstehungsartoderklimastufe".';
+
+COMMENT ON COLUMN v_bschaetz_entsteh_klima.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_bschaetz_entsteh_klima.kurz       IS 'KÃŒrzel, Kartenanzeige';
+COMMENT ON COLUMN v_bschaetz_entsteh_klima.bezeichner IS 'Lange Bezeichnung';
+
+
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1000,'D',   'Diluvium (D)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1100,'DAl', 'Diluvium ÃŒber Alluvium (DAl)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1200,'DLÃ¶', 'Diluvium ÃŒber LÃ¶Ã (DLÃ¶)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1300,'DV',  'Diluvium ÃŒber Verwitterung (DV)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1400,'Dg',  'Diluvium, gesteinig (Dg)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1410,'DgAl','Diluvium, gesteinig ÃŒber Alluvium (DgAl)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1420,'DgLÃ¶','Diluvium, gesteinig ÃŒber LÃ¶Ã (DgLÃ¶)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1430,'DgV', 'Diluvium, gesteinig ÃŒber Verwitterung (DgV)');
+
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2000,'LÃ¶',  'LÃ¶Ã (LÃ¶)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2100,'LÃ¶D', 'LÃ¶Ã ÃŒber Diluvium (LÃ¶D)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2110,'LÃ¶Dg','LÃ¶Ã, Diluvium, GesteinsbÃ¶den (LÃ¶Dg)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2120,'LÃ¶DV','LÃ¶Ã, Diluvium, Verwitterung (LÃ¶DV)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2200,'LÃ¶Al','LÃ¶Ã ÃŒber Alluvium (LÃ¶Al)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2300,'LÃ¶V', 'LÃ¶Ã ÃŒber Verwitterung (LÃ¶V)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2310,'LÃ¶Vg','LÃ¶Ã, Verwitterung, GesteinsbÃ¶den (LÃ¶Vg)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2400,'LÃ¶Vg','LÃ¶Ã ÃŒber Verwitterung, gesteinig (LÃ¶Vg)');
+
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3000,'Al',  'Alluvium (Al)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3100,'AlD', 'Alluvium ÃŒber Diluvium (AlD)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3200,'AlLÃ¶','Alluvium ÃŒber LÃ¶Ã (AlLÃ¶)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3300,'AlV', 'Alluvium ÃŒber Verwitterung (AlV)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3400,'Alg', 'Alluvium, gesteinig (Alg)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3410,'AlgD','Alluvium, gesteinig ÃŒber Diluvium (AlgD)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3420,'AlgLÃ¶','Alluvium, gesteinig ÃŒber LÃ¶Ã (AlgLÃ¶)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3430,'AlgV','Alluvium, gesteinig ÃŒber Verwitterung (AlgV)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3500,'AlMa','Alluvium, Marsch (AlMa)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3610,'AlMo','Alluvium, Moor (AlMo)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3620,'MoAI','Moor, Alluvium (MoAI)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3700,'Me',  'Mergel (Me)');
+
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(4000,'V',   'Verwitterung (V)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(4100,'VD',  'Verwitterung ÃŒber Diluvium (VD)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(4200,'VAl', 'Verwitterung ÃŒber Alluvium (VAl)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(4300,'VLÃ¶', 'Verwitterung ÃŒber LÃ¶Ã (VLÃ¶)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(4400,'Vg',  'Verwitterung, GesteinsbÃ¶den (Vg)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(4410,'VgD', 'Verwitterung, GesteinsbÃ¶den ÃŒber Diluvium (VgD)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(5000,'-',   'Entstehungsart nicht erkennbar (-)');
+
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(6100,'a',   'Klimastufe 8Â° C und darÃŒber (a)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(6200,'b',   'Klimastufe 7,9Â° - 7,0Â° C (b)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(6300,'c',   'Klimastufe 6,9Â° - 5,7Â° C (c)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(6400,'d',   'Klimastufe 5,6Â° C und darunter (d)');
+
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7100,'1',   'Wasserstufe (1)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7200,'2',   'Wasserstufe (2)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7300,'3',   'Wasserstufe (3)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7400,'4',   'Wasserstufe (4)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7410,'4-',  'Wasserstufe (4-)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7500,'5',   'Wasserstufe (5)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7510,'5-',  'Wasserstufe (5-)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7520,'3-',  'Wasserstufe (3-)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7530,'3+4', 'Wasserstufe (3+4)');
+
+
+-- B o d e n s c h a e t z u n g   -  sonstige Angaben
+-- ---------------------------------------------------
+-- alter Name: ax_bodenschaetzung_sonstigeangaben
+DROP TABLE v_bschaetz_sonst;
+CREATE TABLE v_bschaetz_sonst (
+    wert integer,
+    kurz character varying,
+    bezeichner character varying,
+    CONSTRAINT pk_v_bschaetz_sonst_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_bschaetz_sonst
+ IS 'BodenschÃ€tzung, Spalte: sonstige Angaben - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_bodenschaetzung", Feld "sonstigeangaben".';
+
+COMMENT ON COLUMN v_bschaetz_sonst.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_bschaetz_sonst.kurz       IS 'KÃŒrzel, Kartenanzeige';
+COMMENT ON COLUMN v_bschaetz_sonst.bezeichner IS 'Lange Bezeichnung';
+
+INSERT INTO v_bschaetz_sonst (wert, kurz, bezeichner) VALUES(1100,'Wa+',   'Nass, zu viel Wasser (Wa+)');
+INSERT INTO v_bschaetz_sonst (wert, kurz, bezeichner) VALUES(1200,'Wa-',   'Trocken, zu wenig Wasser (Wa-)');
+INSERT INTO v_bschaetz_sonst (wert, kurz, bezeichner) VALUES(1300,'Wa gt', 'Besonders gÃŒnstige WasserverhÃ€ltnisse (Wa gt)');
+INSERT INTO v_bschaetz_sonst (wert, kurz, bezeichner) VALUES(1400,'RiWa',  'Rieselwasser, kÃŒnstliche BewÃ€sserung (RiWa)');
+INSERT INTO v_bschaetz_sonst (wert, kurz, bezeichner) VALUES(2100,'W',     'Unbedingtes Wiesenland (W)');
+INSERT INTO v_bschaetz_sonst (wert, kurz, bezeichner) VALUES(2200,'Str',   'Streuwiese (Str) ');
+INSERT INTO v_bschaetz_sonst (wert, kurz, bezeichner) VALUES(2300,'Hu',    'Hutung (Hu)');
+INSERT INTO v_bschaetz_sonst (wert, kurz, bezeichner) VALUES(2400,'A-Hack','Acker-Hackrain (A-Hack)');
+INSERT INTO v_bschaetz_sonst (wert, kurz, bezeichner) VALUES(2500,'Gr-Hack','GrÃŒnland-Hackrain (Gr-Hack)');
+INSERT INTO v_bschaetz_sonst (wert, kurz, bezeichner) VALUES(2600,'G',     'Garten (G)');
+INSERT INTO v_bschaetz_sonst (wert, kurz, bezeichner) VALUES(3000,'N',     'Neukultur (N)');
+INSERT INTO v_bschaetz_sonst (wert, kurz, bezeichner) VALUES(4000,'T',     'Tiefkultur (T) ');
+INSERT INTO v_bschaetz_sonst (wert, kurz, bezeichner) VALUES(5000,'Ger',   'Geringstland (Ger)');
+INSERT INTO v_bschaetz_sonst (wert, kurz, bezeichner) VALUES(9000,'',      'NachschÃ€tzung erforderlich ');
+
+-- Testfall dazu finden:
+-- SELECT gml_id, sonstigeangaben, x(st_Centroid(wkb_geometry)) AS x, y(st_Centroid(wkb_geometry)) AS y 
+--  FROM ax_bodenschaetzung WHERE NOT sonstigeangaben[1] IS NULL LIMIT 10; -- NOT sonstigeangaben[2] IS NULL
+
+
+-- B e w e r t u n g  - Klassifizierung
+-- ------------------------------------
+-- alter Name: ax_bewertung_klassifizierung
+DROP TABLE v_bewertg_klass;
+CREATE TABLE v_bewertg_klass (
+    wert integer,
+    bezeichner character varying,
+    erklaer character varying,
+    CONSTRAINT pk_v_bewertg_klass_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_bewertg_klass
+IS 'Bewertung, Spalte: Klassifizierung - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_bewertung", Feld "klassifizierung".';
+
+COMMENT ON COLUMN v_bewertg_klass.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_bewertg_klass.bezeichner IS 'Lange Bezeichnung';
+COMMENT ON COLUMN v_bewertg_klass.erklaer    IS 'ggf. weitere ErlÃ€rung';
+
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1100, 'Unbebautes GrundstÃŒck', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1120, 'Unbebautes GrundstÃŒck mit GebÃ€ude von untergeordneter Bedeutung ', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1130, 'Unbebautes GrundstÃŒck mit einem dem Verfall preisgegebenen GebÃ€ude', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1140, 'Unbebautes GrundstÃŒck fÃŒr Erholungs- und Freizeitzwecke', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1210, 'EinfamilienhausgrundstÃŒck', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1220, 'ZweifamilienhausgrundstÃŒck', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1230, 'MietwohngrundstÃŒck', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1240, 'Gemischtgenutztes GrundstÃŒck', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1250, 'GeschÃ€ftsgrundstÃŒck', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1260, 'Sonstiges bebautes GrundstÃŒck', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1310, 'Einfamilienhaus auf fremdem Grund und Boden', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1320, 'Zweifamilienhaus auf fremdem Grund und Boden', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1330, 'MietwohngrundstÃŒck, MietwohngebÃ€ude auf fremdem Grund und Boden', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1340, 'Gemischtgenutztes GrundstÃŒck, gemischtgenutztes GebÃ€ude auf fremdem Grund und Boden ', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1350, 'GeschÃ€ftsgrundstÃŒck, GeschÃ€ftsgebÃ€ude auf fremdem Grund und Boden', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(1360, 'Sonstige bebaute GrundstÃŒcke, sonstige GebÃ€ude auf fremdem Grund und Boden', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2110, 'Landwirtschaftliche Nutzung', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2120, 'Hopfen', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2130, 'Spargel', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2190, 'Sonstige Sonderkulturen', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2200, 'Holzung', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2300, 'Weingarten (allgemein)', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2310, 'Weingarten 1', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2320, 'Weingarten 2', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2330, 'Weingarten 3', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2340, 'Weingarten 4', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2350, 'Weingarten 5', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2360, 'Weingarten 6', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2370, 'Weingarten 7', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2380, 'Weingarten 8', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2390, 'Weingarten 9', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2410, 'Gartenland', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2420, 'Obstplantage', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2430, 'Baumschule', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2440, 'AnbauflÃ€che unter Glas ', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2450, 'Kleingarten', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2510, 'Weihnachtsbaumkultur', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2520, 'Saatzucht', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2530, 'Teichwirtschaft', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2610, 'Abbauland der Land- und Forstwirtschaft ', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2620, 'Geringstland', '"Geringstland" sind FlÃ€chen geringster ErtragsfÃ€higkeit ohne Wertzahlen nach dem BodenschÃ€tzungsgesetz, das sind unkultivierte Moor- und HeideflÃ€chen (sofern nicht gesondert gefÃŒhrt), ehemals bodengeschÃ€tzte FlÃ€chen und ehemalige WeinbauflÃ€chen, die ihren Kulturzustand verloren haben.');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2630, 'Unland',   '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2640, 'Moor',     '"Moor" ist eine unkultivierte FlÃ€che mit einer (mindestens 20 cm starken) Auflage aus vertorften und vermoorten Pflanzenresten, soweit sie nicht als Torfstich benutzt wird.');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2650, 'Heide',    '"Heide" ist eine unkultivierte, sandige, ÃŒberwiegend mit Heidekraut oder Ginster bewachsene FlÃ€che.');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2700, 'Reet',     '"Reet" ist eine stÃ€ndig oder zeitweise unter Wasser stehende und mit Reet bewachsene FlÃ€che.');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2710, 'Reet I',   'ReetflÃ€che, deren Nutzung eingestuft ist in GÃŒteklasse I (gut).');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2720, 'Reet II',  'ReetflÃ€che, deren Nutzung eingestuft ist in GÃŒteklasse II (mittel).');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2730, 'Reet III', 'ReetflÃ€che, deren Nutzung eingestuft ist in GÃŒteklasse III (gering).');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2800, 'NebenflÃ€che des Betriebs der Land- und Forstwirtschaft', '');
+INSERT INTO v_bewertg_klass (wert, bezeichner, erklaer) VALUES(2899, 'Noch nicht klassifiziert', '');
+
+
+-- F o r s t r e c h t  -  A r t   d e r   F e s t l e g u n g
+-- -----------------------------------------------------------
+-- alter Name: ax_forstrecht_artderfestlegung
+DROP TABLE v_forstrecht_adf; 
+CREATE TABLE v_forstrecht_adf (
+    wert integer,
+    bezeichner character varying,
+    CONSTRAINT pk_v_forst_adf_w  PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_forstrecht_adf
+IS 'Forstrecht, Spalte: Art der Festlegung - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script.';
+
+INSERT INTO v_forstrecht_adf (bezeichner, wert) VALUES('Klassifizierung nach Bundes- oder Landeswaldgesetz',3900);
+INSERT INTO v_forstrecht_adf (bezeichner, wert) VALUES('Staatswald Bund',3910);
+INSERT INTO v_forstrecht_adf (bezeichner, wert) VALUES('Staatswald Land',3920);
+INSERT INTO v_forstrecht_adf (bezeichner, wert) VALUES('Kommunalwald',3930);
+INSERT INTO v_forstrecht_adf (bezeichner, wert) VALUES('Anstalts- und Stiftungswald',3940);
+INSERT INTO v_forstrecht_adf (bezeichner, wert) VALUES('Anderer Ã¶ffentlicher Wald',3950);
+INSERT INTO v_forstrecht_adf (bezeichner, wert) VALUES('Privater Gemeinschaftswald',3960);
+INSERT INTO v_forstrecht_adf (bezeichner, wert) VALUES('GroÃprivatwald',3970);
+INSERT INTO v_forstrecht_adf (bezeichner, wert) VALUES('Kleinprivatwald',3980);
+INSERT INTO v_forstrecht_adf (bezeichner, wert) VALUES('Anderer Privatwald',3990);
+
+
+-- F o r s t r e c h t - B e s o n d e r e   F u n k t i o n
+-- ---------------------------------------------------------
+-- alter Name: ax_forstrecht_besonderefunktion
+DROP TABLE v_forstrecht_besfkt; 
+CREATE TABLE v_forstrecht_besfkt(
+    wert integer,
+    bezeichner character varying,
+    CONSTRAINT pk_v_forst_besfkt_w  PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_forstrecht_besfkt
+IS 'Forstrecht, Spalte: besondere Funktion - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script.';
+
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Ohne besondere gesetzliche Bindung',1000);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Ohne besondere gesetzliche Bindung nach LWaldG- Holzboden',1010);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Schutzwald',2000);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Schutzwald - Holzboden',2010);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Erholungswald',3000);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Erholungswald - Holzboden',3010);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Bannwald',4000);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Nationalpark - Holzboden',4010);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Naturschutzgebiet - Holzboden',5010);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Schutz- und Erholungswald',6000);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Schutz- und Erholungswald - Holzboden',6010);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Nationalpark - Nichtholzboden',7010);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Naturschutzgebiet - Nichtholzboden',8010);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Andere ForstbetriebsflÃ€che',9000);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Nichtholzboden',9010);
+INSERT INTO v_forstrecht_besfkt (bezeichner, wert) VALUES('Sonstiges',9999);
+
+
+-- D a t e n e r h e b u n g
+-- -------------------------
+-- Datentyp: AX_LI_Source_MitDatenerhebung
+-- alter Name: ax_datenerhebung
+DROP TABLE v_datenerhebung; 
+CREATE TABLE v_datenerhebung (
+    wert integer,
+    bezeichner character varying,
+    CONSTRAINT pk_v_derhebung_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_datenerhebung
+IS 'SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script.';
+
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus Katastervermessung ermittelt', 1000); -- (G)
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aufgrund Anforderungen mit Netzanschluss ermittelt', 1100);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aufgrund Anforderungen mit Bezug zur FlurstÃŒcksgrenze ermittelt', 1200);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus sonstiger Vermessung ermittelt', 1900);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus Luftbildmessung oder Fernerkundungsdaten ermittelt', 2000);-- 	
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus Katasterunterlagen und Karten fÃŒr graphische Zwecke ermittelt', 4000);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus Katasterzahlen fÃŒr graphische Zwecke ermittelt', 4100);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus Katasterkarten digitalisiert', 4200);-- (G)
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus Katasterkarten digitalisiert, KartenmaÃstab M grÃ¶Ãer gleich 1 zu 1000', 4210);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus Katasterkarten digitalisiert, KartenmaÃstab 1 zu 1000 grÃ¶Ãer M grÃ¶Ãer gleich 1 zu 2000', 4220);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus Katasterkarten digitalisiert, KartenmaÃstab 1 zu 2000 grÃ¶Ãer M grÃ¶Ãer gleich 1 zu 3000', 4230);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus Katasterkarten digitalisiert, KartenmaÃstab 1 zu 3000 grÃ¶Ãer M grÃ¶Ãer gleich 1 zu 5000', 4240);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus Katasterkarten digitalisiert, KartenmaÃstab 1 zu 5000 grÃ¶Ãer M', 4250);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus sonstigen Unterlagen digitalisiert', 4300);-- (G)
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus sonstigen Unterlagen digitalisiert, KartenmaÃstab M grÃ¶Ãer gleich 1 zu 1000', 4310);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus sonstigen Unterlagen digitalisiert, KartenmaÃstab 1 zu 1000 grÃ¶Ãer M grÃ¶Ãer gleich 1 zu 2000', 4320);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus sonstigen Unterlagen digitalisiert, KartenmaÃstab 1 zu 2000 grÃ¶Ãer M grÃ¶Ãer gleich 1 zu 3000', 4330);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus sonstigen Unterlagen digitalisiert, KartenmaÃstab 1 zu 3000 grÃ¶Ãer M grÃ¶Ãer gleich 1 zu 5000', 4340);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus sonstigen Unterlagen digitalisiert, KartenmaÃstab 1 zu 5000 grÃ¶Ãer M', 4350);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus sonstigen Unterlagen digitalisiert, mit sonstigen geometrischen Bedingungen und bzw. oder Homogenisierung (M grÃ¶Ãer gleich 1 zu 1000)', 4360);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus sonstigen Unterlagen digitalisiert, mit Berechnung oder Abstandsbedingung (M grÃ¶Ãer gleich 1 zu 1000)', 4370);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus sonstigen Unterlagen digitalisiert, mit sonstigen geometrischen Bedingungen und bzw. oder Homogenisierung (M kleiner 1 zu 1000)', 4380);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Aus sonstigen Unterlagen digitalisiert, mit Berechnung oder Abstandsbedingungen (M kleiner 1 zu 1000)', 4390);
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Nach Quellenlage nicht zu spezifizieren', 9998);--  (G)
+INSERT INTO v_datenerhebung (bezeichner, wert) VALUES('Sonstiges', 9999);
+
+
+-- Sonstiges Bauwerk oder sonstige Einrichtung - Bauwerksfunktion
+-- --------------------------------------------------------------
+-- alter Name: ax_sonstigesbauwerkodersonstigeeinrichtung_bauwerksfunktion
+DROP TABLE v_sbauwerk_bwfkt; 
+CREATE TABLE v_sbauwerk_bwfkt (
+    wert integer,
+    bezeichner character varying,
+    CONSTRAINT pk_v_sbauwerk_bwfkt_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_sbauwerk_bwfkt
+IS 'Sonstiges Bauwerk oder sonstige Einrichtung, Spalte: Bauwerksfunktion - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script.';
+
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Ãberdachung',1610);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Carport',1611);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Treppe',1620);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Freitreppe',1621);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Rolltreppe',1622);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Treppenunterkante',1630);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Kellereingang',1640);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Rampe',1650);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Terrasse',1670);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Mauer',1700);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Mauerkante, rechts',1701);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Mauerkante, links',1702);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Mauermitte',1703);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('StÃŒtzmauer',1720);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('StÃŒtzmauer, rechts',1721);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('StÃŒtzmauer, links',1722);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('StÃŒtzmauermitte',1723);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Zaun',1740);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Denkmal, Denkstein, Standbild',1750);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Bildstock, Wegekreuz, Gipfelkreuz',1760);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Bildstock',1761);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Wegekreuz',1762);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Gipfelkreuz',1763);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Meilenstein, historischer Grenzstein',1770);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Brunnen',1780);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Brunnen (Trinkwasserversorgung)',1781);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Springbrunnen, Zierbrunnen',1782);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Ziehbrunnen',1783);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Spundwand',1790);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('HÃ¶ckerlinie',1791);
+INSERT INTO v_sbauwerk_bwfkt (bezeichner, wert) VALUES ('Sonstiges',9999);
+
+
+-- Bauteil - Bauart
+-- -------------------------
+-- alter Name: ax_bauteil_bauart
+DROP TABLE v_bauteil_bauart; 
+CREATE TABLE v_bauteil_bauart (
+    wert integer, 
+    bezeichner character varying,  
+    kennung integer,
+    objektart character varying,
+    CONSTRAINT pk_v_bauteil_bauart_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_bauteil_bauart
+IS 'Bauteil, Spalte: Bauart - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script.';
+
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (1100,'Geringergeschossiger GebÃ€udeteil',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (1200,'HÃ¶hergeschossiger GebÃ€udeteil (nicht Hochhaus)',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (1300,'HochhausgebÃ€udeteil',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (1400,'Abweichende GeschosshÃ¶he',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (2000,'Keller',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (2100,'Tiefgarage',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (2300,'Loggia',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (2350,'Wintergarten',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (2400,'Arkade',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (2500,'Auskragende/zurÃŒckspringende Geschosse',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (2510,'Auskragende Geschosse',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (2520,'ZurÃŒckspringende Geschosse',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (2610,'Durchfahrt im GebÃ€ude',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (2620,'Durchfahrt an ÃŒberbauter VerkehrsstraÃe',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (2710,'Schornstein im GebÃ€ude',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (2720,'Turm im GebÃ€ude',31002,'ax_bauteil');
+INSERT INTO v_bauteil_bauart (wert, bezeichner,kennung,objektart) VALUES (9999,'Sonstiges',31002,'ax_bauteil');
+
+
+-- Klassifizierung nach StraÃenrecht - Art der Festlegung 
+-- ------------------------------------------------------
+-- alter Name: ax_klassifizierungnachstrassenrecht_artdf
+DROP TABLE v_klass_strass_adf; 
+CREATE TABLE v_klass_strass_adf (
+    wert integer, 
+    bezeichner character varying,  
+    kennung integer, 
+    objektart character varying,
+    CONSTRAINT pk_v_klass_strass_adf_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_klass_strass_adf
+IS 'Klassifizierung nach StraÃenrecht, Spalte: Art der Festlegung - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script.';
+
+INSERT INTO v_klass_strass_adf (bezeichner, wert) VALUES ('Klassifizierung nach Bundes- oder LandesstraÃengesetz',1100);
+INSERT INTO v_klass_strass_adf (bezeichner, wert) VALUES ('Bundesautobahn',1110);
+INSERT INTO v_klass_strass_adf (bezeichner, wert) VALUES ('BundesstraÃe',1120);
+INSERT INTO v_klass_strass_adf (bezeichner, wert) VALUES ('Landes- oder StaatsstraÃe',1130);
+INSERT INTO v_klass_strass_adf (bezeichner, wert) VALUES ('KreisstraÃe',1140);
+INSERT INTO v_klass_strass_adf (bezeichner, wert) VALUES ('GemeindestraÃe',1150);
+INSERT INTO v_klass_strass_adf (bezeichner, wert) VALUES ('OrtsstraÃe',1160);
+INSERT INTO v_klass_strass_adf (bezeichner, wert) VALUES ('GemeindeverbindungsstraÃe',1170);
+INSERT INTO v_klass_strass_adf (bezeichner, wert) VALUES ('Sonstige Ã¶ffentliche StraÃe',1180);
+INSERT INTO v_klass_strass_adf (bezeichner, wert) VALUES ('PrivatstraÃe',1190);
+
+
+-- Klassifizierung nach Wasserrecht - Art der Festlegung
+-- ----------------------------------------------------
+-- alter Name: ax_klassifizierungnachwasserrecht_artdf
+DROP TABLE v_klass_wasser_adf; 
+CREATE TABLE v_klass_wasser_adf (
+    wert integer, 
+    bezeichner character varying,  
+    kennung integer,
+    objektart character varying,
+    CONSTRAINT pk_v_klass_wasser_adf_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_klass_wasser_adf
+IS 'Klassifizierung nach Wasserrecht, Spalte: Art der Festlegung - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script.';
+
+INSERT INTO v_klass_wasser_adf (bezeichner, wert) VALUES ('Klassifizierung nach Bundes- oder Landeswassergesetz',1300);
+INSERT INTO v_klass_wasser_adf (bezeichner, wert) VALUES ('GewÃ€sser I. Ordnung - BundeswasserstraÃe',1310);
+INSERT INTO v_klass_wasser_adf (bezeichner, wert) VALUES ('GewÃ€sser I. Ordnung - nach Landesrecht',1320);
+INSERT INTO v_klass_wasser_adf (bezeichner, wert) VALUES ('GewÃ€sser II. Ordnung',1330);
+INSERT INTO v_klass_wasser_adf (bezeichner, wert) VALUES ('GewÃ€sser III. Ordnung',1340);
+
+
+-- Andere Festlegung nach Strassenrecht - Art der Festlegung
+-- ---------------------------------------------------------
+-- alter Name: ax_anderefestlegungnachstrassenrecht_artdf
+DROP TABLE v_andstrass_adf; 
+CREATE TABLE v_andstrass_adf (
+    wert integer, 
+    bezeichner character varying,  
+    kennung integer,
+    objektart character varying,
+    CONSTRAINT pk_v_andstrass_adf_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_andstrass_adf
+IS 'Andere Festlegung nach Strassenrecht, Spalte: Art der Festlegung - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script.';
+
+INSERT INTO v_andstrass_adf (bezeichner, wert) VALUES ('BundesfernstraÃengesetz',1210);
+INSERT INTO v_andstrass_adf (bezeichner, wert) VALUES ('Anbauverbot',1220);
+INSERT INTO v_andstrass_adf (bezeichner, wert) VALUES ('Anbauverbot nach BundesfernstraÃengesetz',1230);
+INSERT INTO v_andstrass_adf (bezeichner, wert) VALUES ('Anbauverbot (40m)',1231);
+INSERT INTO v_andstrass_adf (bezeichner, wert) VALUES ('Anbauverbot (20m)',1232);
+INSERT INTO v_andstrass_adf (bezeichner, wert) VALUES ('AnbaubeschrÃ€nkung',1240);
+INSERT INTO v_andstrass_adf (bezeichner, wert) VALUES ('AnbaubeschrÃ€nkung (100m)',1241);
+INSERT INTO v_andstrass_adf (bezeichner, wert) VALUES ('AnbaubeschrÃ€nkung (40m)',1242);
+INSERT INTO v_andstrass_adf (bezeichner, wert) VALUES ('VerÃ€nderungssperre nach BundesfernstraÃengesetz',1250);
+INSERT INTO v_andstrass_adf (bezeichner, wert) VALUES ('LandesstraÃengesetz',1260);
+INSERT INTO v_andstrass_adf (bezeichner, wert) VALUES ('VerÃ€nderungssperre',1280);
+
+
+-- Natur-, Umwelt- oder Bodenschutzrecht - Art der Festlegung
+-- ----------------------------------------------------------
+-- alter Name: ax_naturumweltoderbodenschutzrecht_artdf
+DROP TABLE v_umweltrecht_adf; 
+CREATE TABLE v_umweltrecht_adf (
+    wert integer, 
+    bezeichner character varying,  
+    kennung integer, 
+    objektart character varying,
+    CONSTRAINT pk_v_umweltrecht_adf_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_umweltrecht_adf
+IS 'Natur-, Umwelt- oder Bodenschutzrecht, Spalte: Art der Festlegung - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script.';
+
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('SchutzflÃ€che nach Europarecht',610);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Flora-Fauna-Habitat-Gebiet',611);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Vogelschutzgebiet',612);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('SchutzflÃ€chen nach Landesnaturschutzgesetz',620);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Naturschutzgebiet',621);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('GeschÃŒtzter Landschaftsbestandteil',622);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Landschaftsschutzgebiet',623);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Naturpark',624);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Bundesbodenschutzgesetz',630);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('VerdachtsflÃ€che auf schÃ€dliche BodenverÃ€nderung',631);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('SchÃ€dliche BodenverÃ€nderung',632);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('AltlastenverdÃ€chtige FlÃ€che',633);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Altlast',634);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Bundesimmisionsschutzgesetz',640);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Belastungsgebiet',641);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('SchutzbedÃŒrftiges Gebiet',642);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('GefÃ€hrdetes Gebiet',643);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Naturschutzgesetz',650);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Besonders geschÃŒtztes Biotop',651);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Besonders geschÃŒtztes FeuchtgrÃŒnland',652);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Naturdenkmal',653);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Einstweilige Sicherstellung, VerÃ€nderungssperre',654);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Vorkaufsrecht',655);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Ausgleichs- oder KompensationsflÃ€che',656);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Bodenschutzgesetz',660);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('DauerbeobachtungsflÃ€chen',661);
+INSERT INTO v_umweltrecht_adf (bezeichner, wert) VALUES ('Bodenschutzgebiet',662);
+
+
+-- Denkmalschutzrecht - Art der Festlegung
+-- ---------------------------------------
+-- alter Name: ax_denkmalschutzrecht_artdf
+DROP TABLE v_denkmal_adf; 
+CREATE TABLE v_denkmal_adf (
+    wert integer, 
+    bezeichner character varying,  
+    kennung integer,
+    objektart character varying,
+    CONSTRAINT pk_v_denkmal_adf_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_denkmal_adf
+IS 'Denkmalschutzrecht, Spalte: Art der Festlegung - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script.';
+
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Kulturdenkmal',2700);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Bau- und Kunstdenkmal nach Landesdenkmalschutzgesetz',2710);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Baudenkmal',2711);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Kunstdenkmal',2712);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Gartendenkmal',2713);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('ArchÃ€ologisches Denkmal (auch Bodendenkmal) nach Landesdenkmalschutzgesetz',2800);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('ArchÃ€ologisches Denkmal',2810);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Bodendenkmal',2820);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Schutzgebiet oder -bereiche nach Landesdenkmalschutzgesetz',2900);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Denkmalzone oder -bereich',2910);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('GeschÃŒtzter Baubereich',2920);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Grabungsschutzgebiet',2930);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Befestigungen',3100);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Befestigung (Burg)',3110);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Burg (Fliehburg, Ringwall)',3111);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Erdwerk',3112);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Ringwall',3113);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Steinwerk',3114);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Festung',3115);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('GrÃ€ftenanlage',3116);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Schanze',3117);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Lager',3118);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Wachturm (rÃ¶misch), Warte',3120);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Wachturm',3121);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Warte',3122);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Befestigung (Wall, Graben)',3130);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Grenzwall, Schutzwall',3131);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Limes',3132);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Landwehr',3133);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Stadtwall',3134);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historischer Wall',3135);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historische Siedlung',3200);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Pfahlbau',3210);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('WÃŒstung',3220);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Wurt',3230);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Abri',3240);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('HÃ¶hle',3250);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historische Bestattung',3300);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('GroÃsteingrab (Dolmen, HÃŒnenbett)',3310);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('GrabhÃŒgel',3320);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('GrabhÃŒgelfeld',3330);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Urnenfriedhof',3340);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('KÃ¶rpergrÃ€berfeld',3350);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('ReihengrÃ€berfriedhof',3360);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historisches land- oder forstwirtschaftliches Objekt',3400);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historischer Pflanzkamp',3410);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historisches Viehgehege',3420);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Sandfang',3430);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historisches Ackersystem',3440);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historische Bergbau-, VerhÃŒttungs- oder sonstige ProduktionsstÃ€tte',3500);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historisches Bergbaurelikt',3510);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historischer Meiler',3520);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historischer Ofen',3530);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historischer VerhÃŒttungsplatz',3540);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historische StraÃe oder Weg',3600);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('HeerstraÃe',3610);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Hohlweg',3620);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Moorweg',3630);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Wegespur',3640);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historisches wasserwirtschaftliches Objekt',3700);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historische Wasserleitung',3710);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('AquÃ€dukt',3720);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historischer Deich',3730);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historischer Damm',3740);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historischer Graben',3750);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Steinmal',3800);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Schalenstein',3810);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Rillenstein',3820);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Wetzrillen',3830);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Kreuzstein',3840);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Historischer Grenzstein',3850);
+INSERT INTO v_denkmal_adf (bezeichner, wert) VALUES ('Menhir',3860);
+
+
+-- Sonstiges Recht - Art der Festlegung 
+-- ------------------------------------
+-- alter Name: ax_sonstigesrecht_artdf
+DROP TABLE v_sonstrecht_adf; 
+CREATE TABLE v_sonstrecht_adf (
+    wert integer, 
+    bezeichner character varying,  
+    kennung integer,
+    objektart character varying,
+    CONSTRAINT pk_v_sonstrecht_adf_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_sonstrecht_adf
+IS 'Sonstiges Recht, Spalte: Art der Festlegung - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script.';
+
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Luftverkehrsgesetz',4100);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Bauschutzbereich',4110);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('BeschrÃ€nkter Bauschutzbereich',4120);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Bundeskleingartengesetz',4200);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Dauerkleingarten',4210);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Berggesetz',4300);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Bodenbewegungsgebiet',4301);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Bruchfeld',4302);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('BaubeschrÃ€nkung',4310);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('ReichsheimstÃ€ttengesetz',4400);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('ReichsheimstÃ€tte',4410);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Schutzbereichsgesetz',4500);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Schutzbereich',4510);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Eisenbahnneuordnungsgesetz',4600);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Ãbergabebescheidverfahren',4610);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('BaubeschrÃ€nkungen durch Richtfunkverbindungen',4710);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('TruppenÃŒbungsplatz, StandortÃŒbungsplatz',4720);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Vermessungs- und Katasterrecht',4800);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('SchutzflÃ€che Festpunkt',4810);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('SchutzflÃ€che Festpunkt, 1 m Radius',4811);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('SchutzflÃ€che Festpunkt, 2 m Radius',4812);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('SchutzflÃ€che Festpunkt, 5 m Radius',4813);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('SchutzflÃ€che Festpunkt, 10 m Radius',4814);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('SchutzflÃ€che Festpunkt, 30 m Radius',4815);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('MarksteinschutzflÃ€che',4820);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Liegenschaftskatastererneuerung',4830);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Fischereirecht',4900);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Jagdkataster',5100);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Landesgrundbesitzkataster',5200);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('BombenblindgÃ€ngerverdacht',5300);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Rieselfeld',5400);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Sicherungsstreifen',5500);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Grenzbereinigung',5600);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Hochwasserdeich',5700);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Hauptdeich, 1. Deichlinie',5710);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('2. Deichlinie',5720);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Beregnungsverband',6000);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Weinlage',7000);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Weinbausteillage',7100);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Weinbergsrolle',7200);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Weinbausteilstlage',7300);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Benachteiligtes landwirtschaftliches Gebiet',8000);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Mitverwendung Hochwasserschutz, Oberirdische Anlagen',9100);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Mitverwendung Hochwasserschutz, Unterirdische Anlagen',9200);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Hafennutzungsgebiet',9300);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Hafenerweiterungsgebiet',9400);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Bohrung verfÃŒllt',9500);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Zollgrenze',9600);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Belastung nach Â§7 Abs. 2 GBO',9700);
+INSERT INTO v_sonstrecht_adf (bezeichner, wert) VALUES ('Sonstiges',9999);
+
+-- ENDE --
+
+
+
+-- =====
+-- ALKIS
+-- =====
+
+--  PostNAS 0.8
+
+--  -----------------------------------------
+--  Sichten fuer Verwendung im mapfiles (wms)
+--  -----------------------------------------
+
+--  Dieses SQL sollte in jeder PostNAS-ALKIS-Datenbank verarbeitet werden, weil es vom Mapfile benÃ¶tigt wird.
+
+--  2012-04-17 flstnr_ohne_position
+--  2012-04-24 pauschal Filter 'endet IS NULL' um historische Objekte auszublenden
+--  2012-10-29 Redundanzen in Beziehungen suchen (entstehen durch replace)
+--  2013-02-20 Mehrfache Buchungsstellen zum FS suchen, dies sind Auswirkungen eines Fehlers bei Replace
+--  2013-03-05 Beschriftungen aus ap_pto auseinander sortieren, neuer View "grenzpunkt"
+--  2013-03-12 Optimierung Hausnummern, View "gebaeude_txt" (Funktion und Name)
+--  2013-04-15 UnterdrÃŒcken doppelter Darstellung in den Views 'ap_pto_stra', 'ap_pto_nam', 'ap_pto_rest'
+--  2013-04-16 Thema "BodenschÃ€tzung" und fehlernde Kommentare zum Views ergÃ€nzt.
+--             Diese Datei aufgeteilt in "sichten.sql" und "sichten_wms.sql"
+--  2013-04-22 art="PNR" (Pseudonummer)
+--  2013-10-24 View ap_pto_stra wird ersetzt durch die Tabellen "pp_strassenname" und "pp_strassenklas", die im postProcessing gefÃŒllt werden.
+--  2014-02-24 Kein Filter auf advstandardmodell bei FlurstÃŒcks-Zuordnungspfeil
+--  2014-08-26 View "ap_lto_stra" analog "ap_pto_stra" fÃŒr StraÃennamen auf Linien-Geometrie
+--  2014-08-28 Die Tabelle "alkis_beziehungen" ÃŒberflÃŒssig machen.
+--             Relationen nun direkt ÃŒber neue Spalten in den Objekttabellen. 
+--  2014-08-29 P- und L-StraÃennamen gegenseitig ausschlieÃen in ap_pto_stra und ap_lto_stra
+--  2014-09-30 Umbenennung SchlÃŒsseltabellen (Prefix)
+--  2014-10-28 In "ap_pto_rest" keine Anzeige fÃŒr Texte ohne " advstandardmodell='DKKM1000' "
+
+-- Layer "ag_t_gebaeude"
+-- ---------------------
+-- Problem: Zu einigen GebÃ€uden gibt es mehrere Hausnummern.
+-- Diese unterscheiden sich im Feld ap_pto.advstandardmodell
+-- z.B. 3 verschiedene EintrÃ€ge mit <NULL>, {DKKM500}, {DKKM1000}
+
+-- Nimmt vorzugsweise den Text der Darstellung aus ap_pto (nach der Migration zunÃ€chst ibR immer gefÃŒllt).
+-- Wenn der nicht gefÃŒllt ist, wird statt dessen die Nummer aus der verknÃŒpften Labebezeichnung verwendet.
+
+-- DROP VIEW IF EXISTS s_hausnummer_gebaeude;
+
+CREATE OR REPLACE VIEW s_hausnummer_gebaeude 
+AS 
+ SELECT p.ogc_fid, 
+        p.wkb_geometry,                       -- Point
+        p.drehwinkel * 57.296 AS drehwinkel,  -- umn: ANGLE
+    --  p.horizontaleausrichtung  AS hor,     -- = 'zentrisch'
+    --  p.vertikaleausrichtung    AS ver,     -- = 'Basis' (oft), "Mitte" (selten)
+    --  p.schriftinhalt,                      -- WMS: das bessere LABELITEM, kann aber leer sein
+    --  l.hausnummer,                         -- WMS: LABELITEM default/native
+        COALESCE(p.schriftinhalt, l.hausnummer) AS hausnummer
+   FROM ap_pto p
+   JOIN ax_lagebezeichnungmithausnummer l       ON l.gml_id = ANY (p.dientzurdarstellungvon) 
+  WHERE p.art = 'HNR'
+    AND 'DKKM1000' = ANY (p.advstandardmodell) -- erste NÃ€herungslÃ¶sung um Redundanzen zu unterdrÃŒcken
+    AND p.endet IS NULL
+    AND l.endet IS NULL;
+
+COMMENT ON VIEW s_hausnummer_gebaeude IS 'Sicht fÃŒr Kartendarstellung: Hausnummern der HauptgebÃ€ude.';
+-- ibR: darzustellender Text steht immer in ap_pto.schriftinhalt
+-- AED: ap_pto.schriftinhalt ist meist leer, nur selten ein Eintrag
+
+-- ToDo: In PostProcessing die Hausnummer von l.hausnummer in p.schriftinhalt kopieren, wenn leer
+--   Das wÃŒrde die COALESCE-Trickserei ersparen
+
+-- Layer "ag_t_nebengeb"
+-- ---------------------
+-- ax_gebaeude  >hat>  ax_lagebezeichnungmitpseudonummer, kein Drehwinkel.
+
+-- DROP VIEW IF EXISTS lfdnr_nebengebaeude;
+
+CREATE OR REPLACE VIEW lfdnr_nebengebaeude 
+AS 
+ SELECT g.ogc_fid, 
+        g.wkb_geometry, 
+        l.laufendenummer     -- umn: LABELITEM - die laufende Nummer des Nebengebaeudes
+   FROM ax_gebaeude g
+   JOIN ax_lagebezeichnungmitpseudonummer l
+     ON g.hat = l.gml_id
+   WHERE g.endet IS NULL AND l.endet IS NULL;
+
+COMMENT ON VIEW lfdnr_nebengebaeude 
+  IS 'Sicht fÃŒr Kartendarstellung: Laufende Nummer des NebengebÃ€udes zu einer Lagebezeichnung mit der FlÃ€chengeometrie des GebÃ€udes';
+
+-- GebÃ€ude-Text
+-- ------------
+
+-- DROP VIEW IF EXISTS gebaeude_txt;
+
+CREATE OR REPLACE VIEW gebaeude_txt 
+AS 
+ SELECT g.ogc_fid, 
+        g.wkb_geometry,
+        g.name,                    -- selten gefÃŒllt 
+        f.bezeichner AS funktion   -- umn: LABELITEM
+   FROM ax_gebaeude g
+   JOIN v_geb_funktion f 
+     ON g.gebaeudefunktion = f.wert
+  WHERE g.endet IS NULL 
+    AND g.gebaeudefunktion < 9998; -- "Nach Quellenlage nicht zu spezifizieren" braucht man nicht anzeigen
+
+COMMENT ON VIEW gebaeude_txt 
+  IS 'Sicht fÃŒr Kartendarstellung: Name zum GebÃ€ude und EntschlÃŒsselung der GebÃ€ude-Funktion (Ersatz fÃŒr Symbole)';
+
+-- Layer "ag_p_flurstueck"
+-- -----------------------
+
+-- DROP VIEW IF EXISTS s_zugehoerigkeitshaken_flurstueck;
+
+CREATE OR REPLACE VIEW s_zugehoerigkeitshaken_flurstueck 
+AS 
+ SELECT p.ogc_fid, 
+        p.wkb_geometry, 
+        p.drehwinkel * 57.296 AS drehwinkel
+   FROM ap_ppo p
+   JOIN ax_flurstueck f
+     ON f.gml_id = ANY (p.dientZurDarstellungVon)  
+  WHERE p.art = 'Haken'
+    AND f.endet IS NULL
+    AND p.endet IS NULL;
+
+COMMENT ON VIEW s_zugehoerigkeitshaken_flurstueck 
+  IS 'Sicht fÃŒr Kartendarstellung: ZugehÃ¶rigkeitshaken zum FlurstÃŒck.';
+
+-- Layer "s_zuordungspfeil_flurstueck" (Signaturnummer 2004)
+-- -----------------------------------
+
+-- DROP VIEW IF EXISTS s_zuordungspfeil_flurstueck;
+
+CREATE OR REPLACE VIEW s_zuordungspfeil_flurstueck 
+AS 
+ SELECT l.ogc_fid, 
+        l.wkb_geometry
+   FROM ap_lpo l
+   JOIN ax_flurstueck f
+     ON f.gml_id = ANY (l.dientZurDarstellungVon) 
+  WHERE l.art = 'Pfeil'
+    AND f.endet IS NULL
+    AND l.endet IS NULL;
+
+COMMENT ON VIEW s_zuordungspfeil_flurstueck 
+  IS 'Sicht fÃŒr Kartendarstellung: Zuordnungspfeil zur FlurstÃŒcksnummer, Liniengeometrie.';
+
+
+-- DROP VIEW IF EXISTS s_zuordungspfeilspitze_flurstueck;
+
+CREATE OR REPLACE VIEW s_zuordungspfeilspitze_flurstueck 
+AS 
+ SELECT l.ogc_fid, 
+        (((st_azimuth(st_pointn(l.wkb_geometry, 1), 
+        st_pointn(l.wkb_geometry, 2)) * (- (180)::double precision)) / pi()) + (90)::double precision) AS winkel, 
+        st_startpoint(l.wkb_geometry) AS wkb_geometry 
+   FROM ap_lpo l
+   JOIN ax_flurstueck f
+     ON f.gml_id = ANY (l.dientzurdarstellungvon) 
+  WHERE l.art = 'Pfeil'
+    AND f.endet IS NULL
+    AND l.endet IS NULL;
+
+COMMENT ON VIEW s_zuordungspfeilspitze_flurstueck 
+  IS 'Sicht fÃŒr Kartendarstellung: Zuordnungspfeil FlurstÃŒcksnummer, Spitze, Punktgeometrie mit Drehwinkel.';
+
+
+-- Drehwinkel in Bogenmass, wird vom mapserver in Grad benÃ¶tigt. Umrechnung durch Faktor (180 / Pi)
+
+-- Zuordnungspfeil BodenschÃ€tzung (Signaturnummer 2701)
+-- ----------------------------------------------------
+
+CREATE OR REPLACE VIEW s_zuordungspfeil_bodensch
+AS 
+ SELECT l.ogc_fid, 
+        l.wkb_geometry
+   FROM ap_lpo l
+   JOIN ax_bodenschaetzung b
+     ON b.gml_id = ANY (l.dientzurdarstellungvon)
+  WHERE l.art = 'Pfeil'
+    AND ('DKKM1000' = ANY (l.advstandardmodell))
+    AND b.endet IS NULL
+    AND l.endet IS NULL;
+
+COMMENT ON VIEW s_zuordungspfeil_bodensch 
+  IS 'Sicht fÃŒr Kartendarstellung: Zuordnungspfeil BodenschÃ€tzung, Liniengeometrie.';
+
+
+-- DROP VIEW IF EXISTS s_zuordungspfeilspitze_bodensch;
+ 
+CREATE OR REPLACE VIEW s_zuordungspfeilspitze_bodensch 
+AS 
+ SELECT l.ogc_fid, 
+        (((st_azimuth(st_pointn(l.wkb_geometry, 1), 
+        st_pointn(l.wkb_geometry, 2)) * (- (180)::double precision)) / pi()) + (90)::double precision) AS winkel, 
+        st_startpoint(l.wkb_geometry) AS wkb_geometry 
+   FROM ap_lpo l
+   JOIN ax_bodenschaetzung b
+     ON b.gml_id = ANY (l.dientzurdarstellungvon )
+  WHERE l.art = 'Pfeil'
+    AND 'DKKM1000' = ANY (l.advstandardmodell)
+    AND b.endet IS NULL
+    AND l.endet IS NULL;
+
+COMMENT ON VIEW s_zuordungspfeilspitze_flurstueck IS 'Sicht fÃŒr Kartendarstellung: Zuordnungspfeil BodenschÃ€tzung, Spitze, Punktgeometrie mit Drehwinkel.';
+
+
+-- Layer NAME "ap_pto_stra" (StraÃe) GROUP "praesentation"
+-- -------------------------------------------------------
+-- Von doppelten Textpositionen nur das passendere Modell anzeigen.
+-- Eine Relation wird fuer die Gruppierung verwendet:
+--  ap_pto >dientZurDarstellungVon> ax_lagebezeichnungohnehausnummer
+
+-- 2014-08-26: Spalte gml_id hinzugefÃŒgt.
+-- Auch Zeilen mit leerem Schriftinhalt verwenden. Das wird im PostProcessing noch ergÃ€nzt. 
+
+-- DROP VIEW IF EXISTS ap_pto_stra;
+
+CREATE OR REPLACE VIEW ap_pto_stra 
+AS 
+  SELECT p.ogc_fid,
+         l.gml_id,                               -- wird im PP zum Nachladen aus Katalog gebraucht
+      -- p.advstandardmodell       AS modell,    -- TEST
+      -- l.unverschluesselt, l.lage AS schluessel, -- zur Lage  TEST
+         p.schriftinhalt,                        -- WMS: LABELITEM
+         p.art,                                  -- WMS: CLASSITEM
+         p.horizontaleausrichtung  AS hor,       -- Verfeinern der Text-Position ..
+         p.vertikaleausrichtung    AS ver,       --  .. durch Klassifizierung hor/ver
+         p.drehwinkel * 57.296     AS winkel,    -- * 180 / Pi
+         p.wkb_geometry
+    FROM ap_pto p
+    JOIN ax_lagebezeichnungohnehausnummer l
+      ON l.gml_id = ANY (p.dientzurdarstellungvon)
+   WHERE  p.endet IS NULL
+     AND  p.art IN ('Strasse','Weg','Platz','BezKlassifizierungStrasse') -- CLASSES im LAYER
+     AND (   'DKKM1000' = ANY (p.advstandardmodell) -- "Lika 1000" bevorzugen
+       -- OR 'DLKM'     = ANY (p.advstandardmodell) -- oder auch Kataster allgemein 
+           -- Ersatzweise auch "keine Angabe", aber nur wenn es keinen besseren Text zur Lage gibt
+          OR (p.advstandardmodell IS NULL
+               -- Alternativen zur Legebezeichnung suchen in P- und L-Version
+               AND (SELECT s.ogc_fid FROM ap_lto s -- irgend ein Feld eines anderen Textes (suchen)
+                      JOIN ax_lagebezeichnungohnehausnummer ls ON ls.gml_id = ANY(s.dientzurdarstellungvon)
+                     WHERE ls.gml_id = l.gml_id AND NOT s.advstandardmodell IS NULL 
+                     LIMIT 1  -- einer reicht als Beweis
+                   ) IS NULL  -- "Subquery IS NULL" liefert true wenn kein weiterer Text gefunden wird
+               AND (SELECT s.ogc_fid FROM ap_pto s
+                      JOIN ax_lagebezeichnungohnehausnummer ls ON ls.gml_id = ANY(s.dientzurdarstellungvon)
+                     WHERE ls.gml_id = l.gml_id AND NOT s.advstandardmodell IS NULL LIMIT 1 
+                   ) IS NULL 
+              ) 
+         )
+;
+
+COMMENT ON VIEW ap_pto_stra 
+  IS 'Sicht fÃŒr Kartendarstellung: Beschriftung aus "ap_pto" fÃŒr Lagebezeichnung mit Art "StraÃe", "Weg", "Platz" oder Klassifizierung.
+ Vorzugsweise mit advstandardmodell="DKKM1000", ersatzweise ohne Angabe. Dient im Script pp_laden.sql zum ersten FÃŒllen der Tabelle "pp_strassenname_p".';
+
+-- Daten aus dem View "ap_pto_stra" werden im PostProcessing gespeichert in den Tabellen "pp_strassenname" und "pp_strassenklas".
+-- Der View ÃŒbernimmt die Auswahl des passenden advstandardmodell und rechnet den Winkel passend um,
+-- In der Tabelle werden dann die leer gebliebenen Label aus dem Katalog noch ergÃ€nzt.
+
+-- DROP VIEW IF EXISTS ap_lto_stra;
+
+CREATE OR REPLACE VIEW ap_lto_stra 
+AS 
+  SELECT p.ogc_fid,
+         l.gml_id,                               -- wird im PP zum Nachladen aus Katalog gebraucht
+         p.schriftinhalt,                        -- WMS: LABELITEM
+         p.art,                                  -- WMS: CLASSITEM
+         p.horizontaleausrichtung  AS hor,       -- Verfeinern der Text-Position ..
+         p.vertikaleausrichtung    AS ver,       --  .. durch Klassifizierung hor/ver
+         p.wkb_geometry
+    FROM ap_lto p
+    JOIN ax_lagebezeichnungohnehausnummer l
+      ON l.gml_id = ANY (p.dientzurdarstellungvon)
+   WHERE  p.endet IS NULL
+     AND  p.art   IN ('Strasse','Weg','Platz','BezKlassifizierungStrasse') -- Diese Werte als CLASSES in LAYER behandeln. 
+     AND (    'DKKM1000' = ANY (p.advstandardmodell) -- "Lika 1000" bevorzugen
+       --  OR 'DLKM'     = ANY (p.advstandardmodell) -- oder auch Kataster allgemein?
+           -- Ersatzweise auch "keine Angabe", aber nur wenn es keinen besseren Text zur Lage gibt
+           OR (p.advstandardmodell IS NULL
+               -- Alternativen zur Lagebezeichnung suchen in P- und L-Version
+               AND (SELECT s.ogc_fid FROM ap_lto s -- irgend ein Feld eines anderen Textes (suchen)
+                      JOIN ax_lagebezeichnungohnehausnummer ls ON ls.gml_id = ANY(s.dientzurdarstellungvon)
+                     WHERE ls.gml_id = l.gml_id AND NOT s.advstandardmodell IS NULL 
+                     LIMIT 1  -- einer reicht als Beweis
+                   ) IS NULL  -- "Subquery IS NULL" liefert true wenn kein weiterer Text gefunden wird
+               AND (SELECT s.ogc_fid FROM ap_pto s
+                      JOIN ax_lagebezeichnungohnehausnummer ls ON ls.gml_id = ANY(s.dientzurdarstellungvon)
+                     WHERE ls.gml_id = l.gml_id AND NOT s.advstandardmodell IS NULL LIMIT 1 
+                   ) IS NULL 
+              ) 
+         )
+;
+
+COMMENT ON VIEW ap_lto_stra 
+  IS 'Sicht fÃŒr Kartendarstellung: Beschriftung aus "ap_lto" fÃŒr Lagebezeichnung mit Art "StraÃe", "Weg", "Platz" oder Klassifizierung.
+ Vorzugsweise mit advstandardmodell="DKKM1000", ersatzweise ohne Angabe. Dient im Script pp_laden.sql zum ersten FÃŒllen der Tabelle "pp_strassenname_l".';
+
+-- 2014-08-26: Daten aus dem View "ap_lto_stra" werden im PostProcessing gespeichert in den Tabellen "pp_strassenname_l".
+-- Der View ÃŒbernimmt die Auswahl des passenden advstandardmodell.
+-- In der Tabelle werden dann die leer gebliebenen Label aus dem Katalog noch ergÃ€nzt.
+
+
+-- Layer NAME "ap_pto_nam" GROUP "praesentation"
+-- -------------------------------------------------------
+-- 'NAM' = Name (Eigenname) und 'ZNM' = Zweitname (touristischer oder volkstÃŒmlicher Name) zu ...
+--   -- AX_Strassenverkehr oder AX_Platz usw.
+--  ap_pto >dientZurDarstellungVon> ?irgendwas?
+
+-- Dieser View wird bisher nicht verwendet. Dazu mÃŒsste ein neuer Layer erzeugt werden und die 
+-- Arten 'NAM' und 'ZNM' dann aus den View 'ap_pto_rest' heraus genommen werden.
+
+-- Entweder Layer trennen nach Text-Typen "NAM"+"ZNM" und dem Rest
+-- ODER           trennen nach fachlichen Ebenen wie "Nutzung" und "GebÃ€ude" und ....
+
+-- DROP VIEW IF EXISTS ap_pto_nam;
+
+CREATE OR REPLACE VIEW ap_pto_nam 
+AS 
+  SELECT p.ogc_fid,
+         p.schriftinhalt,                        -- WMS: LABELITEM
+         p.art,                                  -- WMS: CLASSITEM
+         p.horizontaleausrichtung  AS hor,       -- Verfeinern der Text-Position ..
+         p.vertikaleausrichtung    AS ver,       --  .. durch Klassifizierung hor/ver
+         p.drehwinkel * 57.296     AS winkel,    -- * 180 / Pi
+         p.wkb_geometry
+    FROM ap_pto p
+    JOIN nutzung l                      -- Im PostProcessing zusammen gefasste Nutzungsarten-Abschnitte
+      ON l.gml_id = ANY (p.dientzurdarstellungvon) 
+   WHERE NOT p.schriftinhalt IS NULL 
+     AND  p.endet IS NULL                            -- nichts historisches
+     AND  p.art   IN ('NAM','ZNM')                   -- CLASSES in LAYER
+     AND ('DKKM1000' = ANY (p.advstandardmodell)     -- "Lika 1000" bevorzugen
+           -- Ersatzweise auch "keine Angabe", aber nur wenn es keinen besseren Text zur Lage gibt
+           OR (p.advstandardmodell IS NULL
+               AND (SELECT s.gml_id                  -- irgend ein Feld
+                      FROM ap_pto s                  -- eines anderen Textes (suchen)
+                      JOIN nutzung l2                 -- Im PostProcessing zusammen gefasste Nutzungsarten-Abschnitte
+                        ON l2.gml_id = ANY (s.dientzurdarstellungvon) 
+                     WHERE NOT s.advstandardmodell IS NULL 
+                     LIMIT 1  -- einer reicht als Beweis
+                   ) IS NULL 
+              ) -- "Subquery IS NULL" liefert true wenn kein weiterer Text gefunden wird
+         )
+;
+
+COMMENT ON VIEW ap_pto_nam 
+  IS 'Sicht fÃŒr Kartendarstellung: Beschriftung mit Art = Name/Zweitname. Vorzugsweise mit advstandardmodell="DKKM1000", ersatzweise ohne Angabe.';
+-- ToDo: Im PostProcessing in einer Tabelle speichern.
+
+
+-- Layer NAME "ap_pto" GROUP "praesentation"
+-- ----------------------------------------
+-- REST: Texte, die nicht schon in einem anderen Layer ausgegeben werden
+-- Doppelte Darstellung aufgrund verschiedener "advstandardmodell" zum Objekt unterdrÃŒcken analog ap_pto_stra und ap_pto_nam
+
+-- DROP VIEW IF EXISTS ap_pto_rest;
+
+CREATE OR REPLACE VIEW ap_pto_rest
+AS 
+  SELECT p.ogc_fid, 
+         p.schriftinhalt, 
+         p.art, 
+         p.drehwinkel * 57.296 AS winkel, -- * 180 / Pi
+         p.wkb_geometry 
+    FROM ap_pto p
+   WHERE NOT p.schriftinhalt IS NULL
+     AND NOT p.dientzurdarstellungvon IS NULL
+     AND p.endet IS NULL
+     AND p.art   NOT IN ('PNR','HNR','Strasse','Weg','Platz','BezKlassifizierungStrasse','AOG_AUG') -- 'PNR',
+     -- Diese 'IN'-Liste fortschreiben bei Erweiterungen des Mapfiles
+     -- 'PNR' = Pseudonummer (lfd.-Nr.-NebengebÃ€ude), Inhalte wie "(1)" oder "P50" - kommt nicht mehr vor, oder?
+    AND ('DKKM1000' = ANY (p.advstandardmodell)     -- "Lika 1000" bevorzugen
+
+/*	-- Ãnderung 2014-10-28: nicht einbeziehen wenn advstandardmodell leer ist.
+	-- Sonst doppelte Darstellung von freierText mit StraÃennamen auf Nutzungsarten fÃŒr ABK.
+
+           -- Ersatzweise auch "keine Angabe" (null) akzeptieren, aber nur wenn ...
+           OR (p.advstandardmodell IS NULL
+               AND ( SELECT s.ogc_fid               -- irgend ein Feld
+                      FROM ap_pto s
+                     WHERE p.dientzurdarstellungvon = s.dientzurdarstellungvon -- gleiches PrÃ€sentationsobj.
+                       AND NOT s.advstandardmodell IS NULL -- Irgend eine Angabe
+                     LIMIT 1  -- einer reicht als AusschluÃkriterium
+                    ) IS NULL 
+              ) -- "Subquery IS NULL" liefert true wenn kein weiterer Text gefunden wird
+*/
+         );
+
+COMMENT ON VIEW ap_pto_rest 
+  IS 'Sicht fÃŒr Kartendarstellung: Beschriftungen aus "ap_pto", die noch nicht in anderen Layern angezeigt werden.';
+-- ToDo: Im PostProcessing in einer Tabelle speichern.
+
+-- Kommt PNR (Pseudonummer) noch im Bestand vor?
+--  SELECT * FROM ap_pto WHERE art = 'PNR' LIMIT 100; 
+
+
+-- Layer "s_zuordungspfeil_gebaeude"
+-- -----------------------------------
+-- DROP VIEW IF EXISTS s_zuordungspfeil_gebaeude;
+
+CREATE OR REPLACE VIEW s_zuordungspfeil_gebaeude
+AS 
+ SELECT l.ogc_fid, 
+     -- ap_lpo.art, -- TEST
+        l.wkb_geometry
+   FROM ap_lpo l
+   JOIN ax_gebaeude g
+     ON g.gml_id = ANY(l.dientzurdarstellungvon)
+  WHERE l.art = 'Pfeil'
+    AND g.endet IS NULL
+    AND l.endet IS NULL;
+
+COMMENT ON VIEW s_zuordungspfeil_gebaeude 
+  IS 'Sicht fÃŒr Kartendarstellung: Zuordnungspfeil fÃŒr GebÃ€ude-Nummer (NebengebÃ€ude). Wird wahrscheinlich nicht mehr benÃ¶tigt.';
+
+
+-- Grenzpunkte
+-- -----------
+-- Zum Punktort des Grenzpunktes auch eine Information zur Vermarkung holen
+-- DROP VIEW IF EXISTS grenzpunkt;
+
+CREATE OR REPLACE VIEW grenzpunkt 
+AS 
+ SELECT o.ogc_fid, 
+        o.wkb_geometry, 
+     -- g.punktkennung,    -- ggf spÃ€ter als labelitem "rrrrrhhhhAnnnnn" "32483 5751 0 02002"
+        g.abmarkung_marke  -- steuert die Darstellung >9000 = unvermarkt
+   FROM ax_punktortta o
+   JOIN ax_grenzpunkt g
+     ON o.istteilvon = g.gml_id
+   WHERE g.endet IS NULL
+     AND g.endet IS NULL;
+
+COMMENT ON VIEW grenzpunkt 
+  IS 'Sicht fÃŒr Kartendarstellung: ZusammenfÃŒhrung von Punktort (Geometrie) und AX_Grenzpunkt (Eigenschaften)';
+
+
+-- Sichten vom OBK (Oberbergischer Kreis)
+-- --------------------------------------
+
+CREATE OR REPLACE VIEW sk2012_flurgrenze 
+AS 
+ SELECT fg.ogc_fid, fg.wkb_geometry
+   FROM ax_besondereflurstuecksgrenze fg
+  WHERE 3000   = ANY (fg.artderflurstuecksgrenze)
+    AND 'DLKM' = ANY (fg.advstandardmodell);
+
+COMMENT ON VIEW sk2012_flurgrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Flurgrenze"';
+
+CREATE OR REPLACE VIEW sk2014_gemarkungsgrenze 
+AS 
+ SELECT gemag.ogc_fid, gemag.wkb_geometry
+   FROM ax_besondereflurstuecksgrenze gemag
+  WHERE 7003   = ANY (gemag.artderflurstuecksgrenze)
+    AND 'DLKM' = ANY (gemag.advstandardmodell);
+
+COMMENT ON VIEW sk2014_gemarkungsgrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Gemarkungsgrenze"';
+
+CREATE OR REPLACE VIEW sk2018_bundeslandgrenze 
+AS 
+ SELECT blg.ogc_fid, blg.wkb_geometry
+   FROM ax_besondereflurstuecksgrenze blg
+  WHERE 7102   = ANY (blg.artderflurstuecksgrenze)
+    AND 'DLKM' = ANY (blg.advstandardmodell);
+
+COMMENT ON VIEW sk2018_bundeslandgrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Bundeslandgrenze"';
+
+CREATE OR REPLACE VIEW sk2020_regierungsbezirksgrenze 
+AS 
+ SELECT rbg.ogc_fid, rbg.wkb_geometry
+   FROM ax_besondereflurstuecksgrenze rbg
+  WHERE 7103   = ANY (rbg.artderflurstuecksgrenze) 
+    AND 'DLKM' = ANY (rbg.advstandardmodell);
+
+COMMENT ON VIEW sk2020_regierungsbezirksgrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Regierungsbezirksgrenze"';
+
+CREATE OR REPLACE VIEW sk2022_gemeindegrenze 
+AS 
+ SELECT gemg.ogc_fid, gemg.wkb_geometry
+   FROM ax_besondereflurstuecksgrenze gemg
+  WHERE 7106   = ANY (gemg.artderflurstuecksgrenze) 
+    AND 'DLKM' = ANY (gemg.advstandardmodell);
+
+COMMENT ON VIEW sk2022_gemeindegrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Gemeindegrenze"';
+
+
+-- Zusammenfassung "Politische Grenzen"  Art= 7102, 7103, 7104, 7106
+
+-- Grenze der Bundesrepublik Deutschland 7101 (G)
+-- .. des Bundeslandes 7102 (G)
+-- .. des Regierungsbezirks 7103 (G)
+-- .. des Landkreises 7104 (G)
+-- .. der Gemeinde 7106
+-- .. des Gemeindeteils 7107
+-- .. der Verwaltungsgemeinschaft 7108
+
+CREATE OR REPLACE VIEW sk201x_politische_grenze 
+AS 
+ SELECT ogc_fid, artderflurstuecksgrenze as art, wkb_geometry
+   FROM ax_besondereflurstuecksgrenze
+--WHERE ( ANY (artderflurstuecksgrenze) IN (7102,7103,7104,7106) ) 
+  WHERE (7102 = ANY (artderflurstuecksgrenze) 
+     OR  7102 = ANY (artderflurstuecksgrenze) 
+     OR  7103 = ANY (artderflurstuecksgrenze) 
+     OR  7104 = ANY (artderflurstuecksgrenze) 
+     OR  7106 = ANY (artderflurstuecksgrenze)
+    )
+    AND 'DLKM' = ANY (advstandardmodell);
+
+COMMENT ON VIEW sk201x_politische_grenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze Politische Grenzen (Bund, Land, Kreis, Gemeinde)';
+-- GefÃ€llt mir nicht! Array-Felder eignen sich nicht als Filter. Optimierung: in Tabelle speichern
+
+
+-- Gruppe: BodenschÃ€tzung
+-- ----------------------
+
+-- FÃŒr Nachschlagen bei Feature-Info: EntschlÃŒsselung in Langform zu einer KlassenflÃ€che, ohne Geometrie.
+CREATE OR REPLACE VIEW s_bodensch_ent
+AS 
+ SELECT bs.ogc_fid,
+      --bs.advstandardmodell,   -- NUR TEST
+        ka.bezeichner                      AS kulturart_e,
+        ba.bezeichner                      AS bodenart_e,
+        zs.bezeichner                      AS zustandsstufe_e,
+        bs.bodenzahlodergruenlandgrundzahl AS grundz,
+        bs.ackerzahlodergruenlandzahl      AS agzahl,
+        ea1.bezeichner                     AS entstehart1,
+        ea2.bezeichner                     AS entstehart2,
+        -- entstehungsartoderklimastufewasserverhaeltnisse ist array!
+        bs.sonstigeangaben,                           -- integer array  - EntschlÃŒsseln?
+        so1.bezeichner                     AS sonst1, -- EnstschlÃŒsselung 
+     -- so2.bezeichner                     AS sonst2, -- immer leer?
+        bs.jahreszahl                                 -- integer
+   FROM      ax_bodenschaetzung bs
+   LEFT JOIN v_bschaetz_kulturart      ka ON bs.kulturart = ka.wert
+   LEFT JOIN v_bschaetz_bodenart       ba ON bs.bodenart  = ba.wert
+   LEFT JOIN v_bschaetz_zustandsstufe  zs ON bs.zustandsstufeoderbodenstufe = zs.wert
+   LEFT JOIN v_bschaetz_entsteh_klima ea1 
+          ON bs.entstehungsartoderklimastufewasserverhaeltnisse[1] = ea1.wert   -- [1] fast immer gefÃŒllt
+   LEFT JOIN v_bschaetz_entsteh_klima ea2 
+          ON bs.entstehungsartoderklimastufewasserverhaeltnisse[2] = ea2.wert   -- [2] manchmal gefÃŒllt
+   LEFT JOIN v_bschaetz_sonst so1 ON bs.sonstigeangaben[1] = so1.wert -- [1] selten gefÃŒllt
+ --LEFT JOIN v_bschaetz_sonst so2 ON bs.sonstigeangaben[2] = so2.wert -- [2] fast nie
+   WHERE bs.endet IS NULL;
+
+COMMENT ON VIEW s_bodensch_ent IS 'Sicht fÃŒr Feature-Info: BodenschÃ€tzung, mit Langtexten entschlÃŒsselt';
+
+-- Variante 1: Nur EIN Layer. 
+--             Label mittig in der FlÃ€che, dann ist auch kein Zuordnungs-Pfeil notwendig.
+
+-- KlassenflÃ€che (Geometrie) mit ihrem Kurz-Label-Text, der dann mittig an Standardposition angezeigt werden kann. 
+CREATE OR REPLACE VIEW s_bodensch_wms
+AS 
+ SELECT bs.ogc_fid,
+        bs.wkb_geometry,
+     -- bs.advstandardmodell,     -- NUR TEST
+     -- bs.entstehungsartoderklimastufewasserverhaeltnisse AS entstehart, -- Array der Keys, NUR TEST
+        ka.kurz AS kult,  -- Kulturart, CLASSITEM, steuert die Farbe
+     -- Viele Felder zusammen packen zu einem kompakten Zwei-Zeilen-Label:
+          ba.kurz  ||             -- Bodenart
+          zs.kurz  ||             -- Zustandsstufe
+          ea1.kurz ||             -- Entstehungsart oder Klimastufe, Wasserverhaeltnisse ist ein Array mit 1 bis 2 Elementen
+          coalesce (ea2.kurz, '') -- NULL vermeiden!
+          || ' ' ||               -- Zeilenwechsel im Label (UMN: WRAP)
+          bs.bodenzahlodergruenlandgrundzahl || '/' ||
+          bs.ackerzahlodergruenlandzahl 
+        AS derlabel               -- LABELITEM Umbruch am Blank
+   FROM      ax_bodenschaetzung bs
+   LEFT JOIN v_bschaetz_kulturart      ka ON bs.kulturart = ka.wert
+   LEFT JOIN v_bschaetz_bodenart       ba ON bs.bodenart  = ba.wert
+   LEFT JOIN v_bschaetz_zustandsstufe  zs ON bs.zustandsstufeoderbodenstufe = zs.wert
+   LEFT JOIN v_bschaetz_entsteh_klima ea1 
+          ON bs.entstehungsartoderklimastufewasserverhaeltnisse[1] = ea1.wert   -- [1] fast immer gefÃŒllt
+   LEFT JOIN v_bschaetz_entsteh_klima ea2 
+          ON bs.entstehungsartoderklimastufewasserverhaeltnisse[2] = ea2.wert   -- [2] manchmal gefÃŒllt
+   WHERE bs.endet IS NULL;
+
+COMMENT ON VIEW s_bodensch_wms IS 'Sicht fÃŒr Kartendarstellung: BodenschÃ€tzung mit kompakten Informationen fÃŒr Label.';
+
+
+-- Variante 2: FlÃ€che und Text als getrennte Layer. Text an manueller Position, 
+--             ggf. auÃerhalb der FlÃ€che. Dann ist ein Zuordnungspfeil notwendig.
+
+-- Die FlÃ€che ohne Label
+CREATE OR REPLACE VIEW s_bodensch_po
+AS
+ SELECT ogc_fid,
+        wkb_geometry,
+        kulturart  -- Kulturart, numerischer SchlÃŒssel, CLASSITEM
+   FROM ax_bodenschaetzung
+  WHERE endet IS NULL;
+
+COMMENT ON VIEW s_bodensch_po IS 'Sicht fÃŒr Kartendarstellung: KlassenflÃ€che der BodenschÃ€tzung ohne Label.';
+
+-- Der Label zu den Klassenabschnitten
+-- ACHTUNG: Zu einigen Abschnitten gibt es mehrerere (identische) Label an verschiedenen Positionen! 
+CREATE OR REPLACE VIEW s_bodensch_tx
+AS 
+ SELECT bs.ogc_fid,
+        p.wkb_geometry,           -- Geomterie (Punkt) des Labels
+     -- bs.wkb_geometry,          -- Geometrie der FlÃ€che, nicht des Label
+        bs.advstandardmodell,     -- NUR TEST
+     -- bs.entstehungsartoderklimastufewasserverhaeltnisse AS entstehart, -- Array der Keys, NUR TEST
+        ka.kurz AS kult,  -- Kulturart, CLASSITEM, steuert die Farbe
+     -- p.horizontaleausrichtung,  -- Feinpositionierung  ..    (zentrisch)
+	 -- p.vertikaleausrichtung,    --  .. des Labels            (basis)   -> uc
+     -- Viele Felder zusammen packen zu einem kompakten Zwei-Zeilen-Label:
+          ba.kurz  ||              -- Bodenart
+          zs.kurz  ||              -- Zustandsstufe
+          ea1.kurz ||              -- Entstehungsart oder Klimastufe, Wasserverhaeltnisse
+          coalesce (ea2.kurz, '')  -- Noch mal, ist ein Array mit 1 bis 2 Elementen
+          || ' ' ||                -- Zeilenwechsel im Label (UMN: WRAP ' ')
+          bs.bodenzahlodergruenlandgrundzahl || '/' ||
+          bs.ackerzahlodergruenlandzahl 
+        AS derlabel                -- LABELITEM, Umbruch am Leerzeichen
+   FROM ap_pto                                 p
+   JOIN ax_bodenschaetzung                     bs ON bs.gml_id = ANY(p.dientzurdarstellungvon)
+   LEFT JOIN v_bschaetz_kulturart      ka ON bs.kulturart = ka.wert
+   LEFT JOIN v_bschaetz_bodenart       ba ON bs.bodenart  = ba.wert
+   LEFT JOIN v_bschaetz_zustandsstufe  zs ON bs.zustandsstufeoderbodenstufe = zs.wert
+   LEFT JOIN v_bschaetz_entsteh_klima ea1 
+          ON bs.entstehungsartoderklimastufewasserverhaeltnisse[1] = ea1.wert 
+   LEFT JOIN v_bschaetz_entsteh_klima ea2 
+          ON bs.entstehungsartoderklimastufewasserverhaeltnisse[2] = ea2.wert 
+  WHERE  p.endet  IS NULL
+     AND bs.endet IS NULL;
+
+COMMENT ON VIEW s_bodensch_tx IS 'Sicht fÃŒr Kartendarstellung: Kompakter Label zur KlassenflÃ€che der BodenschÃ€tzung an manueller Position. 
+Der Label wird zusammengesetzt aus: Bodenart, Zustandsstufe, Entstehungsart oder Klimastufe/WasserverhÃ€ltnisse, Bodenzahl oder GrÃŒnlandgrundzahl und Ackerzahl oder GrÃŒnlandzahl.';
+
+-- Redundanz suchen:
+--  SELECT ogc_fid, count(advstandardmodell) AS anzahl FROM s_bodensch_tx GROUP BY ogc_fid HAVING count(advstandardmodell) > 1;
+--  SELECT * FROM s_bodensch_tx WHERE ogc_fid in (2848, 1771, 3131, 3495) ORDER BY ogc_fid;
+
+-- END --
+
+
+-- B o d e n s c h a e t z u n g   -  Entstehungsart oder Klimastufe / Wasserverhaeltnisse
+-- ----------------------------------------------------------------------------------------
+-- alter Name: ax_bodenschaetzung_entstehungsartoderklimastufe
+DROP TABLE v_bschaetz_entsteh_klima;
+CREATE TABLE v_bschaetz_entsteh_klima (
+    wert integer,
+    kurz character varying,
+    bezeichner character varying,
+    CONSTRAINT pk_v_bschaetz_entsteh_klima_w PRIMARY KEY (wert)
+  );
+
+COMMENT ON TABLE v_bschaetz_entsteh_klima
+ IS 'BodenschÃ€tzung, Spalte: Entstehungsart oder Klimastufe - SchlÃŒsseltabelle mit Werten aus GeoInfoDok NW, geladen mit SQL-Script. Zu Tabelle "ax_bodenschaetzung", Feld "entstehungsartoderklimastufe".';
+
+COMMENT ON COLUMN v_bschaetz_entsteh_klima.wert       IS 'numerischer SchlÃŒssel';
+COMMENT ON COLUMN v_bschaetz_entsteh_klima.kurz       IS 'KÃŒrzel, Kartenanzeige';
+COMMENT ON COLUMN v_bschaetz_entsteh_klima.bezeichner IS 'Lange Bezeichnung';
+
+
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1000,'D',   'Diluvium (D)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1100,'DAl', 'Diluvium ÃŒber Alluvium (DAl)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1200,'DLÃ¶', 'Diluvium ÃŒber LÃ¶Ã (DLÃ¶)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1300,'DV',  'Diluvium ÃŒber Verwitterung (DV)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1400,'Dg',  'Diluvium, gesteinig (Dg)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1410,'DgAl','Diluvium, gesteinig ÃŒber Alluvium (DgAl)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1420,'DgLÃ¶','Diluvium, gesteinig ÃŒber LÃ¶Ã (DgLÃ¶)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(1430,'DgV', 'Diluvium, gesteinig ÃŒber Verwitterung (DgV)');
+
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2000,'LÃ¶',  'LÃ¶Ã (LÃ¶)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2100,'LÃ¶D', 'LÃ¶Ã ÃŒber Diluvium (LÃ¶D)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2110,'LÃ¶Dg','LÃ¶Ã, Diluvium, GesteinsbÃ¶den (LÃ¶Dg)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2120,'LÃ¶DV','LÃ¶Ã, Diluvium, Verwitterung (LÃ¶DV)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2200,'LÃ¶Al','LÃ¶Ã ÃŒber Alluvium (LÃ¶Al)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2300,'LÃ¶V', 'LÃ¶Ã ÃŒber Verwitterung (LÃ¶V)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2310,'LÃ¶Vg','LÃ¶Ã, Verwitterung, GesteinsbÃ¶den (LÃ¶Vg)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(2400,'LÃ¶Vg','LÃ¶Ã ÃŒber Verwitterung, gesteinig (LÃ¶Vg)');
+
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3000,'Al',  'Alluvium (Al)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3100,'AlD', 'Alluvium ÃŒber Diluvium (AlD)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3200,'AlLÃ¶','Alluvium ÃŒber LÃ¶Ã (AlLÃ¶)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3300,'AlV', 'Alluvium ÃŒber Verwitterung (AlV)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3400,'Alg', 'Alluvium, gesteinig (Alg)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3410,'AlgD','Alluvium, gesteinig ÃŒber Diluvium (AlgD)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3420,'AlgLÃ¶','Alluvium, gesteinig ÃŒber LÃ¶Ã (AlgLÃ¶)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3430,'AlgV','Alluvium, gesteinig ÃŒber Verwitterung (AlgV)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3500,'AlMa','Alluvium, Marsch (AlMa)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3610,'AlMo','Alluvium, Moor (AlMo)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3620,'MoAI','Moor, Alluvium (MoAI)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(3700,'Me',  'Mergel (Me)');
+
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(4000,'V',   'Verwitterung (V)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(4100,'VD',  'Verwitterung ÃŒber Diluvium (VD)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(4200,'VAl', 'Verwitterung ÃŒber Alluvium (VAl)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(4300,'VLÃ¶', 'Verwitterung ÃŒber LÃ¶Ã (VLÃ¶)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(4400,'Vg',  'Verwitterung, GesteinsbÃ¶den (Vg)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(4410,'VgD', 'Verwitterung, GesteinsbÃ¶den ÃŒber Diluvium (VgD)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(5000,'-',   'Entstehungsart nicht erkennbar (-)');
+
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(6100,'a',   'Klimastufe 8Â° C und darÃŒber (a)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(6200,'b',   'Klimastufe 7,9Â° - 7,0Â° C (b)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(6300,'c',   'Klimastufe 6,9Â° - 5,7Â° C (c)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(6400,'d',   'Klimastufe 5,6Â° C und darunter (d)');
+
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7100,'1',   'Wasserstufe (1)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7200,'2',   'Wasserstufe (2)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7300,'3',   'Wasserstufe (3)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7400,'4',   'Wasserstufe (4)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7410,'4-',  'Wasserstufe (4-)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7500,'5',   'Wasserstufe (5)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7510,'5-',  'Wasserstufe (5-)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7520,'3-',  'Wasserstufe (3-)');
+INSERT INTO v_bschaetz_entsteh_klima (wert, kurz, bezeichner) VALUES(7530,'3+4', 'Wasserstufe (3+4)');
+
+
+
+
+
+-- ALKIS PostNAS 0.8
+
+-- Post Processing (pp_) Teil 1: Anlegen der Tabellen und Views
+
+-- Koordinatensystem ÃŒbergeben mit "psql  .. -v alkis_epsg=:alkis_epsg"
+-- :alkis_epsg=25832
+
+-- Stand 
+--  2012-02-13 PostNAS 07, Umbenennung
+--  2012-02-17 Optimierung
+--  2012-02-28 gkz aus View nehmen
+--  2012-04-17 Flurstuecksnummern auf Standardposition
+--  2012-04-23 ax_flurstueck hat keinen Unique Index mehr auf gml_id,
+--             ForeignKey vorÃŒbergehend ausgeschaltet.
+--  2012-04-25 simple_geom fuer pp_flur
+--  2013-04-18 Kommentare.
+--  2012-10-24 Neue Tabelle fÃŒr die PrÃ€sentation von StraÃennamen und -Klassifikationen
+--  2014-08-26 Aus "pp_strassenname" werden die Varianten *_p und *_l
+--             Erweiterte gml_id wie bei den primÃ€ren Tabellen, bisher (16).
+--  2014-09-02 Entfernen der JOINs ÃŒber "alkis_beziehungen". 
+--             Wie im Schema: SchlÃŒssel von integer nach varchar fÃŒr land, regierungsbezirk usw.
+--  2014-10-28 letzte FÃ€lle von "substring(gml_id,1,16)" wieder raus
+--  2014-12-17 Spalte gemeinde in Tabelle pp_flur, dient der Filterung im WMS-Layer "Gebiete"
+
+/* Patch 2014-12-17:
+ ALTER TABLE pp_flur ADD COLUMN gemeinde character varying;
+ COMMENT ON COLUMN pp_flur.gemeinde IS 'Gemeindenummer';
+*/
+
+-- ============================
+-- Tabellen des Post-Processing
+-- ============================
+
+-- Einige Informationen liegen nach der NAS-Konvertierung in der Datenbank "verstreut" vor.
+-- Die dynamische Aufbereitung ÃŒber Views und Functions wÃŒrde zu lange dauern und somit lange 
+-- Antwortzeiten in WMS, WFS, Buchauskunft oder Navigation (Suche) verursachen.
+
+-- Im Rahmen eines "Post-Processing" werden diese Daten nach jeder Konvertierung (NBA-Aktialisierung) 
+-- einmal komplett aufbereitet. Die benÃ¶tigten Informationen stehen somit den Anwendungen mundgerecht zur VerfÃŒgung.
+
+-- Die per PostProcessing gefÃŒllten Tabellen bekommen den Prefix "pp_".
+
+-- ToDo:
+-- Muss *multi*-Polygon sein? Gibt es "zerrissene" Fluren/Gemarkungen?
+-- Der View "gemeinde_gemarkung" kann entfallen, wenn Navigation umgestellt wurde.
+
+SET client_encoding = 'UTF-8';
+
+-- Alles auf Anfang
+
+ DROP VIEW IF EXISTS gemeinde_person_typ1;
+ DROP VIEW IF EXISTS gemeinde_person_typ2;
+ DROP VIEW IF EXISTS gemeinde_person_statistik;
+ DROP VIEW IF EXISTS gemeinde_gemarkung;
+ DROP VIEW IF EXISTS pp_gemeinde_analyse;
+ DROP VIEW IF EXISTS pp_gemarkung_analyse;
+
+/*
+ DROP TABLE gemeinde_person;
+ DROP TABLE pp_gemeinde;
+ DROP TABLE pp_gemarkung;
+ DROP TABLE pp_flur;
+ DROP TABLE pp_flurstueck_nr;
+ DROP TABLE pp_strassenname_p;
+ DROP TABLE pp_strassenname_l;
+*/
+
+-- Tabelle fuer Gemeinden
+-- ========================
+
+  CREATE TABLE pp_gemeinde (
+    gid                serial,
+    land               character varying NOT NULL,
+    regierungsbezirk   character varying,
+    kreis              character varying,
+    gemeinde           character varying NOT NULL,
+    gemeindename       character varying(80),
+ -- gkz                character varying(03),    -- wird (noch) nicht benutzt
+    anz_gemarkg        integer,                  -- Anzahl Gemarkungen
+    CONSTRAINT pp_gemeinde_pk PRIMARY KEY (land, gemeinde)
+  );
+
+CREATE UNIQUE INDEX pp_gemeinde_gid_ix ON pp_gemeinde (gid);
+
+-- GesamtflÃ€che
+SELECT AddGeometryColumn('pp_gemeinde','the_geom',:alkis_epsg,'MULTIPOLYGON',2);
+CREATE INDEX pp_gemeinde_gidx ON pp_gemeinde USING gist(the_geom);
+
+-- vereinfachte GesamtflÃ€che
+SELECT AddGeometryColumn('pp_gemeinde','simple_geom',:alkis_epsg,'MULTIPOLYGON',2);
+CREATE INDEX pp_gemeinde_sgidx ON pp_gemeinde USING gist(simple_geom);
+
+
+  COMMENT ON TABLE  pp_gemeinde                IS 'Post-Processing: Gemeinde';
+  COMMENT ON COLUMN pp_gemeinde.gemeinde       IS 'Gemeindenummer';
+--COMMENT ON COLUMN pp_gemeinde.gkz            IS 'Gemeindekennziffer fÃŒr Mandant';
+  COMMENT ON COLUMN pp_gemeinde.the_geom       IS 'prÃ€zise Geometrie aus Summe aller Gemarkungen';
+  COMMENT ON COLUMN pp_gemeinde.simple_geom    IS 'vereinfachte Geometrie fÃŒr die Suche und die Anzeige von Ãbersichten in kleinen MaÃstÃ€ben.';
+
+
+-- Tabelle fuer Gemarkungen
+-- ========================
+
+-- FÃŒr die Regelung der Zugriffsberechtigung einer Gemeindeverwaltung auf die 
+-- FlurstÃŒcke in ihrem Gebiet braucht man die Information, in welcher Gemeinde eine Gemarkung liegt.
+-- 'ax_gemeinde' und 'ax_gemarkung' haben aber im ALKIS keinerlei Beziehung zueinander - kaum zu glauben!
+-- Nur ÃŒber die Auswertung der FlurstÃŒcke kann man die Zuordnung ermitteln.
+-- Da nicht stÃ€ndig mit 'SELECT DISTINCT' sÃ€mtliche FlurstÃŒcke durchsucht werden kÃ¶nnen, 
+-- muss diese Information als (redundante) Tabelle nach dem Laden zwischengespeichert werden. 
+
+  CREATE TABLE pp_gemarkung (
+    gid                serial,
+    land               character varying NOT NULL,
+    regierungsbezirk   character varying,
+    kreis              character varying,
+    gemeinde           character varying NOT NULL, -- fast ein Foreign-Key Constraint
+    gemarkung          character varying NOT NULL,
+    gemarkungsname     character varying(80),
+    anz_flur           integer,                -- Anzahl Fluren
+    CONSTRAINT pp_gemarkung_pk PRIMARY KEY (land, gemarkung)
+  );
+
+CREATE UNIQUE INDEX pp_gemarkung_gid_ix ON pp_gemarkung (gid);
+
+-- GesamtflÃ€che
+SELECT AddGeometryColumn('pp_gemarkung','the_geom',:alkis_epsg,'MULTIPOLYGON',2);
+CREATE INDEX pp_gemarkung_gidx ON pp_gemarkung USING gist(the_geom);
+
+-- vereinfachte GesamtflÃ€che
+SELECT AddGeometryColumn('pp_gemarkung','simple_geom',:alkis_epsg,'MULTIPOLYGON',2);
+CREATE INDEX pp_gemarkung_sgidx ON pp_gemarkung USING gist(simple_geom);
+
+
+COMMENT ON TABLE  pp_gemarkung               IS 'Post-Processing: Gemarkung. u.a. liegt in welcher Gemeinde';
+COMMENT ON COLUMN pp_gemarkung.gemeinde      IS 'Gemeindenummer';
+COMMENT ON COLUMN pp_gemarkung.gemarkung     IS 'Gemarkungsnummer';
+COMMENT ON COLUMN pp_gemarkung.the_geom      IS 'prÃ€zise Geometrie aus Summe aller Fluren';
+COMMENT ON COLUMN pp_gemarkung.simple_geom   IS 'vereinfachte Geometrie fÃŒr die Suche und die Anzeige von Ãbersichten in kleinen MaÃstÃ€ben.';
+
+
+-- Tabelle fuer Fluren
+-- ===================
+
+  CREATE TABLE pp_flur (
+    gid                serial,
+    land               character varying NOT NULL,
+    regierungsbezirk   character varying,
+    kreis              character varying,
+    gemeinde           character varying NOT NULL,
+    gemarkung          character varying NOT NULL,
+    flurnummer         integer NOT NULL,
+    anz_fs             integer,              -- Anzahl FlurstÃŒcke
+    CONSTRAINT pp_flur_pk PRIMARY KEY (land, gemarkung, flurnummer)
+  );
+
+-- ALTER TABLE pp_flur ADD COLUMN gid serial;
+CREATE UNIQUE INDEX pp_flur_gid_ix ON pp_flur (gid);
+
+-- GesamtflÃ€che
+SELECT AddGeometryColumn('pp_flur','the_geom',:alkis_epsg,'MULTIPOLYGON',2);
+CREATE INDEX pp_flur_gidx ON pp_flur USING gist(the_geom);
+
+-- vereinfachte Gesamtflaeche
+SELECT AddGeometryColumn('pp_flur','simple_geom',:alkis_epsg,'MULTIPOLYGON',2);
+CREATE INDEX pp_flur_sgidx ON pp_flur USING gist(simple_geom);
+
+
+COMMENT ON TABLE  pp_flur                IS 'Post-Processing: Flur';
+COMMENT ON COLUMN pp_flur.gemeinde       IS 'Gemeindenummer';
+COMMENT ON COLUMN pp_flur.gemarkung      IS 'Gemarkungsnummer';
+COMMENT ON COLUMN pp_flur.the_geom       IS 'Geometrie aus Summe aller FlurstÃŒcke';
+COMMENT ON COLUMN pp_flur.simple_geom    IS 'vereinfachte Geometrie fÃŒr die Suche und die Anzeige von Ãbersichten in kleinen MaÃstÃ€ben.';
+
+
+-- =======================================================
+-- Tabelle fuer die Zuordnung vom EigentÃŒmern zu Gemeinden
+-- =======================================================
+
+-- Die Feststellung, ob eine Person (Mit-) EigentÃŒmer von mindestens einem
+-- FlurstÃŒck in einer Gemeinde ist, geht ÃŒber viele Relationen.
+-- Dabei kann es mehrere Varianten geben.
+-- Dies sollte nach dem Laden ermittelt und gespeichert werden, damit dies in
+-- der Navigation auf einfache Art verwendet werden kann. 
+
+
+-- Prefix "pp_" verwenden  ?
+
+--DROP TABLE gemeinde_person;
+
+  CREATE TABLE gemeinde_person (
+    land                character varying,
+    regierungsbezirk    character varying,
+    kreis               character varying,
+    gemeinde            character varying,
+    person              character varying,
+    buchtyp             integer,
+    CONSTRAINT gemeinde_person_pk PRIMARY KEY (gemeinde, person)
+  );
+
+COMMENT ON TABLE  gemeinde_person            IS 'Person ist EigentÃŒmer von mindestens einem FlurstÃŒck in der Gemeinde';
+COMMENT ON COLUMN gemeinde_person.gemeinde   IS 'Gemeindenummer';
+COMMENT ON COLUMN gemeinde_person.buchtyp    IS 'Typ der Buchung 1=direkt, 2=Recht einer Buchungsstele an andere Buchungsstelle';
+COMMENT ON COLUMN gemeinde_person.person     IS 'gml_id von Person';
+
+-- Index zum Filtern in der Buchauskunft
+CREATE INDEX person_gemeinde  ON gemeinde_person (person, gemeinde);
+
+
+-- Flurstuecksnummern-Position
+-- ===========================
+-- Die Tabelle "pp_flurstueck_nr" ersetzt den View "s_flurstueck_nr" fÃŒr WMS-Layer "ag_t_flurstueck".
+
+--DROP TABLE pp_flurstueck_nr;
+  CREATE TABLE pp_flurstueck_nr (
+    gid		serial,
+    fsgml	     character varying,
+    fsnum	     character varying(10),  -- zzzzz/nnnn
+    CONSTRAINT pp_flurstueck_nr_pk  PRIMARY KEY (gid)  --,
+-- Foreign Key
+-- ALT:
+--    CONSTRAINT pp_flurstueck_nr_gml FOREIGN KEY (fsgml)
+--      REFERENCES ax_flurstueck (gml_id) MATCH SIMPLE
+--      ON UPDATE CASCADE ON DELETE CASCADE
+-- Durch Ãnderung Patch #5444 am 2012-04-23 hat 'ax_flurstueck' keinen Unique-Index mehr auf gml_id
+-- Ersatzweise einen ForeignKey ÃŒber 2 Felder?
+  );
+
+SELECT AddGeometryColumn('pp_flurstueck_nr','the_geom',:alkis_epsg,'POINT',2);
+
+-- Geometrischer Index
+CREATE INDEX pp_flurstueck_nr_gidx    ON pp_flurstueck_nr USING gist  (the_geom);
+CREATE INDEX fki_pp_flurstueck_nr_gml ON pp_flurstueck_nr USING btree (fsgml);
+
+COMMENT ON TABLE  pp_flurstueck_nr           IS 'Post-Processing: Position der FlurstÃŒcksnummer in der Karte';
+COMMENT ON COLUMN pp_flurstueck_nr.fsgml     IS 'gml_id des zugehÃ¶rigen FlurstÃŒcks-Objektes ( <- ap_pto.dientZurDarstellungVon)';
+COMMENT ON COLUMN pp_flurstueck_nr.fsnum     IS 'Label, Darzustellende FS-Nummer als Bruch';
+COMMENT ON COLUMN pp_flurstueck_nr.the_geom  IS 'Position der FlurstÃŒcksnummer in der Karte';
+
+
+-- =====
+-- VIEWs 
+-- =====
+
+-- Ein View, der ÃŒbergangsweise die ehemalige Tabelle mit diesem Namen ersetzt.
+-- Wird in der Navigation verwendet, bis alle Datenbanken auf die Struktur 0.7 umgestellt 
+-- sind *UND* die Navigation an die neuen Tabellen angepasst ist.
+
+CREATE OR REPLACE VIEW gemeinde_gemarkung
+AS
+  SELECT g.land, g.regierungsbezirk, g.kreis, g.gemeinde, k.gemarkung, g.gemeindename, k.gemarkungsname
+  FROM pp_gemarkung k
+  JOIN pp_gemeinde  g 
+    ON k.land = g.land AND k.gemeinde = g.gemeinde;
+
+COMMENT ON VIEW gemeinde_gemarkung 
+  IS 'Die Sicht "gemeinde_gemarkung" enthaelt nur gefÃŒllte Gemarkungen (mit FS) aber Gemeinde mehrfach. Diese Sicht wird derzeit noch in der Navigation benutzt (alkisnav_fls.php, _grd.php, _eig.php). Definiert in pp_definition.sql. Soll kÃŒnftig entfallen.';
+
+
+-- VIEWs  fuer die Zuordnung vom EigentÃŒmern zu Gemeinden
+-- ------------------------------------------------------
+
+-- "Normale" Buchungen
+-- ToDo: +++++  View "gemeinde_gemarkung" nicht verwenden, auflÃ¶sen
+CREATE OR REPLACE VIEW gemeinde_person_typ1
+AS
+  SELECT DISTINCT p.gml_id AS person, g.land, g.regierungsbezirk, g.kreis, g.gemeinde
+  FROM ax_person          p
+  JOIN ax_namensnummer    n  ON n.benennt=p.gml_id              -- Person <benennt< Namensnummer
+  JOIN ax_buchungsblatt   b  ON n.istbestandteilvon=b.gml_id    -- Namensnummer >istBestandteilVon> Blatt
+  JOIN ax_buchungsstelle  s  ON s.istbestandteilvon= b.gml_id   -- Blatt <istBestandteilVon< buchungsStelle
+  JOIN ax_flurstueck      f  ON f.istgebucht=s.gml_id           -- buchungsStelle <istGebucht< flurstÃŒck
+  JOIN ax_gemarkung       k  ON f.land=k.land AND f.gemarkungsnummer=k.gemarkungsnummer 
+  JOIN gemeinde_gemarkung g  ON k.gemarkungsnummer=g.gemarkung;
+
+COMMENT ON VIEW gemeinde_person_typ1 
+  IS 'Personen die EigentÃŒmer vom FlurstÃŒcken in einer Gemeinde sind. Typ1 = nomale Buchungen mit direkter Beziehung.';
+
+
+-- "Komplexe" Buchungen mit Rechten von Buchungen an Buchungen
+-- ToDo: +++++  View "gemeinde_gemarkung" nicht verwenden, auflÃ¶sen
+CREATE OR REPLACE VIEW gemeinde_person_typ2
+AS
+  SELECT DISTINCT p.gml_id AS person, g.land, g.regierungsbezirk, g.kreis, g.gemeinde
+  FROM ax_person          p
+  JOIN ax_namensnummer    n  ON n.benennt=p.gml_id             -- Person <benennt< Namensnummer
+  JOIN ax_buchungsblatt   b  ON n.istBestandteilVon=b.gml_id   -- Namensnummer >istBestandteilVon> Blatt
+  JOIN ax_buchungsstelle  s1 ON s1.istbestandteilvon=b.gml_id  -- Blatt <istBestandteilVon< buchungsStelle1
+  JOIN ax_buchungsstelle  s2 ON s2.gml_id=ANY(s1.an)           -- buchungsStelle2 <(recht)an< buchungsStelle1
+  JOIN ax_flurstueck      f  ON f.istgebucht=s2.gml_id         -- buchungsStelle2 < istGebucht < flurstÃŒck
+  JOIN ax_gemarkung       k  ON f.land=k.land AND f.gemarkungsnummer=k.gemarkungsnummer 
+  JOIN gemeinde_gemarkung g  ON k.gemarkungsnummer=g.gemarkung;
+
+COMMENT ON VIEW gemeinde_person_typ2 
+  IS 'Personen die EigentÃŒmer vom FlurstÃŒcken in einer Gemeinde sind. Typ2 = Buchungen mit Rechten einer Buchungssstelle an einer anderen.';
+
+-- Statistik ÃŒber die Buchungs-Typen je Gemeinde
+-- ToDo: +++++  View "gemeinde_gemarkung" nicht verwenden, auflÃ¶sen
+CREATE OR REPLACE VIEW gemeinde_person_statistik
+AS
+  SELECT p.land, p.regierungsbezirk, p.kreis, p.gemeinde, g.gemeindename, p.buchtyp, count(p.person) as personen
+  FROM   gemeinde_person    p
+  JOIN   gemeinde_gemarkung g
+    ON   p.land     = g.land 
+    AND  p.regierungsbezirk = g.regierungsbezirk 
+    AND  p.kreis    = g.kreis 
+    AND  p.gemeinde = g.gemeinde
+  GROUP BY p.land, p.regierungsbezirk, p.kreis, p.gemeinde, g.gemeindename, p.buchtyp
+  ORDER BY p.land, p.regierungsbezirk, p.kreis, p.gemeinde, p.buchtyp;
+
+COMMENT ON VIEW gemeinde_person_statistik IS 'ZÃ€hlen der Personen je Gemeinde und Buchungstyp';
+
+
+-- Views zur Analyse der vereinfachten Geometrie
+-- Finden des richtigen Genauigkeits-Wertes fÃŒr die Vereinfachung der Geometrie
+
+-- z.B. Gemeinden:  10 Meter
+--      Gemarkungen: 4 Meter
+
+CREATE OR REPLACE VIEW pp_gemeinde_analyse AS
+  SELECT land, gemeinde, gemeindename,
+         st_npoints(the_geom)    AS umring_alle_punkte,
+         st_npoints(simple_geom) AS umring_einfache_punkte
+  FROM pp_gemeinde;
+
+
+CREATE OR REPLACE VIEW pp_gemarkung_analyse AS
+  SELECT land, gemeinde, gemarkung, gemarkungsname,
+         st_npoints(the_geom)    AS umring_alle_punkte,
+         st_npoints(simple_geom) AS umring_einfache_punkte
+  FROM pp_gemarkung;
+
+-- 2014-08-26 Aus Version "pp_strassenname" werden die Varianten *_p und *_l
+
+-- Variante fÃŒr Punkt-Geometrie
+CREATE TABLE pp_strassenname_p 
+(   gid                    serial NOT NULL,
+    gml_id                 character varying,
+ -- advstandardmodell      character varying[],
+    schriftinhalt          character varying,      -- Label: anzuzeigender Text
+    hor                    character varying,
+    ver                    character varying,
+ -- signaturnummer         character varying,
+ -- darstellungsprioritaet integer,
+    art                    character varying,
+    winkel                 double precision,
+    CONSTRAINT pp_snamp_pk  PRIMARY KEY (gid)
+) WITH (OIDS=FALSE);
+
+-- :alkis_epsg = :alkis_epsg
+SELECT AddGeometryColumn('pp_strassenname_p','the_geom',:alkis_epsg,'POINT',2);
+CREATE INDEX pp_snamp_gidx ON pp_strassenname_p USING gist(the_geom); 
+
+  COMMENT ON TABLE  pp_strassenname_p                IS 'Post-Processing: Label der StraÃennamen in der Karte, Punktgeometrie. Auszug aus ap_pto.';
+
+  COMMENT ON COLUMN pp_strassenname_p.gid            IS 'EditierschlÃŒssel der Tabelle';
+  COMMENT ON COLUMN pp_strassenname_p.gml_id         IS 'ObjektschlÃŒssel des PrÃ€sentationsobjektes aus "ax_lagebezeichnungohnehausnummer". Zur Verbindung mit Katalog beim Nachladen leerer Felder.';
+  COMMENT ON COLUMN pp_strassenname_p.schriftinhalt  IS 'Label, darzustellender Name der StraÃe oder Klassifikation';
+  COMMENT ON COLUMN pp_strassenname_p.hor            IS 'Horizontale Ausrichtung des Textes zur Punkt-Koordinate: linksbÃŒndig, zentrisch, ...';
+  COMMENT ON COLUMN pp_strassenname_p.ver            IS 'Vertikale   Ausrichtung des Textes zur Punkt-Koordinate: Basis, ..';
+  COMMENT ON COLUMN pp_strassenname_p.art            IS 'Klasse der StraÃe: StraÃe, Weg, .. , BezKlassifizierungStrasse';
+  COMMENT ON COLUMN pp_strassenname_p.winkel         IS 'Drehung des Textes';
+  COMMENT ON COLUMN pp_strassenname_p.the_geom       IS 'Position (Punkt) der Labels in der Karte';
+
+-- Variante fÃŒr Linien-Geometrie
+CREATE TABLE pp_strassenname_l 
+(   gid                    serial NOT NULL,
+    gml_id                 character varying,
+    schriftinhalt          character varying,      -- Label: anzuzeigender Text
+    hor                    character varying,
+    ver                    character varying,
+    art                    character varying,
+ -- winkel                 double precision,       -- bei Linien-Variante nicht benÃ¶tigt
+    CONSTRAINT pp_snaml_pk  PRIMARY KEY (gid)
+) WITH (OIDS=FALSE);
+
+-- :alkis_epsg = :alkis_epsg
+SELECT AddGeometryColumn('pp_strassenname_l','the_geom',:alkis_epsg,'LINESTRING',2); -- Hier liegt der Unterschied
+CREATE INDEX pp_snaml_gidx ON pp_strassenname_l USING gist(the_geom); 
+
+  COMMENT ON TABLE  pp_strassenname_l                IS 'Post-Processing: Label der StraÃennamen in der Karte, Liniengeometrie. Auszug aus ap_lto.';
+
+  COMMENT ON COLUMN pp_strassenname_l.gid            IS 'EditierschlÃŒssel der Tabelle';
+  COMMENT ON COLUMN pp_strassenname_l.gml_id         IS 'ObjektschlÃŒssel des PrÃ€sentationsobjektes aus "ax_lagebezeichnungohnehausnummer". Zur Verbindung mit Katalog beim Nachladen leerer Felder.';
+  COMMENT ON COLUMN pp_strassenname_l.schriftinhalt  IS 'Label, darzustellender Name der StraÃe oder Klassifikation';
+  COMMENT ON COLUMN pp_strassenname_l.hor            IS 'Horizontale Ausrichtung des Textes: linksbÃŒndig, zentrisch, ...';
+  COMMENT ON COLUMN pp_strassenname_l.ver            IS 'Vertikale   Ausrichtung des Textes: Basis, ..';
+  COMMENT ON COLUMN pp_strassenname_l.art            IS 'Klasse der StraÃe: StraÃe, Weg, .. , BezKlassifizierungStrasse';
+  COMMENT ON COLUMN pp_strassenname_l.the_geom       IS 'Position (Punkt) der Labels in der Karte';
+
+
+-- ENDE --
+
+
+
+-- ALKIS PostNAS 0.8
+
+-- Post Processing (pp_) Teil 2 B: Laden der Tabellen fÃŒr Gebiete
+
+-- Stand 
+--  2015-10-27 Die Erzeugung der vereinfachten Geometrie von Gemeinde, Gemarkung und Flur
+--             wird von "pp_laden.sql" ausgegliedert in dies Script "pp_gebiete.sql".
+--             Dieses Script braucht NICHT nach jeder Aktualisierung der Datenbank laufen.
+
+-- Geometrie glÃ€tten und vereinfachen fÃŒr Flur, Gemarkung und Gemeinde:
+-- Die "simplen" Geometrien sollen nur fÃŒr die Darstellung einer Ãbersicht verwendet werden.
+-- Ablage der simplen Geometrie in einem alternativen Geometriefeld im gleichen Datensatz.
+
+SET client_encoding = 'UTF-8';
+
+-- Tabellen fuer die Zuordnung vom Gemarkungen zu Gemeinden
+-- ========================================================
+
+-- FÃŒr die Regelung der Zugriffsberechtigung einer Gemeindeverwaltung auf die 
+-- FlurstÃŒcke in ihrem Gebiet braucht man die Information, in welcher Gemeinde eine Gemarkung liegt.
+-- 'ax_gemeinde' und 'ax_gemarkung' haben aber im ALKIS keinerlei Beziehung zueinander - kaum zu glauben!
+-- Nur ÃŒber die Auswertung der FlurstÃŒcke kann man die Zuordnung ermitteln.
+-- Da nicht stÃ€ndig mit 'SELECT DISTINCT' sÃ€mtliche FlurstÃŒcke durchsucht werden kÃ¶nnen, 
+-- muss diese Information als (redundante) Tabelle nach dem Laden zwischengespeichert werden. 
+
+
+-- G E M A R K U N G
+
+TRUNCATE pp_gemarkung;
+-- Vorkommende Paarungen Gemarkung <-> Gemeinde in ax_Flurstueck
+INSERT INTO pp_gemarkung
+  (               land, regierungsbezirk, kreis, gemeinde, gemarkung       )
+  SELECT DISTINCT land, regierungsbezirk, kreis, gemeinde, gemarkungsnummer
+  FROM            ax_flurstueck
+  WHERE           endet IS NULL
+  ORDER BY        land, regierungsbezirk, kreis, gemeinde, gemarkungsnummer ;
+
+-- Namen der Gemarkung dazu als Optimierung bei der Auskunft 
+UPDATE pp_gemarkung a
+   SET gemarkungsname =
+   ( SELECT b.bezeichnung 
+     FROM    ax_gemarkung b
+     WHERE a.land=b.land 
+       AND a.gemarkung=b.gemarkungsnummer
+       AND b.endet IS NULL
+   );
+
+
+-- G E M E I N D E
+
+TRUNCATE pp_gemeinde;
+-- Vorkommende Gemeinden aus den Gemarkungen
+INSERT INTO pp_gemeinde
+  (               land, regierungsbezirk, kreis, gemeinde)
+  SELECT DISTINCT land, regierungsbezirk, kreis, gemeinde
+  FROM            pp_gemarkung
+  ORDER BY        land, regierungsbezirk, kreis, gemeinde;
+
+-- Namen der Gemeinde dazu als Optimierung bei der Auskunft 
+UPDATE pp_gemeinde a
+   SET gemeindename =
+   ( SELECT b.bezeichnung 
+     FROM    ax_gemeinde b
+     WHERE a.land=b.land 
+       AND a.regierungsbezirk=b.regierungsbezirk 
+       AND a.kreis=b.kreis
+       AND a.gemeinde=b.gemeinde
+       AND b.endet IS NULL
+   );
+
+
+-- Geometrien der FlurstÃŒcke schrittweise zu groesseren Einheiten zusammen fassen
+-- ==============================================================================
+-- http://postgis.net/docs/manual-1.5/ST_Union.html (Aggregate version)
+-- http://postgis.net/docs/manual-1.5/ST_Collect.html
+
+-- Wenn ein Gebiet durch geometrische Filter im NBA-Verfahren ausgegeben wurde, dann gibt es 
+-- Randstreifen, die zu Pseudo-Fluren zusammen gefasst werden. 
+-- Diese werden fÃŒr den WMS durch einen View ausgefiltert, der nur eine Gemeinde darstellt.
+
+-- AusfÃŒhrungszeit: 1 mittlere Stadt mit ca. 14.000 FlurstÃŒcken > 100 Sek
+
+TRUNCATE pp_flur;
+
+INSERT INTO pp_flur (land, regierungsbezirk, kreis, gemeinde, gemarkung, flurnummer, anz_fs, the_geom )
+   SELECT  f.land, f.regierungsbezirk, f.kreis, f.gemeinde, f.gemarkungsnummer as gemarkung, f.flurnummer, 
+           count(gml_id) as anz_fs,
+           ST_Multi(st_union(st_buffer(f.wkb_geometry,0.06))) AS the_geom -- Zugabe um ZwischenrÃ€ume zu vermeiden
+     FROM  ax_flurstueck f
+     WHERE f.endet IS NULL AND NOT f.wkb_geometry IS NULL
+  GROUP BY f.land, f.regierungsbezirk, f.kreis, f.gemeinde, f.gemarkungsnummer, f.flurnummer;
+
+-- Vereinfachte Geometrie der Flur fÃŒr die Darstelung im WMS in einem kleinen MaÃstab
+UPDATE pp_flur      SET simple_geom = st_simplify(the_geom, 0.5);
+
+
+-- Fluren zu Gemarkungen zusammen fassen
+-- -------------------------------------
+
+-- FlÃ€chen vereinigen
+UPDATE pp_gemarkung a
+  SET the_geom = 
+   ( SELECT ST_Multi(ST_Union(ST_Buffer(b.the_geom,0.15))) AS the_geom -- Puffer/Zugabe um LÃ¶cher zu vermeiden
+       FROM pp_flur b
+      WHERE a.land      = b.land 
+        AND a.gemarkung = b.gemarkung
+   );
+-- Hierbei kÃ¶nnen Exceptions auftreten wobei das Geometriefeld einzelner Gemarkungen leer bleibt.
+-- Die Ursache ist unklar.
+--  TopologyException: found non-noded intersection between LINESTRING
+
+-- Praktische LÃ¶sung:
+-- Bei den Gemarkungen, die nichts abbekommen haben, mit schrittweise groesserem Buffer noch mal versuchen.
+UPDATE pp_gemarkung a
+  SET the_geom = 
+   ( SELECT ST_Multi(ST_Union(ST_Buffer(b.the_geom,0.20))) AS the_geom -- Puffer vergroessert
+       FROM pp_flur b
+      WHERE a.land      = b.land 
+        AND a.gemarkung = b.gemarkung
+   ) WHERE the_geom IS NULL;
+
+UPDATE pp_gemarkung a
+  SET the_geom = 
+   ( SELECT ST_Multi(ST_Union(ST_Buffer(b.the_geom,0.30))) AS the_geom -- Puffer vergroessert
+       FROM pp_flur b
+      WHERE a.land      = b.land 
+        AND a.gemarkung = b.gemarkung
+   ) WHERE the_geom IS NULL;
+
+/* Guggst du (auf leeren Geometry-Typ achten:
+
+   SELECT gemarkungsname, geometrytype(the_geom) AS typ, 
+     st_isvalid(the_geom) AS vali, st_asewkt(the_geom) AS ewkt
+   FROM pp_gemarkung;
+
+*/
+
+-- Die Fluren in der Gemarkung zaehlen
+UPDATE pp_gemarkung a
+  SET anz_flur = 
+   ( SELECT count(flurnummer) AS anz_flur 
+     FROM    pp_flur b
+     WHERE a.land      = b.land 
+       AND a.gemarkung = b.gemarkung
+   ); -- Gemarkungsnummer ist je BundesLand eindeutig
+
+
+-- Vereinfachte Geometrie der Gemarkung fÃŒr die Darstellung im WMS in einem kleinen MaÃstab
+-- Gemarkung (Wirkung siehe pp_gemarkung_analyse)
+UPDATE pp_gemarkung SET simple_geom = st_simplify(the_geom, 2.2); 
+
+
+-- Gemarkungen zu Gemeinden zusammen fassen
+-- ----------------------------------------
+
+-- FlÃ€chen vereinigen
+UPDATE pp_gemeinde a
+  SET the_geom = 
+   ( SELECT st_multi(st_union(st_buffer(b.the_geom,0.2))) AS the_geom -- noch mal Zugabe
+     FROM    pp_gemarkung b
+     WHERE a.land     = b.land 
+       AND a.gemeinde = b.gemeinde
+   );
+-- Hierbei kÃ¶nnen Exceptions auftreten wobei das Geometriefeld einzelner Gemarkungen leer bleibt.
+-- Die Ursache ist unklar.
+
+-- Praktische LÃ¶sung:
+-- weitere Versuche mit mehr Puffer, wenn Exception auftrat
+UPDATE pp_gemeinde a
+  SET the_geom = 
+   ( SELECT st_multi(st_union(st_buffer(b.the_geom,0.3))) AS the_geom -- MEHR Zugabe
+     FROM    pp_gemarkung b
+     WHERE a.land     = b.land 
+       AND a.gemeinde = b.gemeinde
+   ) WHERE the_geom IS NULL;
+
+UPDATE pp_gemeinde a
+  SET the_geom = 
+   ( SELECT st_multi(st_union(st_buffer(b.the_geom,0.4))) AS the_geom -- noch MEHR Zugabe
+     FROM    pp_gemarkung b
+     WHERE a.land     = b.land 
+       AND a.gemeinde = b.gemeinde
+   ) WHERE the_geom IS NULL;
+
+
+-- Vereinfachte Geometrie der Gemeinde fÃŒr die Darstellung im WMS in einem kleinen MaÃstab
+-- Gemeinde (Wirkung siehe pp_gemeinde_analyse)
+UPDATE pp_gemeinde  SET simple_geom = st_simplify(the_geom, 5.0); 
+
+-- Gemarkungen in der Gemeinde zÃ€hlen
+UPDATE pp_gemeinde a
+  SET anz_gemarkg = 
+   ( SELECT count(gemarkung) AS anz_gemarkg 
+     FROM    pp_gemarkung b
+     WHERE a.land     = b.land 
+       AND a.gemeinde = b.gemeinde
+   );
+
+-- ENDE --
+
+
+
+-- ALKIS PostNAS 0.8
+
+-- Post Processing (pp_) Teil 2 A: Laden der Tabellen
+
+-- Stand 
+
+--  2012-02-13 PostNAS 07, Umbenennung
+--  2012-02-17 Optimierung
+--  2012-04-17 Flurstuecksnummern auf Standardposition
+--  2012-04-24 Generell Filter 'endet IS NULL' um historische Objekte auszublenden
+--  2012-04-25 AbstÃŒrze und Fehler (durch kaputte Geometrie?) beim Zusammenfassen der FlÃ€chen
+--  2012-10-29 F.J. Redundanzen aus alkis_beziehungen beseitigen, die nach NAS replace auftreten
+--  2013-02-06 A.E. Function-Name an PostGIS 2 angepasst: multi() -> st_multi(), simplify() -> st_simplify()
+--  2013-02-21 F.J. doppelte Buchungen zum FlurstÃŒck aus alkis_beziehungen beseitigen, die nach NAS replace auftreten
+--  2013-07-10 F.J. Bereinigen der alkis_beziehungen auskommentiert, wird jetzt im Trigger gelÃ¶st.
+--  2012-10-24 Neue Tabelle fÃŒr die PrÃ€sentation von StraÃennamen und -Klassifikationen
+--  2014-02-05 Bereits auskommentierte Aktionen gelÃ¶scht fÃŒr die Beseitigung von Rdundanzen aus fehlerhaften Triggern
+--  2014-02-12 Zusammen fassen Flur->Gemarkung->Gemeinde nicht aus simple_geom weil dadurch LÃ¶scher entstehen kÃ¶nnen.
+--  2014-09-08 PostNAS 0.8, Umbenennung. Ohne Tabelle "alkis_beziehungen".
+--             Beseitigung eines Fehlers beim Laden der StraÃennamen-Label.
+--             Dabei Trennung in pp_strassenname_p und -_l (Punkt- und Liniengeometrie).
+--  2014-09-19 Substring auf gml_id, Korrektur "endet IS NULL"
+--  2014-09-30 RÃŒckbau substring(gml_id)
+--  2014-12-17 Neue Spalte "gemeinde" in Tabelle "pp_flur", dient der Filterung im WMS-Layer "Gebiete"
+--  2015-01-08 Mehrfach-Versuche der Geometrie-Zusammenfassung mit wachsender PuffergrÃ¶Ãe.
+--  2015-10-27 Die Erzeugung der vereinfachten Geometrie von Gemeinde, Gemarkung und Flur
+--             wird ausgegliedert in das Script "pp_gebiete.sql".
+--             Dies Script sollte nach jeder Aktualisierung der Datebnek laufen.
+--             Die Erzeugung neuer Ãbersichten der Gebiete ist nur gelegendlich notwendig.
+
+
+-- ============================
+-- Tabellen des Post-Processing
+-- ============================
+
+-- Einige Informationen liegen nach der NAS-Konvertierung in der Datenbank "verstreut" vor.
+-- Die dynamische Aufbereitung ÃŒber Views und Functions wÃŒrde zu lange dauern und somit lange 
+-- Antwortzeiten in WMS, WFS, Buchauskunft oder Navigation (Suche) verursachen.
+
+-- Geometrie glÃ€tten und vereinfachen fÃŒr Flur, Gemarkung und Gemeinde:
+-- Die "simplen" Geometrien sollen nur fÃŒr die Darstellung einer Ãbersicht verwendet werden.
+-- Ablage der simplen Geometrie in einem alternativen Geometriefeld im gleichen Datensatz.
+
+-- Im Rahmen eines "Post-Processing" werden diese Daten nach jeder Konvertierung (NBA-Aktualisierung) 
+-- einmal komplett aufbereitet. Die benÃ¶tigten Informationen stehen somit den Anwendungen mundgerecht zur VerfÃŒgung.
+
+-- Die per PostProcessing gefÃŒllten Tabellen bekommen den Profix "pp_". 
+
+-- Die AusfÃŒhrung dieses Scriptes auf einer Datenbank fÃŒr eine 80T-Einwohner-Stadt dauert ca.: 500 Sek. !
+
+SET client_encoding = 'UTF-8';
+
+
+-- Flurstuecksnummern-Label-Position
+-- =================================
+
+TRUNCATE pp_flurstueck_nr;  -- effektiver als DELETE
+
+-- Ersatz: FÃŒllen in 3 Schritten
+
+-- 1. zu allen FlurstÃŒcken zunÃ€chst nur die Nummer, aber noch keine Geometrie
+INSERT INTO pp_flurstueck_nr
+          ( fsgml, fsnum )
+    SELECT f.gml_id, f.zaehler::text || COALESCE ('/' || f.nenner::text, '') AS fsnum
+      FROM ax_flurstueck f 
+     WHERE f.endet IS NULL;
+
+-- 2. Geometrie aus PrÃ€sentationsobjekt (manuelle Position), wenn vorhanden. Aus Subquery.
+UPDATE pp_flurstueck_nr n
+  SET the_geom = (
+      SELECT p.wkb_geometry 
+        FROM ap_pto p
+       WHERE n.fsgml=ANY(p.dientzurdarstellungvon) 
+         AND p.endet IS NULL
+       LIMIT 1 -- wegen vereinzelt FEHLER: als Ausdruck verwendete Unteranfrage ergab mehr als eine Zeile
+    );
+-- Dies lÃ€uft sehr lange. Optimierbar?
+
+
+-- 3. Geometrie auf FlÃ€chenmitte (Standard), wenn jetzt noch leer
+UPDATE pp_flurstueck_nr n
+  SET the_geom = (
+      SELECT ST_PointOnSurface(f.wkb_geometry) AS wkb_geometry 
+       FROM ax_flurstueck  f 
+       WHERE f.gml_id = n.fsgml 
+         AND f.endet IS NULL
+      )
+   WHERE n.the_geom IS NULL; --- nur die Fehlenden, nichts ÃŒberschreiben
+
+
+-- StraÃen - N a m e n  und  - K l a s s i f i k a t i o n
+-- Tabellen fÃŒr die PrÃ€sentation von StraÃen-Namen und -Klassifikationen
+-- Daten aus dem View "ap_pto_stra" werden im PostProcessing gespeichert in der Tabelle "pp_strassenname".
+-- Der View ÃŒbernimmt die Auswahl des passenden "advstandardmodell" und rechnet den Winkel passend um.
+-- In der Tabelle werden dann die leer gebliebenen Label aus dem Katalog noch ergÃ€nzt. 
+
+-- Tabelle aus View befÃŒllen
+-- 2014-08-22 
+--  Variante "_p" = Punktgeometrie, Spalte gml_id ergÃ€nzt.
+--  Es werden nun auch SÃ€tze mit leerem "schriftinhalt" angelegt. Das wird dann nachtrÃ€glich gefÃŒllt.
+
+-- Alles auf Anfang
+TRUNCATE pp_strassenname_p;
+
+-- ZunÃ€chst die Sonderschreibweisen (AbkÃŒrzungen) und die Standardschreibweisen, 
+-- die von der Migration redundant abgelegt wurden.
+INSERT INTO pp_strassenname_p (gml_id, schriftinhalt, hor, ver, art, winkel, the_geom)
+       SELECT gml_id, schriftinhalt, hor, ver, art, winkel, wkb_geometry
+       FROM ap_pto_stra; -- Der View sucht das passende advstandardmodell
+
+-- Schriftinhalt ergÃ€nzen
+-- Das sind die Standardschreibweisen aus dem Katalog, die nicht mehr redundant in ap_pto sind.
+UPDATE pp_strassenname_p  p
+   SET schriftinhalt =     -- Hier ist der Label noch leer
+   -- Subquery "Gib mir den StraÃennamen":
+   ( SELECT k.bezeichnung                         -- StraÃenname ..
+       FROM ax_lagebezeichnungkatalogeintrag k    --  .. aus Katalog
+       JOIN ax_lagebezeichnungohnehausnummer l    -- verwendet als Lage o.H.
+         ON (k.land=l.land AND k.regierungsbezirk=l.regierungsbezirk AND k.kreis=l.kreis AND k.gemeinde=l.gemeinde AND k.lage=l.lage )
+      WHERE p.gml_id = l.gml_id                   -- die gml_id wurde aus View importiert
+    )
+ WHERE     p.schriftinhalt IS NULL
+   AND NOT p.the_geom      IS NULL;
+
+-- Die immer noch leeren Texte sind nun sinnlos.
+-- Die finden sich ggf. in der Variante "_l" mit Liniengeometrie.
+DELETE FROM pp_strassenname_p WHERE schriftinhalt IS NULL;
+
+-- Nun das Gleiche noch einmal fÃŒr Linien-Geometrie
+
+-- Auf Anfang
+TRUNCATE pp_strassenname_l;
+
+-- ZunÃ€chst die Sonderschreibweisen (AbkÃŒrzungen) und die Standardschreibweisen, 
+-- die von der Migration redundant abgelegt wurden.
+INSERT INTO pp_strassenname_l (gml_id, schriftinhalt, hor, ver, art, the_geom)
+       SELECT gml_id, schriftinhalt, hor, ver, art, wkb_geometry
+       FROM ap_lto_stra; -- Der View sucht das passende advstandardmodell
+
+-- Schriftinhalt ergÃ€nzen (korrigiert 2014-08-25)
+-- Das sind die Standardschreibweisen aus dem Katalog, die nicht mehr redundant in ap_pto sind.
+-- Der Satz mit der passenen gml_id (Lage o.H.) ist aus dem View bereits importiert.
+-- Jetzt noch den dazu passenen Schriftinhalt aus dem Katalog holen.
+UPDATE pp_strassenname_l  p
+   SET schriftinhalt =     -- Hier ist der Label noch leer
+   -- Subquery "Gib mir den StraÃennamen":
+   ( SELECT k.bezeichnung                         -- StraÃenname ..
+       FROM ax_lagebezeichnungkatalogeintrag k    --  .. aus Katalog
+       JOIN ax_lagebezeichnungohnehausnummer l    -- verwendet als Lage o.H.
+         ON (k.land=l.land AND k.regierungsbezirk=l.regierungsbezirk AND k.kreis=l.kreis AND k.gemeinde=l.gemeinde AND k.lage=l.lage )
+      WHERE p.gml_id = l.gml_id                   -- die gml_id wurde aus View importiert
+    )
+ WHERE     p.schriftinhalt IS NULL
+   AND NOT p.the_geom      IS NULL;
+
+-- Die immer noch leeren Texte sind sinnlos.
+DELETE FROM pp_strassenname_l WHERE schriftinhalt IS NULL;
+
+-- Tabelle fuer die Zuordnung vom EigentÃŒmern zu Gemeinden
+-- =======================================================
+
+-- erst mal sauber machen
+DELETE FROM gemeinde_person;
+
+-- alle direkten Buchungen mit View ermitteln und in Tabelle speichern
+-- FÃŒr eine Stadt: ca. 20 Sekunden
+INSERT INTO  gemeinde_person 
+       (land, regierungsbezirk, kreis, gemeinde, person, buchtyp)
+ SELECT land, regierungsbezirk, kreis, gemeinde, person, 1
+   FROM gemeinde_person_typ1;
+
+
+-- noch die komplexeren Buchungen ergÃ€nzen (Recht an ..)
+-- Mit View ermitteln und in Tabelle speichern
+-- FÃŒr eine Stadt: ca. 10 Sekunden
+INSERT INTO  gemeinde_person 
+       (  land,   regierungsbezirk,   kreis,   gemeinde,   person,  buchtyp)
+ SELECT q.land, q.regierungsbezirk, q.kreis, q.gemeinde, q.person,  2
+   FROM gemeinde_person_typ2 q   -- Quelle
+   LEFT JOIN gemeinde_person z   -- Ziel
+     ON q.person   = z.person    -- Aber nur, wenn dieser Fall im Ziel
+    AND q.land     = z.land 
+    AND q.regierungsbezirk = z.regierungsbezirk 
+    AND q.kreis    = z.kreis 
+    AND q.gemeinde = z.gemeinde
+  WHERE z.gemeinde is Null;      -- ..  noch nicht vorhanden ist
+
+-- ENDE --
+
Index: trunk/import/norgis_alkis_pp/readme.txt
===================================================================
--- trunk/import/norgis_alkis_pp/readme.txt	(revision 366)
+++ trunk/import/norgis_alkis_pp/readme.txt	(revision 366)
@@ -0,0 +1,100 @@
+Ziel war es, die bisherige Mapdatei (/trunk/umn/alkis/alkis_muster.map) mit NorGIS ALKIS zu verwenden.
+
+Um die Mapdatei /data/postnas_trunk/trunk/umn/alkis/alkis_norgis.map verwenden zu kÃ¶nnen, mÃŒssen die ALKIS-Daten mit dem NorGIS ALKIS Import-Tool eingebunden werden. Siehe: http://trac.wheregroup.com/PostNAS/wiki/Komponenten
+
+Folgende PostProcessing Datei sind notwendig. Sie stammen aus dem PostNAS-Postprocessing-SQL-Dateien:
+nutzungsart_definition.sql, nutzungsart_metadaten.sql, nutzungsart_laden.sql, postnas_keytables, sichten_wms.sql, pp_definition.sql, pp_gebiet.sql, pp_laden.sql
+
+/trunk/import/norgis_alkis_pp/postprocessing_mapdatei_demo.sql
+
+Die Postprocessing-Datei postprocessing_mapdatei_demo.sql kann in das NorGIS ALKIS Verzeichnis (/alkisimport-master/postprocessing.d/) gelegt werden. Sie wird dann beim Importieren der Daten berÃŒcksichtigt.
+
+
+Durch diese PostProcessing-Dateien kÃ¶nnen folgene Layer dargestellt werden:
+
+LAYER  "nutzung_alle"
+DATA nutzung
+
+LAYER "pp_flur"	GROUP "pp_gebiete"
+DATA pp_flur
+	
+LAYER "pp_gemarkung" GROUP "pp_gebiete"
+DATA  pp_gemarkung
+	
+LAYER "pp_gemeinde" GROUP "pp_gebiete"
+DATA pp_gemeinde
+	
+LAYER "ag_t_gebaeude"	GROUP "gebaeude"
+DATA s_hausnummer_gebaeude
+	
+LAYER "ag_t_nebengeb"	GROUP "gebaeude"
+DATA lfdnr_nebengebaeude
+
+LAYER "bodensch_po"	GROUP "bodenschaetzung"
+DATA s_bodensch_po
+	
+LAYER "bodensch_tx"	GROUP "bodenschaetzung"
+DATA s_bodensch_tx
+	
+LAYER "ag_l_bodsch"	GROUP "bodenschaetzung"
+DATA s_zuordungspfeil_bodensch
+	
+LAYER "ag_l_bodsch_sp"	GROUP "bodenschaetzung"
+DATA s_zuordungspfeilspitze_bodensch
+	
+LAYER "ag_l_flurstueck" GROUP "flurstueck"
+DATA s_zuordungspfeil_flurstueck
+	
+LAYER "sk2004_zuordnungspfeil_spitze"	GROUP "flurstueck"
+DATA s_zuordungspfeilspitze_flurstueck
+	
+LAYER "ag_t_flurstueck"	GROUP "flurstueck"
+DATA pp_flurstueck_nr
+	
+LAYER "ag_p_flurstueck"	GROUP "flurstueck"
+DATA s_zugehoerigkeitshaken_flurstueck
+	
+LAYER "ax_punktortta"	GROUP "punktort" 
+DATA grenzpunkt
+	
+LAYER "ap_pto_stra"	GROUP "praesentation"
+DATA pp_strassenname_p
+	
+LAYER "ap_lto_stra"	GROUP "praesentation"
+DATA pp_strassenname_l
+	
+LAYER "ap_pto" # Rest	GROUP "praesentation"
+DATA ap_pto_rest
+	
+LAYER 'pol_Grenze'	GROUP 'grenzen'
+DATA sk201x_politische_grenze
+	
+LAYER 'gemarkungsrenze'	GROUP 'grenzen'
+DATA sk2014_gemarkungsgrenze
+	
+LAYER 'flurgrenze'	GROUP 'grenzen'
+DATA sk2012_flurgrenze
+	
+	
+Die Mapdatei befindet sich im Verzeichnis: /trunk/umn/alkis/alkis_norgis.map
+	
+	
+FAZIT:
+
+Die Mapdatei orientiert sich an dem bisherigen Stand (/trunk/umn/alkis/alkis_muster.map), d.h. es kÃ¶nnen ALKIS-Themen fehlen, da die Datei fest ist (z.B. AX_Gelaendekante, AX_Boeschungsflaeche,AX_SeilbahnSchwebebahn ...)
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
+	
