Index: trunk/info/info/alkisn/alkishaus.php
===================================================================
--- trunk/info/info/alkisn/alkishaus.php	(revision 425)
+++ trunk/info/info/alkisn/alkishaus.php	(revision 427)
@@ -1,5 +1,9 @@
 <?php
-/*	alkishaus.php - viele Daten zu EINEM ALKIS-GebÃ€ude-Objekt
-	ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo).
+/*	alkishaus.php
+
+	ALKIS-Auskunft
+	Author: Frank JÃ€ger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo)
+
+	Daten zu EINEM ALKIS-GebÃ€ude-Objekt
 
 	Version:
@@ -11,6 +15,8 @@
 	2020-12-15 Input-Validation und Strict Comparisation (===)
 	2021-12-09 Neue Parameter: $katAmtMix (Kataster-Amt-Mix), $PrntBtn (Drucken-SchaltflÃ€che). Gemeinde in Adresse
+	2022-01-13 Neue Functions LnkStf(), DsKy()
 
 ToDo:
+	- per Relation dazugehÃ¶rige Bauwerke (z.B. Ãberdachung) suchen, ax_sonstigesbauwerkodersonstigeeinrichtung.gehoertzu
 	- Template im WMS auf Ebene GebÃ€ude hierhin verknÃŒpfen.
 */
@@ -55,8 +61,5 @@
 
 $erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); }
-$dbg=$debug; // CONF in Arbeits-Variable
-
-// Mit URL-Parameter "&nodebug=j" kann man die Entwicklungsumgebung (in Conf definiert) ausschalten.
-// Wirkt temporÃ€r und wird nicht in Links weiter gereicht.
+$dbg=$debug;
 if ($nodebug === "j") {$dbg=0;} 
 
@@ -64,5 +67,5 @@
 if (!$con) echo "\n<p class='err'>Fehler beim Verbinden der DB</p>";
 
-// G e b a e u d e
+// G e b Ã€ u d e
 // ... g.qualitaetsangaben, 
 $sqlg ="SELECT g.gml_id, g.name, g.bauweise, g.gebaeudefunktion, g.anzahlderoberirdischengeschosse AS aog, g.anzahlderunterirdischengeschosse AS aug, 
@@ -97,15 +100,14 @@
 
 // Balken
-echo "\n<p class='balken geb'>ALKIS Haus ".$gmlid."&nbsp;</p>";
-echo "\n<h2><img src='ico/Haus.png' width='16' height='16' alt=''> Haus (Geb&auml;ude)</h2>\n<hr>";
-
-echo "<p class='nwlink noprint'>"; // Umschalter: auch leere Felder
-echo "Umschalten: <a class='nwlink' href='".selbstverlinkung()."?gkz=".$gkz."&amp;gmlid=".$gmlid;
-	if ($showkey) {echo "&amp;showkey=j";} else {echo "&amp;showkey=n";}
-	if ($allefelder) {
-		echo "&amp;allfld=n'>nur Felder mit Inhalt";
-	} else {
-		echo "&amp;allfld=j'>auch leere Felder";
-	}
+echo "\n<p class='balken geb'>ALKIS Haus ".$gmlid."&nbsp;</p>"
+."\n<h2><img src='ico/Haus.png' width='16' height='16' alt=''> Haus (Geb&auml;ude)</h2>\n<hr>";
+
+echo "<p class='nwlink noprint'>" // Umschalter: auch leere Felder
+."Umschalten: <a class='nwlink' href='".selbstverlinkung()."?gkz=".$gkz."&amp;gmlid=".$gmlid.LnkStf();
+if ($allefelder) {
+	echo "&amp;allfld=n'>nur Felder mit Inhalt";
+} else {
+	echo "&amp;allfld=j'>auch leere Felder";
+}
 echo "</a></p>";
 
@@ -128,5 +130,5 @@
 $aug=$rowg["aug"];
 $hoh=$rowg["hochhaus"];
