Index: trunk/info/info/alkisn/alkishaus.php
===================================================================
--- trunk/info/info/alkisn/alkishaus.php	(revision 402)
+++ trunk/info/info/alkisn/alkishaus.php	(revision 412)
@@ -11,4 +11,5 @@
 	2017-10-09 Sauber filtern auf endet IS NULL
 	2018-04-23 &nodebug
+	2018-11-09 Umstellung Full-Schema
 
 	ToDo:
@@ -59,16 +60,18 @@
 
 // G e b a e u d e
-
+// ... g.qualitaetsangaben, 
 $sqlg ="SELECT g.gml_id, g.name, g.bauweise, g.gebaeudefunktion, g.anzahlderoberirdischengeschosse AS aog, g.anzahlderunterirdischengeschosse AS aug, 
-g.lagezurerdoberflaeche, g.dachgeschossausbau, g.zustand, array_to_string(g.weiteregebaeudefunktion, ',') AS wgf, g.dachform, g.hochhaus, g.objekthoehe, g.geschossflaeche, g.grundflaeche, g.umbauterraum, g.baujahr, g.dachart, g.qualitaetsangaben, 
-h.v AS bbauw, h.d AS dbauw, u.v AS bfunk, u.d AS dfunk, z.v AS zustandv, z.d AS zustandd, d.v AS bdach, a.v AS dgaus, o.v AS oflv, o.d AS ofld,
+g.lagezurerdoberflaeche, g.dachgeschossausbau, g.zustand, array_to_string(g.weiteregebaeudefunktion, ',') AS wgf, g.dachform, g.hochhaus, g.objekthoehe, 
+g.geschossflaeche, g.grundflaeche, g.umbauterraum, g.baujahr, g.dachart, 
+h.beschreibung AS bbauw, h.dokumentation AS dbauw, u.beschreibung AS bfunk, u.dokumentation AS dfunk, z.beschreibung AS zustandv, z.dokumentation AS zustandd, d.beschreibung AS bdach, 
+a.beschreibung AS dgaus, o.beschreibung AS oflv, o.dokumentation AS ofld,
 round(st_area(g.wkb_geometry)::numeric,2) AS gebflae
 FROM ax_gebaeude g 
-LEFT JOIN alkis_wertearten h ON cast(g.bauweise AS character varying)=h.k AND h.element='ax_gebaeude' AND h.bezeichnung='bauweise'
-LEFT JOIN alkis_wertearten u ON cast(g.gebaeudefunktion AS character varying)=u.k AND u.element='ax_gebaeude' AND u.bezeichnung='gebaeudefunktion'
-LEFT JOIN alkis_wertearten z ON cast(g.zustand AS character varying)=z.k AND z.element='ax_gebaeude' AND z.bezeichnung='zustand'
-LEFT JOIN alkis_wertearten d ON cast(g.dachform AS character varying)=d.k AND d.element='ax_gebaeude' AND d.bezeichnung='dachform'
-LEFT JOIN alkis_wertearten a ON cast(g.dachgeschossausbau AS character varying)=a.k AND a.element='ax_gebaeude' AND a.bezeichnung='dachgeschossausbau'
-LEFT JOIN alkis_wertearten o ON cast(g.lagezurerdoberflaeche AS character varying)=o.k AND o.element='ax_gebaeude' AND o.bezeichnung='lagezurerdoberflaeche'
+LEFT JOIN ax_bauweise_gebaeude h ON g.bauweise = h.wert
+LEFT JOIN ax_gebaeudefunktion u ON g.gebaeudefunktion = u.wert
+LEFT JOIN ax_zustand_gebaeude z ON g.zustand = z.wert
+LEFT JOIN ax_dachform d ON g.dachform = d.wert
+LEFT JOIN ax_dachgeschossausbau_gebaeude a ON g.dachgeschossausbau = a.wert
+LEFT JOIN ax_lagezurerdoberflaeche_gebaeude o ON g.lagezurerdoberflaeche = o.wert
 WHERE g.gml_id= $1 AND g.endet IS NULL;";
 
