Index: trunk/import/nutzungsart_definition.sql
===================================================================
--- trunk/import/nutzungsart_definition.sql	(revision 314)
+++ trunk/import/nutzungsart_definition.sql	(revision 330)
@@ -18,17 +18,17 @@
 --  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)
 
 SET client_encoding = 'UTF-8';
 
 -- Alles auf Anfang!
-
--- DROP TABLE nutzung;
--- DROP TABLE nutzung_class;
--- DROP TABLE nutzung_meta;
-
+/*
+  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,
@@ -52,19 +52,18 @@
 -- 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 Voraussetzung fÃŒr eine performante Auskunft.
+-- Dies ist die fÃ¶rderlich fÃŒr eine performante Auskunft.
 
---DROP TABLE nutzung;
 CREATE TABLE nutzung (
-	gml_id		character(16),
-	beginnt		character(20),	    -- mehrfache gml_id eindeutig machen, Datenfehler?
-	nutz_id		integer,
-	class		integer  NOT NULL,  -- NULL-Werte der Quelltabelle durch den num. Wert 0 ersetzen
-	info		     integer,
-	zustand		integer,
-	"name"		varchar,
-	bezeichnung	varchar,
---	CONSTRAINT	nutzung_pk      PRIMARY KEY (gml_id),		    -- sollte so sein
-	CONSTRAINT	nutzung_pk      PRIMARY KEY (gml_id, beginnt),	-- wÃŒrg arround (gml_id mehrfach!)
-	CONSTRAINT	nutzung_meta_id FOREIGN KEY (nutz_id)
+	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
@@ -72,11 +71,7 @@
 WITH (OIDS=FALSE);
 
--- ALTER TABLE nutzung ADD COLUMN beginnt character(20);
--- ALTER TABLE nutzung DROP CONSTRAINT nutzung_pk;
--- ALTER TABLE nutzung ADD  CONSTRAINT nutzung_pk PRIMARY KEY(gml_id, beginnt);
-
 
 SELECT AddGeometryColumn('nutzung','wkb_geometry','25832','POLYGON',2);
--- Vereinzelt vorkommende MULTIPOLYGON, zulÃ€ssig?
+-- Vereinzelt auch vorkommende MULTIPOLYGON
 
 -- 'class' ist nur innerhalb einer Gruppe ein sinvoller Index
@@ -86,5 +81,4 @@
 CREATE INDEX nutzung_geom_idx ON nutzung USING gist (wkb_geometry);
 
--- Kommentare
 COMMENT ON TABLE  nutzung             IS 'Zusammenfassung von 26 Tabellen des Objektbereiches "TatsÃ€chliche Nutzung".';
 COMMENT ON COLUMN nutzung.gml_id      IS 'Identifikator, global eindeutig';
@@ -99,7 +93,4 @@
 -- Schluesseltabelle: classes innerhalb einer Nutzungsart.
 -- Wird nicht aus NAS geladen sondern durch das manuell zu pflegende Script "nutzungsart_metadaten.sql"
-
-
---DROP TABLE nutzung_class;
 CREATE TABLE nutzung_class (
 	nutz_id       integer NOT NULL,
@@ -114,5 +105,4 @@
 
   COMMENT ON TABLE  nutzung_class            IS 'SchlÃŒsseltabelle. Feinere Klassifizierung der zusammen gefassten Nutzungsarten.';
---COMMENT ON COLUMN nutzung_class.ser        IS 'Automatisches SchlÃŒsselfeld';
   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';
@@ -124,17 +114,8 @@
 -- Da nun gml_id nicht mehr PRIMARY KEY der Ausgangstabellen ist , kommt es auch zu Doppelbelegungen der Zusammenfassung.
 -- Diese FÃ€lle suchen.
-
--- SELECT a.gml_id, a.artderbebauung, a.ogc_fid, a.beginnt, b.ogc_fid , b.beginnt
--- FROM ax_wohnbauflaeche a JOIN ax_wohnbauflaeche b ON a.gml_id = b.gml_id
--- WHERE a.ogc_fid < b.ogc_fid LIMIT 100; 
-
 CREATE OR REPLACE VIEW nutzung_mehrfache_gml AS
-	SELECT	a.gml_id, 
-		a.nutz_id,
-		a.beginnt as beginnt1, 
-		b.beginnt as beginnt2
+	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
+	JOIN nutzung b ON a.gml_id = b.gml_id
 	WHERE a.beginnt < b.beginnt
 	--LIMIT 100