-$nam=trim(trim($rowg["name"], "{}"), '"'); // Gebaeude-Name ist ein Array.
+$nam=trim(trim($rowg["name"], "{}"), '"'); // GebÃ€ude-Name ist ein Array.
 // Mehrfachbelegung theoretisch. Entklammern reicht. Mal mit und mal ohne "" drum.
 $kfunk=$rowg["gebaeudefunktion"];
@@ -215,9 +217,6 @@
 			."\n\t<td class='fett'>";
 	}
-	echo "\n\t\t<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''>&nbsp;";
-	if ($showkey) {echo "<span class='key'>(".$skey.")</span>&nbsp;";}			
-	echo "\n\t\t<a title='Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;gmlid=".$gmllag."&amp;ltyp=".$ltyp;
-		if ($showkey) {echo "&amp;showkey=j";}
-		echo "'>".$snam."&nbsp;".$hsnr;
+	echo "\n\t\t<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''>&nbsp;".DsKy($skey, 'Stra&szlig;en-*');		
+	echo "\n\t\t<a title='Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;gmlid=".$gmllag."&amp;ltyp=".$ltyp.LnkStf()."'>".$snam."&nbsp;".$hsnr;
 		if ($ltyp === "p") {echo ", lfd.Nr ".$hlfd;}
 	echo "</a>, ".$gemeinde."<br>";
@@ -229,7 +228,5 @@
 echo "\n<tr>"
 	."\n\t<td class='li'>Geb&auml;udefunktion</td>"
-	."\n\t<td class='fett'>";
-	if ($showkey and $kfunk != '') {echo "<span class='key'>(".$kfunk.")</span>&nbsp;";}
-	echo $bfunk."</td>"
+	."\n\t<td class='fett'>".DsKy($kfunk, 'Geb&auml;udefunktion-*').$bfunk."</td>"
 	."\n\t<td>"
 		."\n\t\t<p class='erklk'>'Geb&auml;udefunktion' ist die zum Zeitpunkt der Erhebung vorherrschend funktionale Bedeutung des Geb&auml;udes'</p>"
@@ -241,13 +238,10 @@
 if ($baw != "" OR $allefelder) {
 	echo "\n<tr>"
-		."\n\t<td class='li'>Bauweise</td>"
-		."\n\t<td class='fett'>";
-		if ($showkey and $baw != '') {echo "<span class='key'>(".$baw.")</span>&nbsp;";}
-		echo $bbauw."</td>"
-		."\n\t<td>"
-			."\n\t\t<p class='erklk'>'Bauweise' ist die Beschreibung der Art der Bauweise.</p>"
-			."\n\t\t<p class='erkli'>".$dbauw."</p>"
-		."\n\t</td>"
-	."\n</tr>";
+	."\n\t<td class='li'>Bauweise</td>"
+	."\n\t<td class='fett'>".DsKy($baw, 'Bauweise-*').$bbauw."</td>"
+	."\n\t<td>"
+		."\n\t\t<p class='erklk'>'Bauweise' ist die Beschreibung der Art der Bauweise.</p>"
+		."\n\t\t<p class='erkli'>".$dbauw."</p>"
+	."\n\t</td>\n</tr>";
 }
 
@@ -255,10 +249,9 @@
 if ($aog != "" OR $allefelder) {
 	echo "\n<tr>"
-		."\n\t<td class='li'>Geschosse</td>"
-		."\n\t<td class='fett'>".$aog."</td>"
-		."\n\t<td>"
-			."\n\t\t<p class='erklk'>Anzahl oberirdischer Geschosse.</p>"
-		."\n\t</td>"
-	."\n</tr>";
+	."\n\t<td class='li'>Geschosse</td>"
+	."\n\t<td class='fett'>".$aog."</td>"
+	."\n\t<td>"
+		."\n\t\t<p class='erklk'>Anzahl oberirdischer Geschosse.</p>"
+	."\n\t</td>\n</tr>";
 }
 