@@ -149,5 +152,5 @@
 	$bja=$rowg["baujahr"];
 	$daa=$rowg["dachart"];
-	$qag=$rowg["qualitaetsangaben"];
+//	$qag=$rowg["qualitaetsangaben"];
 
 	if (($nam != "") OR $allefelder) {
@@ -287,6 +290,5 @@
 	}
 
-	// Dachgeschossausbau
-	// nichts dazu in alkis_wertearten.d
+	// Dachgeschossausbau, Spalte dokumentation ist immer leer
 	if ($dga != "" OR $allefelder) {
 		echo "\n<tr>"
@@ -316,12 +318,11 @@
 
 	// Weitere GebÃ€udefunktionen
-	// Suche Testfall: SELECT * FROM ax_gebaeude WHERE NOT weiteregebaeudefunktion IS NULL;
-	// Keiner zu finden. Das folgende ungetestet:
-	if ($wgf != "" OR $allefelder) { // "weiteregebaeudefunktion" ist ein Array
+	// Suche Testfall: SELECT gml_id, gebaeudefunktion, weiteregebaeudefunktion FROM ax_gebaeude WHERE (NOT weiteregebaeudefunktion IS NULL) AND cardinality(weiteregebaeudefunktion) > 1 liMIT 10;
+	if ($wgf != "" OR $allefelder) { // ... ist ein Array
 		echo "\n<tr>"
 			."\n\t<td class='li'>Weitere Geb&auml;udefunktionen</td>"
 			."\n\t<td>";
 			if ($wgf != "") { // Kommagetrennte Liste aus Array
-				$sqlw="SELECT k, v, d FROM alkis_wertearten WHERE k IN ( $1 ) AND element='ax_gebaeude' AND bezeichnung='weiteregebaeudefunktion' ORDER BY k;";
+				$sqlw="SELECT wert, beschreibung, dokumentation FROM ax_gebaeudefunktion WHERE wert IN ( $1 ) ORDER BY wert;";
 				$v = array($wgf);
 				$resw = pg_prepare("", $sqlw);
@@ -332,8 +333,8 @@
 				}
 				$zw=0;
-				while($roww = pg_fetch_assoc($resw)) { // LOOP: w.Funktion
+				while($roww = pg_fetch_assoc($resw)) { // LOOP Funktion
 					if ($zw > 0) {echo "<br>";}
-					if ($showkey) {echo "<span class='key'>".$roww["k"]."</span>&nbsp;";}
-					echo "<span title='".$roww["d"]."'>".$roww["v"]."</span>";
+					if ($showkey) {echo "<span class='key'>".$roww["wert"]."</span>&nbsp;";}
+					echo "<span title='".$roww["dokumentation"]."'>".$roww["beschreibung"]."</span>";
 					$zw++;
 			   }
@@ -346,6 +347,5 @@
 	}
 
-	// Dachform
-	// nichts dazu in alkis_wertearten.d
+	// Dachform, Spalte dokumentation ist immer leer
 	if ($daf != "" OR $allefelder) {
 		echo "\n<tr>"
@@ -430,5 +430,5 @@
 
 	// QualitÃ€tsangaben
-	if ($qag != "" OR $allefelder) {
+/*	if ($qag != "" OR $allefelder) {
 		echo "\n<tr>"
 			."\n\t<td class='li'>Qualit&auml;tsangaben</td>"
@@ -438,11 +438,10 @@
 			."\n\t</td>"
 		."\n</tr>";
-	}
+	} */
 	echo "\n</table>";
 }
 if ($gebnr == 0) {echo "\n<p class='err'><br>Kein Geb&auml;ude gefunden<br>&nbsp;</p>";}
 
-// ++ ToDo: Verschnitt mit FS?
-
+// ++ ToDo:  -Verschnitt mit FS?  -Ausgeben ax_georeferenziertegebaeudeadresse dazz, wenn gefÃŒllt.
 ?>
 