@@ -266,10 +259,9 @@
 if ($aug != "" OR $allefelder) {
 	echo "\n<tr>"
-		."\n\t<td class='li'>U-Geschosse</td>"
-		. "\n\t<td class='fett'>".$aug."</td>"
-		."\n\t<td>"
-			."\n\t\t<p class='erklk'>Anzahl unterirdischer Geschosse.</p>"
-		."\n\t</td>"
-	."\n</tr>";
+	."\n\t<td class='li'>U-Geschosse</td>"
+	. "\n\t<td class='fett'>".$aug."</td>"
+	."\n\t<td>"
+		."\n\t\t<p class='erklk'>Anzahl unterirdischer Geschosse.</p>"
+	."\n\t</td>\n</tr>";
 }
 
@@ -277,10 +269,9 @@
 if ($hoh != "" OR $allefelder) {
 	echo "\n<tr>"
-		."\n\t<td class='li'>Hochhaus</td>"
-		."\n\t<td class='fett'>".$hoh."</td>"
-		."\n\t<td>"
-			."\n\t\t<p class='erklk'>'Hochhaus' ist ein Geb&auml;ude, das nach Geb&auml;udeh&ouml;he und Auspr&auml;gung als Hochhaus zu bezeichnen ist. F&uuml;r Geb&auml;ude im Geschossbau gilt dieses i.d.R. ab 8 oberirdischen Geschossen, f&uuml;r andere Geb&auml;ude ab einer Geb&auml;udeh&ouml;he von 22 m."
-		."\n\t</td>"
-	."\n</tr>";
+	."\n\t<td class='li'>Hochhaus</td>"
+	."\n\t<td class='fett'>".$hoh."</td>"
+	."\n\t<td>"
+		."\n\t\t<p class='erklk'>'Hochhaus' ist ein Geb&auml;ude, das nach Geb&auml;udeh&ouml;he und Auspr&auml;gung als Hochhaus zu bezeichnen ist. F&uuml;r Geb&auml;ude im Geschossbau gilt dieses i.d.R. ab 8 oberirdischen Geschossen, f&uuml;r andere Geb&auml;ude ab einer Geb&auml;udeh&ouml;he von 22 m."
+	."\n\t</td>\n</tr>";
 }
 
@@ -288,13 +279,10 @@
 if ($ofl != "" OR $allefelder) {
 	echo "\n<tr>"
-		."\n\t<td class='li'>Lage zur Erdoberfl&auml;che</td>"
-		."\n\t<td class='fett'>";
-		if ($showkey and $ofl != '') {echo "<span class='key'>(".$ofl.")</span>&nbsp;";}
-		echo $oflv."</td>"
-		."\n\t<td>"
-			."\n\t\t<p class='erklk'>'Lage zur Erdoberfl&auml;che' ist die Angabe der relativen Lage des Geb&auml;udes zur Erdoberfl&auml;che. Diese Attributart wird nur bei nicht ebenerdigen Geb&auml;uden gef&uuml;hrt.<br>"
-			."\n\t\t<p class='erkli'>".$ofld."</p>"
-		."\n\t</td>"
-	."\n</tr>";
+	."\n\t<td class='li'>Lage zur Erdoberfl&auml;che</td>"
+	."\n\t<td class='fett'>".DsKy($ofl, '* f&uuml;r Lage zur Erdoberfl&auml;che').$oflv."</td>"
+	."\n\t<td>"
+		."\n\t\t<p class='erklk'>'Lage zur Erdoberfl&auml;che' ist die Angabe der relativen Lage des Geb&auml;udes zur Erdoberfl&auml;che. Diese Attributart wird nur bei nicht ebenerdigen Geb&auml;uden gef&uuml;hrt.<br>"
+		."\n\t\t<p class='erkli'>".$ofld."</p>"
+	."\n\t</td>\n</tr>";
 }
 
@@ -302,12 +290,9 @@
 if ($dga != "" OR $allefelder) {
 	echo "\n<tr>"
-		."\n\t<td class='li'>Dachgeschossausbau</td>"
-		."\n\t<td class='fett'>";
-		if ($showkey and $dga != '') {echo "<span class='key'>(".$dga.")</span>&nbsp;";}
-		echo $dgav."</td>"
-		."\n\t<td>"
-			."\n\t\t<p class='erklk'>'Dachgeschossausbau' ist ein Hinweis auf den Ausbau bzw. die Ausbauf&auml;higkeit des Dachgeschosses."
-		."\n\t</td>"
-	."\n</tr>";
+	."\n\t<td class='li'>Dachgeschossausbau</td>"
+	."\n\t<td class='fett'>".DsKy($dga, '* Dachgeschossausbau').$dgav."</td>"
+	."\n\t<td>"
+		."\n\t\t<p class='erklk'>'Dachgeschossausbau' ist ein Hinweis auf den Ausbau bzw. die Ausbauf&auml;higkeit des Dachgeschosses."
+	."\n\t</td>\n</tr>";
 }
 
@@ -315,44 +300,39 @@
 if ($zus != "" OR $allefelder) {
 	echo "\n<tr>"
-		."\n\t<td class='li'>Zustand</td>"
-		."\n\t<td class='fett'>";
-		if ($showkey and $zus != '') {echo "<span class='key'>(".$zus.")</span>&nbsp;";}
-		echo $zusv."</td>"
-		."\n\t<td>"
-			."\n\t\t<p class='erklk'>'Zustand' beschreibt die Beschaffenheit oder die Betriebsbereitschaft von 'Geb&auml;ude'. Diese Attributart wird nur dann optional gef&uuml;hrt, wenn der Zustand des Geb&auml;udes vom nutzungsf&auml;higen Zustand abweicht.</p>"
-			."\n\t\t<p class='erkli'>".$zusd."</p>"
-		."\n\t</td>"
-	."\n</tr>";
+	."\n\t<td class='li'>Zustand</td>"
+	."\n\t<td class='fett'>";
+	echo DsKy($zus, 'Zustand-*').$zusv."</td>"
+	."\n\t<td>"
+		."\n\t\t<p class='erklk'>'Zustand' beschreibt die Beschaffenheit oder die Betriebsbereitschaft von 'Geb&auml;ude'. Diese Attributart wird nur dann optional gef&uuml;hrt, wenn der Zustand des Geb&auml;udes vom nutzungsf&auml;higen Zustand abweicht.</p>"
+		."\n\t\t<p class='erkli'>".$zusd."</p>"
+	."\n\t</td>\n</tr>";
 }
 
 // Weitere GebÃ€udefunktionen
-// 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 wert, beschreibung, dokumentation FROM ax_gebaeudefunktion WHERE wert IN ( $1 ) ORDER BY wert;";
-			$v = array($wgf);
-			$resw = pg_prepare("", $sqlw);
-			$resw = pg_execute("", $v);
-			if (!$resw) {
-				echo "\n<p class='err'>Fehler bei Geb&auml;ude - weitere Funktion.</p>";
-				if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".$sqlw."<br>$1 = Werteliste = '".$wgf."'</p>";}
-			}
-			$zw=0;
-			while($roww = pg_fetch_assoc($resw)) { // LOOP Funktion
-				if ($zw > 0) {echo "<br>";}
-				if ($showkey and $roww["wert"] != '') {echo "<span class='key'>(".$roww["wert"].")</span>&nbsp;";}
-				echo "<span title='".$roww["dokumentation"]."'>".$roww["beschreibung"]."</span>";
-				$zw++;
-		   }
-		   pg_free_result($resw);
+	."\n\t<td class='li'>Weitere Geb&auml;udefunktionen</td>"
+	."\n\t<td>";
+	if ($wgf != "") { // Kommagetrennte Liste aus Array
+		$sqlw="SELECT wert, beschreibung, dokumentation FROM ax_gebaeudefunktion WHERE wert IN ( $1 ) ORDER BY wert;";
+		$v = array($wgf);
+		$resw = pg_prepare("", $sqlw);
+		$resw = pg_execute("", $v);
+		if (!$resw) {
+			echo "\n<p class='err'>Fehler bei Geb&auml;ude - weitere Funktion.</p>";
+			if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".$sqlw."<br>$1 = Werteliste = '".$wgf."'</p>";}
 		}
-		echo "</td>"
-		."\n\t<td>"
-			."\n\t\t<p class='erklk'>'Weitere Geb&auml;udefunktion' ist die Funktion, die ein Geb&auml;ude neben der dominierenden Geb&auml;udefunktion hat."
-		."\n\t</td>"
-	."\n</tr>";
+		$zw=0;
+		while($roww = pg_fetch_assoc($resw)) { // LOOP Funktion
+			if ($zw > 0) {echo "<br>";}
+			echo DsKy($roww["wert"], 'Geb&auml;udefunktionen-*')."<span title='".$roww["dokumentation"]."'>".$roww["beschreibung"]."</span>";
+			$zw++;
+	   }
+	   pg_free_result($resw);
+	}
+	echo "</td>"
+	."\n\t<td>"
+		."\n\t\t<p class='erklk'>'Weitere Geb&auml;udefunktion' ist die Funktion, die ein Geb&auml;ude neben der dominierenden Geb&auml;udefunktion hat."
+	."\n\t</td>\n</tr>";
 }
 
@@ -360,12 +340,9 @@
 if ($daf != "" OR $allefelder) {
 	echo "\n<tr>"
-		."\n\t<td class='li'>Dachform</td>"
-		."\n\t<td class='fett'>";
-		if ($showkey and $daf != '') {echo "<span class='key'>(".$daf.")</span>&nbsp;";}
-		echo $dach."</td>"
-		."\n\t<td>"
-			."\n\t\t<p class='erklk'>'Dachform' beschreibt die charakteristische Form des Daches."
-		."\n\t</td>"
-	."\n</tr>";
+	."\n\t<td class='li'>Dachform</td>"
+	."\n\t<td class='fett'>".DsKy($daf, 'Dachform-*').$dach."</td>"
+	."\n\t<td>"
+		."\n\t\t<p class='erklk'>'Dachform' beschreibt die charakteristische Form des Daches."
+	."\n\t</td>\n</tr>";
 }
 
@@ -373,10 +350,9 @@
 if ($hho != "" OR $allefelder) {
 	echo "\n<tr>"
-		."\n\t<td class='li'>Objekth&ouml;he</td>"
-		."\n\t<td class='fett'>".$hho."</td>"
-		."\n\t<td>"
-			."\n\t\t<p class='erklk'>'Objekth&ouml;he' ist die H&ouml;hendifferenz in [m] zwischen dem h&ouml;chsten Punkt der Dachkonstruktion und der festgelegten Gel&auml;ndeoberfl&auml;che des Geb&auml;udes."
-		."\n\t</td>"
-	."\n</tr>";
+	."\n\t<td class='li'>Objekth&ouml;he</td>"
+	."\n\t<td class='fett'>".$hho."</td>"
+	."\n\t<td>"
+		."\n\t\t<p class='erklk'>'Objekth&ouml;he' ist die H&ouml;hendifferenz in [m] zwischen dem h&ouml;chsten Punkt der Dachkonstruktion und der festgelegten Gel&auml;ndeoberfl&auml;che des Geb&auml;udes."
+	."\n\t</td>\n</tr>";
 }
 
@@ -384,12 +360,11 @@
 if ($gfl != "" OR $allefelder) {
 	echo "\n<tr>"
-		."\n\t<td class='li'>Geschossfl&auml;che</td>"
-		."\n\t<td class='fett'>";
-		if ($gfl != "") {echo $gfl." m&#178;";}
-		echo "</td>"
-		."\n\t<td>"
-			."\n\t\t<p class='erklk'>'Geschossfl&auml;che' ist die Geb&auml;udegeschossfl&auml;che in [qm]."
-		."\n\t</td>"
-	."\n</tr>";
+	."\n\t<td class='li'>Geschossfl&auml;che</td>"
+	."\n\t<td class='fett'>";
+	if ($gfl != "") {echo $gfl." m&#178;";}
+	echo "</td>"
+	."\n\t<td>"
+		."\n\t\t<p class='erklk'>'Geschossfl&auml;che' ist die Geb&auml;udegeschossfl&auml;che in [qm]."
+	."\n\t</td>\n</tr>";
 }
 
@@ -397,11 +372,10 @@
 if ($grf != "" OR $allefelder) {
 	echo "\n<tr>"
-		."\n\t<td class='li'>Grundfl&auml;che</td>"
-		."\n\t<td class='fett'>";
-		if ($grf != "") {echo $grf." m&#178;";}
-		echo "\n\t<td>"
-			."\n\t\t<p class='erklk'>'Grundfl&auml;che' ist die Geb&auml;udegrundfl&auml;che in [qm]."
-		."\n\t</td>"
-	."\n</tr>";
+	."\n\t<td class='li'>Grundfl&auml;che</td>"
+	."\n\t<td class='fett'>";
+	if ($grf != "") {echo $grf." m&#178;";}
+	echo "\n\t<td>"
+		."\n\t\t<p class='erklk'>'Grundfl&auml;che' ist die Geb&auml;udegrundfl&auml;che in [qm]."
+	."\n\t</td>\n</tr>";
 }
 
@@ -409,10 +383,9 @@
 if ($ura != "" OR $allefelder) {
 	echo "\n<tr>"
-		."\n\t<td class='li'>Umbauter Raum</td>"
-		."\n\t<td class='fett'>".$ura."</td>"
-		."\n\t<td>"
-			."\n\t\t<p class='erklk'>'Umbauter Raum' ist der umbaute Raum [Kubikmeter] des Geb&auml;udes."
-		."\n\t</td>"
-	."\n</tr>";
+	."\n\t<td class='li'>Umbauter Raum</td>"
+	."\n\t<td class='fett'>".$ura."</td>"
+	."\n\t<td>"
+		."\n\t\t<p class='erklk'>'Umbauter Raum' ist der umbaute Raum [Kubikmeter] des Geb&auml;udes."
+	."\n\t</td>\n</tr>";
 }
 
@@ -420,10 +393,9 @@
 if ($bja != "" OR $allefelder) {
 	echo "\n<tr>"
-		."\n\t<td class='li'>Baujahr</td>"
-		."\n\t<td class='fett'>".$bja."</td>"
-		."\n\t<td>"
-			."\n\t\t<p class='erklk'>'Baujahr' ist das Jahr der Fertigstellung oder der baulichen Ver&auml;nderung des Geb&auml;udes."
-		."\n\t</td>"
-	."\n</tr>";
+	."\n\t<td class='li'>Baujahr</td>"
+	."\n\t<td class='fett'>".$bja."</td>"
+	."\n\t<td>"
+		."\n\t\t<p class='erklk'>'Baujahr' ist das Jahr der Fertigstellung oder der baulichen Ver&auml;nderung des Geb&auml;udes."
+	."\n\t</td>\n</tr>";
 }
 
@@ -431,10 +403,9 @@
 if ($daa != "" OR $allefelder) {
 	echo "\n<tr>"
-		."\n\t<td class='li'>Dachart</td>"
-		."\n\t<td class='fett'>".$daa."</td>"
-		."\n\t<td>"
-			."\n\t\t<p class='erklk'>'Dachart' gibt die Art der Dacheindeckung (z.B. Reetdach) an."
-		."\n\t</td>"
-	."\n</tr>";
+	."\n\t<td class='li'>Dachart</td>"
+	."\n\t<td class='fett'>".$daa."</td>"
+	."\n\t<td>"
+		."\n\t\t<p class='erklk'>'Dachart' gibt die Art der Dacheindeckung (z.B. Reetdach) an."
+	."\n\t</td>\n</tr>";
 }
 
@@ -461,13 +432,10 @@
 	if ($erheb != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td class='li'>Datenerhebung</td>"
-			."\n\t<td class='fett'>";
-			if ($showkey) {echo "<span class='key'>(".$erheb.")</span>&nbsp;";}
-			echo $berheb."</td>"
-			."\n\t<td>"
-				."\n\t\t<p class='erklk'>'Datenerhebung' beschreibt Qualit&auml;tsangaben, Herkunft.</p>"
-				."\n\t\t<p class='erkli'>".$derheb."</p>"
-			."</td>"
-		."\n</tr>";
+		."\n\t<td class='li'>Datenerhebung</td>"
+		."\n\t<td class='fett'>".DsKy($erheb, 'Datenerhebung-*').$berheb."</td>"
+		."\n\t<td>"
+			."\n\t\t<p class='erklk'>'Datenerhebung' beschreibt Qualit&auml;tsangaben, Herkunft.</p>"
+			."\n\t\t<p class='erkli'>".$derheb."</p>"
+		."</td>\n</tr>";
 	}
 }
@@ -515,5 +483,5 @@
 
 	// 3 FÃ€lle:
-	if ($drin === "t") { // GebÃ€ude liegt komplett in FlurstÃŒck
+	if ($drin === "t") { // Geb. komplett in FS
 		$gstyle="gin"; // siehe .css	
 		$f1=number_format($schni,2,",",".") . " m&#178;";
@@ -524,5 +492,5 @@
 			$f1="&nbsp;";
 			$f2="angrenzend";
-		} else { // Teile des GebÃ€udes stehen auf dem FlurstÃŒck
+		} else { // Teile des Geb. auf dem FS
 			$gstyle="gtl";
 			$f1=number_format($schni,2,",",".") . " m&#178;";
@@ -532,15 +500,12 @@
 	echo "\n<tr>"
 		."\n\t<td class='fla'>".$f1."</td>"
-		."\n\t<td class='".$gstyle."'>".$f2."</td>";
-	echo "\n\t<td>";
-	if ($showkey) {echo "<span class='key'>(".$rowf["gemarkungsnummer"].")</span> ";}
-	echo $rowf["bezeichnung"]."</td>"
-	."\n\t<td>".$flur."</td>"
-	."\n\t<td class='fsnr'><span class='wichtig'>".$fskenn."</span></td>";
+		."\n\t<td class='".$gstyle."'>".$f2."</td>"
+		."\n\t<td>".DsKy($rowf["gemarkungsnummer"], 'Gemarkungsnummer').$rowf["bezeichnung"]."</td>"
+		."\n\t<td>".$flur."</td>"
+		."\n\t<td class='fsnr'><span class='wichtig'>".$fskenn."</span></td>";
 
 	echo "\n\t<td class='nwlink noprint'>" // Link FS
-		."\n\t\t<a title='Flurst&uuml;ck' href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$fgml;
-		if ($showkey) {echo "&amp;showkey=j";}
-		echo "'>Flurst&uuml;ck&nbsp;<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>"
+		."\n\t\t<a title='Flurst&uuml;ck' href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$fgml.LnkStf()
+		."'>Flurst&uuml;ck&nbsp;<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>"
 		."\n\t</td>"
 	."\n</tr>";
@@ -549,5 +514,5 @@
 $gfla=number_format($gfla,2,",",".") . " m&#178;";
 echo "\n<tr>\n\t<td class='fla sum'>".$gfla."</td>\n\t<td>Geb&auml;udefl&auml;che</td>\n\t<td></td>\n</tr>";
-echo "\n</table>"; // Ende FlurstÃŒcke
+echo "\n</table>";
 
 echo "<div class='buttonbereich noprint'>\n<hr>"
