comparison backend/doc/documentation/de/importer-geodaesie.tex @ 9712:b880a8adc2b2 3.2.x

Convert importer documentation sources to UTF-8 Needs escaping extended characters like "%*ü*)" in listings.
author Tom Gottfried <tom@intevation.de>
date Thu, 04 Mar 2021 13:05:19 +0100
parents 21e276cef740
children
comparison
equal deleted inserted replaced
9711:21e276cef740 9712:b880a8adc2b2
3 Der Geodaten Importer ist ein in der Programmiersprache Python 3 Der Geodaten Importer ist ein in der Programmiersprache Python
4 geschriebenes Kommandozeilen Werkzeug zum Import von Shapefiles in 4 geschriebenes Kommandozeilen Werkzeug zum Import von Shapefiles in
5 eine Datenbank. 5 eine Datenbank.
6 Zum Lesen der Shapefiles und zum Schreiben der Geodaten 6 Zum Lesen der Shapefiles und zum Schreiben der Geodaten
7 in die Datenbank wird die GDAL-Bibliothek verwendet. 7 in die Datenbank wird die GDAL-Bibliothek verwendet.
8 Um Daten in eine Oracle Datenbank zu importieren ist es nötig, dass 8 Um Daten in eine Oracle Datenbank zu importieren ist es nötig, dass
9 GDAL und GDAL-Python-Bindings mit Oracle-Unterstützung installiert 9 GDAL und GDAL-Python-Bindings mit Oracle-Unterstützung installiert
10 sind. Bei der Verwendung von PostgreSQL entfällt dieser Schritt. 10 sind. Bei der Verwendung von PostgreSQL entfällt dieser Schritt.
11 Weitere Details hierzu befinden sich im 11 Weitere Details hierzu befinden sich im
12 Kapitel \ref{Systemanforderungen} und \ref{Installationsanleitung}. 12 Kapitel \ref{Systemanforderungen} und \ref{Installationsanleitung}.
13 13
14 Der Importer kann mit einem Shellscript von der Kommandozeile gestartet werden 14 Der Importer kann mit einem Shellscript von der Kommandozeile gestartet werden
15 (siehe Kapitel \ref{Starten des Geodaten Importers}). Nach dem Start wird anhand der 15 (siehe Kapitel \ref{Starten des Geodaten Importers}). Nach dem Start wird anhand der
16 Konfiguration festgestellt, welche Klassen von Shapefiles aus dem Dateisystem 16 Konfiguration festgestellt, welche Klassen von Shapefiles aus dem Dateisystem
17 importiert werden sollen. Für jede Klasse gibt es einen speziellen 17 importiert werden sollen. Für jede Klasse gibt es einen speziellen
18 Parser, der die speziellen Attribute eines Shapefiles liest und in die entsprechende 18 Parser, der die speziellen Attribute eines Shapefiles liest und in die entsprechende
19 Relation der Datenbank schreibt. Die Parser sind speziell auf das 19 Relation der Datenbank schreibt. Die Parser sind speziell auf das
20 Dateisystem der BfG ausgerichtet. So wird beispielsweise erwartet, dass die Shapefiles der 20 Dateisystem der BfG ausgerichtet. So wird beispielsweise erwartet, dass die Shapefiles der
21 Gewässerachse im Ordner $Geodaesie/Flussachse+km$ liegen. Weitere Informationen zu 21 Gewässerachse im Ordner $Geodaesie/Flussachse+km$ liegen. Weitere Informationen zu
22 den einzelnen Parsern sind Kapitel \ref{Beschreibung der Parser} zu 22 den einzelnen Parsern sind Kapitel \ref{Beschreibung der Parser} zu
23 entnehmen. 23 entnehmen.
24 24
25 Damit die Geodaten eines Shapes später eindeutig in der Datenbank identifiziert 25 Damit die Geodaten eines Shapes später eindeutig in der Datenbank identifiziert
26 werden können, wird für jede Geometrie der Pfad des Shapes im Dateisystem 26 werden können, wird für jede Geometrie der Pfad des Shapes im Dateisystem
27 im Datenbankfeld 'path' gespeichert. Anwendungen, die auf der Datenbank 27 im Datenbankfeld 'path' gespeichert. Anwendungen, die auf der Datenbank
28 aufbauen, können die Geodaten eines Shapefiles später anhand dieses Merkmals 28 aufbauen, können die Geodaten eines Shapefiles später anhand dieses Merkmals
29 gruppieren und anzeigen. 29 gruppieren und anzeigen.
30 30
31 Bitte beachten Sie, dass der Geodaten Importer aufgrund der eingesetzten 31 Bitte beachten Sie, dass der Geodaten Importer aufgrund der eingesetzten
32 Technologien derzeit nicht in der Lage ist, lesend auf die Oracle-Datenbank 32 Technologien derzeit nicht in der Lage ist, lesend auf die Oracle-Datenbank
33 zuzugreifen. Entsprechend kann beim Import nicht festgestellt werden, ob sich 33 zuzugreifen. Entsprechend kann beim Import nicht festgestellt werden, ob sich
34 die Daten eines Shapefiles bereits in der Datenbank befinden, oder nicht. 34 die Daten eines Shapefiles bereits in der Datenbank befinden, oder nicht.
35 Ein erneuter Import der Geodaten würde also dazu führen, dass Geometrien doppelt in der 35 Ein erneuter Import der Geodaten würde also dazu führen, dass Geometrien doppelt in der
36 Datenbank abgelegt werden. 36 Datenbank abgelegt werden.
37 37
38 \subsection{Koordination-Transformation} 38 \subsection{Koordination-Transformation}
39 Für die Transformation der Daten verwendet GDAL wiederum die PROJ4-Bibliothek. 39 Für die Transformation der Daten verwendet GDAL wiederum die PROJ4-Bibliothek.
40 Die Daten werden vor dem Schreiben in die Datenbank alle 40 Die Daten werden vor dem Schreiben in die Datenbank alle
41 in die Gauß-Krüger-Projektion Zone 3 (EPSG-Code 31467) transformiert. 41 in die Gauß-Krüger-Projektion Zone 3 (EPSG-Code 31467) transformiert.
42 Ist für die zu importierenden Daten keine Projektion ersichtlich 42 Ist für die zu importierenden Daten keine Projektion ersichtlich
43 (fehlende \textit{*.prj}-Datei), so findet keine Transformation statt. 43 (fehlende \textit{*.prj}-Datei), so findet keine Transformation statt.
44 Dies führt nur zu Problemen mit dem Fachdienst FLYS, falls die Daten nicht 44 Dies führt nur zu Problemen mit dem Fachdienst FLYS, falls die Daten nicht
45 bereits in der genannten Projektion vorlagen. 45 bereits in der genannten Projektion vorlagen.
46 46
47 Im Falle der Digitalen Geländemodelle (DGM) findet keine Transformation statt, 47 Im Falle der Digitalen Geländemodelle (DGM) findet keine Transformation statt,
48 da zu diesen lediglich Metadaten in der Datenbank gespeichert werden 48 da zu diesen lediglich Metadaten in der Datenbank gespeichert werden
49 (siehe Kapitel \ref{dgm_parser}), 49 (siehe Kapitel \ref{dgm_parser}),
50 während die Daten selbst von der Anwendung Dive4Elements River 50 während die Daten selbst von der Anwendung Dive4Elements River
51 aus dem Dateisystem geholt werden. 51 aus dem Dateisystem geholt werden.
52 Für Berechnungen mit den DGM werden die Geometrien aus der Datenbank 52 Für Berechnungen mit den DGM werden die Geometrien aus der Datenbank
53 in Dive4Elements River in die Projektion des jeweiligen DGM transformiert. 53 in Dive4Elements River in die Projektion des jeweiligen DGM transformiert.
54 Daher ist es besonders wichtig, dass die Angaben des EPSG-Codes 54 Daher ist es besonders wichtig, dass die Angaben des EPSG-Codes
55 in der Spalte SRID in DGMs.csv korrekt sind (siehe Kapitel \ref{dgm_parser}) 55 in der Spalte SRID in DGMs.csv korrekt sind (siehe Kapitel \ref{dgm_parser})
56 56
57 \subsection{Logfile} 57 \subsection{Logfile}
58 Der Erfolg oder Misserfolg eines Shape-Imports wird 58 Der Erfolg oder Misserfolg eines Shape-Imports wird
59 im Logfile vermerkt. Folgende Einträge können dem Logfile 59 im Logfile vermerkt. Folgende Einträge können dem Logfile
60 entnommen werden: 60 entnommen werden:
61 61
62 \textbf{INFO: Inserted \# features} 62 \textbf{INFO: Inserted \# features}
63 \\Gibt die Anzahl der erfolgreich importierten Features an. 63 \\Gibt die Anzahl der erfolgreich importierten Features an.
64 64
73 \textbf{INFO: Did not import values from fields: '...' ...} 73 \textbf{INFO: Did not import values from fields: '...' ...}
74 \\Der Importer schreibt neben der geographischen Information weitere 74 \\Der Importer schreibt neben der geographischen Information weitere
75 Attribut-Daten in die Datenbank. 75 Attribut-Daten in die Datenbank.
76 Attribut-Spalten die nicht importiert wurden (z.B. auf Grund 76 Attribut-Spalten die nicht importiert wurden (z.B. auf Grund
77 von Tippfehlern oder unterschiedlicher Schreibweise), 77 von Tippfehlern oder unterschiedlicher Schreibweise),
78 werden wie angegeben im Logfile aufgeführt. 78 werden wie angegeben im Logfile aufgeführt.
79 79
80 \textbf{ERROR: No source SRS given! No transformation possible!} 80 \textbf{ERROR: No source SRS given! No transformation possible!}
81 \\Das Shapefile enthält keine Information, in welcher Projektion die Geometrien 81 \\Das Shapefile enthält keine Information, in welcher Projektion die Geometrien
82 vorliegen. Es findet keine Transformation in die Zielprojektion statt. Bitte 82 vorliegen. Es findet keine Transformation in die Zielprojektion statt. Bitte
83 beachten Sie, dass FLYS diese Geometrien später ggf.\ nicht korrekt darstellen 83 beachten Sie, dass FLYS diese Geometrien später ggf.\ nicht korrekt darstellen
84 kann. 84 kann.
85 85
86 \textbf{ERROR: Unable to insert feature: DETAIL} 86 \textbf{ERROR: Unable to insert feature: DETAIL}
87 \\Beim Lesen eines Features ist ein Fehler aufgetreten. 87 \\Beim Lesen eines Features ist ein Fehler aufgetreten.
88 Das Feature konnte nicht in die Datenbank geschrieben werden. 88 Das Feature konnte nicht in die Datenbank geschrieben werden.
90 \textbf{ERROR: Exception while committing transaction} 90 \textbf{ERROR: Exception while committing transaction}
91 \\Beim Abschluss des Schreib-Vorgangs in die Datenbank ist ein unerwarteter 91 \\Beim Abschluss des Schreib-Vorgangs in die Datenbank ist ein unerwarteter
92 Fehler aufgetreten. Die Features des Shapes sind nicht importiert worden. 92 Fehler aufgetreten. Die Features des Shapes sind nicht importiert worden.
93 93
94 \textbf{ERROR 1: ORA-01017: invalid username/password; logon denied} 94 \textbf{ERROR 1: ORA-01017: invalid username/password; logon denied}
95 \\Es konnte keine Verbindung zur Oracle Datenbank hergestellt werden. Prüfen Sie 95 \\Es konnte keine Verbindung zur Oracle Datenbank hergestellt werden. Prüfen Sie
96 die Verbindungseinstellungen. 96 die Verbindungseinstellungen.
97 97
98 Weitere Fehler, die von der Oracle-Datenbank kommen, können ebenfalls im 98 Weitere Fehler, die von der Oracle-Datenbank kommen, können ebenfalls im
99 Logfile angezeigt werden. 99 Logfile angezeigt werden.
100 100
101 101
102 \subsection{Beschreibung der Parser} 102 \subsection{Beschreibung der Parser}
103 \label{Beschreibung der Parser} 103 \label{Beschreibung der Parser}
105 Wie im letzten Kapitel beschrieben, sind die Parser speziell an das Dateisystem 105 Wie im letzten Kapitel beschrieben, sind die Parser speziell an das Dateisystem
106 der BfG angepasst. Im Folgenden werden zu jedem Parser folgende Informationen 106 der BfG angepasst. Im Folgenden werden zu jedem Parser folgende Informationen
107 angegeben: 107 angegeben:
108 108
109 \textbf{Pfad} 109 \textbf{Pfad}
110 \\Der Pfad, in dem die Shapefiles im Dateisystem abgelegt sein müssen (ausgehend 110 \\Der Pfad, in dem die Shapefiles im Dateisystem abgelegt sein müssen (ausgehend
111 vom Gewässer Verzeichnis). 111 vom Gewässer Verzeichnis).
112 112
113 \textbf{Geometrie} 113 \textbf{Geometrie}
114 \\Der Geometrie Typ, der für diese Klasse von Shapefiles erwartet wird. 114 \\Der Geometrie Typ, der für diese Klasse von Shapefiles erwartet wird.
115 115
116 \textbf{Attribute} 116 \textbf{Attribute}
117 \\Eine Liste der Attribute, die vom Parser aus dem Shape gelesen werden. 117 \\Eine Liste der Attribute, die vom Parser aus dem Shape gelesen werden.
118 In Klammern als alternativ bezeichnete Attribut-Namen werden in 118 In Klammern als alternativ bezeichnete Attribut-Namen werden in
119 das gleiche Datenbankfeld geschrieben, wie das vorgenannte Feld. 119 das gleiche Datenbankfeld geschrieben, wie das vorgenannte Feld.
120 Die alternativen Namen werden vom Importer zusätzlich unterstützt, 120 Die alternativen Namen werden vom Importer zusätzlich unterstützt,
121 um Dateien aus dem heterogenen Bestand der BfG unverändert 121 um Dateien aus dem heterogenen Bestand der BfG unverändert
122 importieren zu können. 122 importieren zu können.
123 123
124 Zudem werden Datenbank-Attribute beschrieben, die nicht direkt aus 124 Zudem werden Datenbank-Attribute beschrieben, die nicht direkt aus
125 Attribut-Spalten des Shapefiles gelesen werden. 125 Attribut-Spalten des Shapefiles gelesen werden.
126 126
127 \subsubsection{Achsen} 127 \subsubsection{Achsen}
130 Pfad & Geodaesie/Flussachse+km \\ 130 Pfad & Geodaesie/Flussachse+km \\
131 Geometrie & LINESTRING, MULTILINESTRING \\ 131 Geometrie & LINESTRING, MULTILINESTRING \\
132 \end{tabular*} 132 \end{tabular*}
133 133
134 Das Attribut 'name' wird auf den Namen des Shapefiles gesetzt. 134 Das Attribut 'name' wird auf den Namen des Shapefiles gesetzt.
135 Zusätzlich wird das Attribut 'kind\_id' gesetzt, welches 135 Zusätzlich wird das Attribut 'kind\_id' gesetzt, welches
136 für die aktuelle Achse (\textit{achse.shp}) 1 ist 136 für die aktuelle Achse (\textit{achse.shp}) 1 ist
137 und für sonstige Achsen (weitere Linien-Shapes) 2. 137 und für sonstige Achsen (weitere Linien-Shapes) 2.
138 138
139 Hinweis: 139 Hinweis:
140 Da die Layer-Konfiguration (Mapfiles) für die Flussachsen beim Start des 140 Da die Layer-Konfiguration (Mapfiles) für die Flussachsen beim Start des
141 Artefakt-Servers generiert werden, muss der Artefakt-Server neugestartet 141 Artefakt-Servers generiert werden, muss der Artefakt-Server neugestartet
142 werden um die Flussachse in der Anwendung darstellen zu können. 142 werden um die Flussachse in der Anwendung darstellen zu können.
143 143
144 \subsubsection{Hydr. Grenzen} 144 \subsubsection{Hydr. Grenzen}
145 \hspace{5mm} 145 \hspace{5mm}
146 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}} 146 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}}
147 Pfad & Hydrologie/Hydr.Grenzen \\ 147 Pfad & Hydrologie/Hydr.Grenzen \\
148 Geometrie & LINESTRING, MULTILINESTRING, POLYGON, MULTIPOLYGON \\ 148 Geometrie & LINESTRING, MULTILINESTRING, POLYGON, MULTIPOLYGON \\
149 Attribute & SECTIE, STROVOER \\ 149 Attribute & SECTIE, STROVOER \\
150 \end{tabular*} 150 \end{tabular*}
151 151
152 Das Attribut 'name' wird auf den Namen des Shapefiles gesetzt. 152 Das Attribut 'name' wird auf den Namen des Shapefiles gesetzt.
153 Das Attribut 'kind' wird 1 gesetzt für Daten aus dem 153 Das Attribut 'kind' wird 1 gesetzt für Daten aus dem
154 Unterverzeichnis \textit{Linien/BfG}, 154 Unterverzeichnis \textit{Linien/BfG},
155 2 für Daten aus \textit{Linien/Land}, 155 2 für Daten aus \textit{Linien/Land},
156 3 für Daten aus \textit{Sonstige} 156 3 für Daten aus \textit{Sonstige}
157 und für alle übrigen 0. 157 und für alle übrigen 0.
158 Ausgenommen sind Dateien, in deren Namen 'Talaue' 158 Ausgenommen sind Dateien, in deren Namen 'Talaue'
159 (Groß-Klein-Schreibung irrelevant) vorkommt. 159 (Groß-Klein-Schreibung irrelevant) vorkommt.
160 160
161 Linien und Polygone werden in der Datenbank in unterschiedlichen 161 Linien und Polygone werden in der Datenbank in unterschiedlichen
162 Tabellen gespeichert. 162 Tabellen gespeichert.
163 163
164 \subsubsection{Bauwerke} 164 \subsubsection{Bauwerke}
166 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}} 166 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}}
167 Pfad & Geodaesie/Bauwerke \\ 167 Pfad & Geodaesie/Bauwerke \\
168 Geometrie & LINESTRING \\ 168 Geometrie & LINESTRING \\
169 Attribute & Name (alternativ: KWNAAM), 169 Attribute & Name (alternativ: KWNAAM),
170 km (alternativ: station, wsv-km), 170 km (alternativ: station, wsv-km),
171 z (alternativ: Höhe, Hoehe, m+NHN)\\ 171 z (alternativ: Höhe, Hoehe, m+NHN)\\
172 \end{tabular*} 172 \end{tabular*}
173 173
174 Das Attribut 'name' wird auf den Namen des Shapefiles gesetzt. 174 Das Attribut 'name' wird auf den Namen des Shapefiles gesetzt.
175 Das Attribut 'kind\_id' ist 0 für Sonstige, 175 Das Attribut 'kind\_id' ist 0 für Sonstige,
176 1 für Brücken, 2 für Wehre, 3 für Pegel. 176 1 für Brücken, 2 für Wehre, 3 für Pegel.
177 Es wird aus dem Dateinamen hergeleitet 177 Es wird aus dem Dateinamen hergeleitet
178 (\textit{bruecken.shp, wehre.shp, pegel.shp}, 178 (\textit{bruecken.shp, wehre.shp, pegel.shp},
179 teilweise auch alternative Schreibweisen unterstützt) 179 teilweise auch alternative Schreibweisen unterstützt)
180 oder je Feature gesetzt, wenn in einer Attributspalte 180 oder je Feature gesetzt, wenn in einer Attributspalte
181 die Werte 'bruecke' und 'wehr' 181 die Werte 'bruecke' und 'wehr'
182 (teilweise auch alternative Schreibweisen unterstützt) vorkommen. 182 (teilweise auch alternative Schreibweisen unterstützt) vorkommen.
183 Ausgenommen sind Dateien, in deren Namen 'Buhnen' 183 Ausgenommen sind Dateien, in deren Namen 'Buhnen'
184 (Groß-Klein-Schreibung irrelevant) vorkommt. 184 (Groß-Klein-Schreibung irrelevant) vorkommt.
185 185
186 \subsubsection{Querprofilspuren} 186 \subsubsection{Querprofilspuren}
187 \hspace{5mm} 187 \hspace{5mm}
188 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}} 188 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}}
189 Pfad & Geodaesie/Querprofile \\ 189 Pfad & Geodaesie/Querprofile \\
190 Geometrie & LINESTRING \\ 190 Geometrie & LINESTRING \\
191 Attribute & KILOMETER (alternativ: KM, STATION), ELEVATION \\ 191 Attribute & KILOMETER (alternativ: KM, STATION), ELEVATION \\
192 \end{tabular*} 192 \end{tabular*}
193 193
194 Das Attribut 'kind\_id' wird 1 gesetzt für die Datei \textit{qps.shp} (aktuelle Querprofilspuren) 194 Das Attribut 'kind\_id' wird 1 gesetzt für die Datei \textit{qps.shp} (aktuelle Querprofilspuren)
195 und 0 für alle weiteren. 195 und 0 für alle weiteren.
196 196
197 \subsubsection{Festpunkte} 197 \subsubsection{Festpunkte}
198 \hspace{5mm} 198 \hspace{5mm}
199 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}} 199 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}}
200 Pfad & Geodaesie/Festpunkte \\ 200 Pfad & Geodaesie/Festpunkte \\
209 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}} 209 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}}
210 Pfad & Hydrologie/HW-Marken/hw-marken.shp \\ 210 Pfad & Hydrologie/HW-Marken/hw-marken.shp \\
211 Geometrie & POINT \\ 211 Geometrie & POINT \\
212 Attribute & Ort (alternativ: Pegel), 212 Attribute & Ort (alternativ: Pegel),
213 km (alternativ: station, wsv-km, FlussKm), 213 km (alternativ: station, wsv-km, FlussKm),
214 z (alternativ: z mit anschließender Zahl, m+NHN)\\ 214 z (alternativ: z mit anschließender Zahl, m+NHN)\\
215 \end{tabular*} 215 \end{tabular*}
216 216
217 Groß-Klein-Schreibung im Dateinamen ist irrelevant. 217 Groß-Klein-Schreibung im Dateinamen ist irrelevant.
218 Für das Attribut 'year' wird im Dateinamen nach einer Jahreszahl 218 Für das Attribut 'year' wird im Dateinamen nach einer Jahreszahl
219 nach folgendem Muster gesucht: \textit{\_YYYY\_} oder \textit{-YYYY-}. 219 nach folgendem Muster gesucht: \textit{\_YYYY\_} oder \textit{-YYYY-}.
220 Gelingt dies nicht, erscheint im Logfile die Warnung 220 Gelingt dies nicht, erscheint im Logfile die Warnung
221 'Could not extract year from filename: ...'. 221 'Could not extract year from filename: ...'.
222 222
223 \subsubsection{Talaue} 223 \subsubsection{Talaue}
226 Pfad & Hydrologie/Hydr.Grenzen \\ 226 Pfad & Hydrologie/Hydr.Grenzen \\
227 Geometrie & POLYGON, MULTIPOLYGON \\ 227 Geometrie & POLYGON, MULTIPOLYGON \\
228 \end{tabular*} 228 \end{tabular*}
229 229
230 Es werden nur Dateien betrachtet, in deren Namen das Wort 'Talaue' 230 Es werden nur Dateien betrachtet, in deren Namen das Wort 'Talaue'
231 (Groß-Klein-Schreibung irrelevant) vorkommt. 231 (Groß-Klein-Schreibung irrelevant) vorkommt.
232 Das Attribut 'name' wird auf den Namen des Shapefiles gesetzt. 232 Das Attribut 'name' wird auf den Namen des Shapefiles gesetzt.
233 Das Attribut 'kind\_id' wird 1 gesetzt für die Datei \textit{talaue.shp} (aktuelle Talaue) 233 Das Attribut 'kind\_id' wird 1 gesetzt für die Datei \textit{talaue.shp} (aktuelle Talaue)
234 und 0 für alle weiteren. 234 und 0 für alle weiteren.
235 235
236 \subsubsection{Hochwasserschutzanlagen} 236 \subsubsection{Hochwasserschutzanlagen}
237 \hspace{5mm} 237 \hspace{5mm}
238 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}} 238 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}}
239 Pfad & Hydrologie/HW-Schutzanlagen \\ 239 Pfad & Hydrologie/HW-Schutzanlagen \\
240 Geometrie & LINESTRING, MULTILINESTRING, POINT \\ 240 Geometrie & LINESTRING, MULTILINESTRING, POINT \\
241 Attribute & Name, Art, Quelle, Anmerkung, Stand, Verband, 241 Attribute & Name, Art, Quelle, Anmerkung, Stand, Verband,
242 km (alternativ: Deich\_km), Bereich, 242 km (alternativ: Deich\_km), Bereich,
243 Hoehe\_ist, Hoehe\_soll, WSP\_Bfg100, Bundesland 243 Hoehe\_ist, Hoehe\_soll, WSP\_Bfg100, Bundesland
244 (Teilweise auch alternative Schreibweisen unterstützt)\\ 244 (Teilweise auch alternative Schreibweisen unterstützt)\\
245 \end{tabular*} 245 \end{tabular*}
246 246
247 Das Attribut 'name' wird auf den Namen des Shapefiles gesetzt, 247 Das Attribut 'name' wird auf den Namen des Shapefiles gesetzt,
248 wenn kein Attribut 'Name' im Shapefile vorhanden ist. 248 wenn kein Attribut 'Name' im Shapefile vorhanden ist.
249 Das Feld 'kind\_id' wird per Default auf 2 (für Damm) gesetzt. 249 Das Feld 'kind\_id' wird per Default auf 2 (für Damm) gesetzt.
250 Wird ein Attribut 'ART' im Shapefile gefunden, 250 Wird ein Attribut 'ART' im Shapefile gefunden,
251 so wird 'kind\_id' entsprechend dieses Feldes gesetzt 251 so wird 'kind\_id' entsprechend dieses Feldes gesetzt
252 (1 für die Werte 'Durchlass', 'Rohr1', 'Rohr 1', 'Rohr 2', 252 (1 für die Werte 'Durchlass', 'Rohr1', 'Rohr 1', 'Rohr 2',
253 2 für die Werte 'Damm', 'Deich', 'Hochufer', 'Hauptdeich', 'Sommerdeich', 253 2 für die Werte 'Damm', 'Deich', 'Hochufer', 'Hauptdeich', 'Sommerdeich',
254 3 für den Wert 'Graben'). 254 3 für den Wert 'Graben').
255 Es wird versucht das Bundesland aus dem Dateinamen zu ermitteln, 255 Es wird versucht das Bundesland aus dem Dateinamen zu ermitteln,
256 wenn das Shapefile kein Attribut 'Bundesland' enthält. 256 wenn das Shapefile kein Attribut 'Bundesland' enthält.
257 257
258 Linien und Punkte werden in der Datenbank in unterschiedlichen 258 Linien und Punkte werden in der Datenbank in unterschiedlichen
259 Tabellen gespeichert. 259 Tabellen gespeichert.
260 260
261 \subsubsection{Buhnen} 261 \subsubsection{Buhnen}
262 \hspace{5mm} 262 \hspace{5mm}
263 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}} 263 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}}
264 Pfad & Geodaesie/Bauwerke/Buhnen.shp \\ 264 Pfad & Geodaesie/Bauwerke/Buhnen.shp \\
265 Geometrie & POINT \\ 265 Geometrie & POINT \\
266 Attribute & station (alternativ: km, wsv-km), 266 Attribute & station (alternativ: km, wsv-km),
267 z (alternativ: Hoehe, Höhe, m+NHN) \\ 267 z (alternativ: Hoehe, Höhe, m+NHN) \\
268 \end{tabular*} 268 \end{tabular*}
269 269
270 Das Attribut 'kind\_id' wird für 270 Das Attribut 'kind\_id' wird für
271 Buhnenkopf (\textit{bkl, bkr, bk}) 0, 271 Buhnenkopf (\textit{bkl, bkr, bk}) 0,
272 für Buhnenfuß (\textit{bfl, bfr, bf}) 1 und 272 für Buhnenfuß (\textit{bfl, bfr, bf}) 1 und
273 für Buhnenwurzel (\textit{bwl, bwr, bw}) 2 gesetzt, 273 für Buhnenwurzel (\textit{bwl, bwr, bw}) 2 gesetzt,
274 274
275 \subsubsection{Stationierung} 275 \subsubsection{Stationierung}
276 \hspace{5mm} 276 \hspace{5mm}
277 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}} 277 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}}
278 Pfad & Geodaesie/Flussachse+km/km.shp \\ 278 Pfad & Geodaesie/Flussachse+km/km.shp \\
280 Attribute & km (alternativ: KM), landkm \\ 280 Attribute & km (alternativ: KM), landkm \\
281 \end{tabular*} 281 \end{tabular*}
282 282
283 Das Attribut 'name' wird auf den Namen des Shapefiles gesetzt. 283 Das Attribut 'name' wird auf den Namen des Shapefiles gesetzt.
284 284
285 \subsubsection{Überschwemmungsfläche} 285 \subsubsection{Ãœberschwemmungsfläche}
286 \hspace{5mm} 286 \hspace{5mm}
287 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}} 287 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}}
288 Pfad & Hydrologie/UeSG \\ 288 Pfad & Hydrologie/UeSG \\
289 Geometrie & POLYGON, MULTIPOLYGON \\ 289 Geometrie & POLYGON, MULTIPOLYGON \\
290 Attribut & diff, count, area, perimeter, GEWAESSER \\ 290 Attribut & diff, count, area, perimeter, GEWAESSER \\
295 295
296 \hspace{5mm} 296 \hspace{5mm}
297 \begin{tabular}[t]{ll} 297 \begin{tabular}[t]{ll}
298 Unterverzeichnis & Wert \\ 298 Unterverzeichnis & Wert \\
299 \textit{Berechnungen/Aktuell/BfG} & 111 \\ 299 \textit{Berechnungen/Aktuell/BfG} & 111 \\
300 \textit{Berechnungen/Aktuell/Bundesländer} & 112 \\ 300 \textit{Berechnungen/Aktuell/Bundesländer} & 112 \\
301 \textit{Berechnungen/Potentiell/BfG} & 121 \\ 301 \textit{Berechnungen/Potentiell/BfG} & 121 \\
302 \textit{Berechnungen/Potentiell/Bundesländer} & 122 \\ 302 \textit{Berechnungen/Potentiell/Bundesländer} & 122 \\
303 \textit{Messungen} & 200 \\ 303 \textit{Messungen} & 200 \\
304 \end{tabular} 304 \end{tabular}
305 305
306 Das Attribut 'source' wird auf den Namen des Verzeichnisses gesetzt, 306 Das Attribut 'source' wird auf den Namen des Verzeichnisses gesetzt,
307 indem sich das jeweilige Shapefile befindet. 307 indem sich das jeweilige Shapefile befindet.
308 308
309 \subsubsection{Metadaten zu Digitalen Gelände-Modellen} 309 \subsubsection{Metadaten zu Digitalen Gelände-Modellen}
310 \label{dgm_parser} 310 \label{dgm_parser}
311 \hspace{5mm} 311 \hspace{5mm}
312 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}} 312 \begin{tabular*}{155mm}[t]{l@{\extracolsep\fill}p{125mm}}
313 Pfad & ../DGMs.csv \\ 313 Pfad & ../DGMs.csv \\
314 Attribut & Projektion, Höhenstatus, Format, Bruchkanten, 314 Attribut & Projektion, Höhenstatus, Format, Bruchkanten,
315 Auflösung, SRID, Pfad\_Bestand, 315 Auflösung, SRID, Pfad\_Bestand,
316 km\_von, km\_bis, Jahr\_von, Jahr\_bis \\ 316 km\_von, km\_bis, Jahr\_von, Jahr\_bis \\
317 \end{tabular*} 317 \end{tabular*}
318 318
319 Aus der Spalte 'Gewässer' in DGMs.csv wird entnommen, 319 Aus der Spalte 'Gewässer' in DGMs.csv wird entnommen,
320 für welches Gewässer das angegebene DGM verwendet wird. 320 für welches Gewässer das angegebene DGM verwendet wird.
321 Die Spalte muss daher den exakt gleichen Namen enthalten 321 Die Spalte muss daher den exakt gleichen Namen enthalten
322 wie in der *.gew-Datei des Gewässers angegeben 322 wie in der *.gew-Datei des Gewässers angegeben
323 (siehe auch Kapitel \ref{start-hydr}). 323 (siehe auch Kapitel \ref{start-hydr}).
324 Die eigentlichen Geo-Daten der DGM werden nicht in die Datenbank importiert. 324 Die eigentlichen Geo-Daten der DGM werden nicht in die Datenbank importiert.
325 Diese werden von der Anwendung Dive4Elements River aus dem Dateisystem geholt. 325 Diese werden von der Anwendung Dive4Elements River aus dem Dateisystem geholt.
326 326
327 \subsection{Konfiguration} 327 \subsection{Konfiguration}
328 \label{Konfiguration} 328 \label{Konfiguration}
329 Der Geodaten Importer kann über das Skript \textit{./run\_geo.sh} 329 Der Geodaten Importer kann über das Skript \textit{./run\_geo.sh}
330 konfiguriert werden. Öffnen Sie die Datei mit einem Texteditor Ihrer Wahl 330 konfiguriert werden. Öffnen Sie die Datei mit einem Texteditor Ihrer Wahl
331 und passen Sie ggf.\ folgende Variablen an: 331 und passen Sie ggf.\ folgende Variablen an:
332 332
333 \textbf{HOST} 333 \textbf{HOST}
334 \\Der Host der Datenbank. 334 \\Der Host der Datenbank.
335 335
339 339
340 \textbf{USER} 340 \textbf{USER}
341 \\Der Nutzer, der zum Verbinden zur Datenbank verwendet wird. 341 \\Der Nutzer, der zum Verbinden zur Datenbank verwendet wird.
342 342
343 \textbf{PASS} 343 \textbf{PASS}
344 \\Das Passwort für USER zum Verbinden zur Datenbank. 344 \\Das Passwort für USER zum Verbinden zur Datenbank.
345 345
346 In den weiteren Zeilen werden weitere Optionen definiert, die bei Bedarf angepasst 346 In den weiteren Zeilen werden weitere Optionen definiert, die bei Bedarf angepasst
347 werden können. Falls nicht anders angegeben, können die Optionen mit den Werten 347 werden können. Falls nicht anders angegeben, können die Optionen mit den Werten
348 `0` und `1` belegt werden. 348 `0` und `1` belegt werden.
349 349
350 \textbf{VERBOSE} 350 \textbf{VERBOSE}
351 \\Dieser Wert gibt die Granularität der Log-Ausgaben während des 351 \\Dieser Wert gibt die Granularität der Log-Ausgaben während des
352 Imports an. Je höher der Wert, desto mehr Informationen werden 352 Imports an. Je höher der Wert, desto mehr Informationen werden
353 in das Logfile geschrieben. Aktuell sind die Werte `0`, `1` und 353 in das Logfile geschrieben. Aktuell sind die Werte `0`, `1` und
354 `2` definiert. Wird der Wert `0` gesetzt, werden nur Fehler und 354 `2` definiert. Wird der Wert `0` gesetzt, werden nur Fehler und
355 Warnungen in das Logfile geschrieben. Bei `1` werden neben 355 Warnungen in das Logfile geschrieben. Bei `1` werden neben
356 Fehlern und Warnungen auch Infos in das Logfile geschrieben. Bei 356 Fehlern und Warnungen auch Infos in das Logfile geschrieben. Bei
357 `2` werden sämtliche Ausgaben des Programms geschrieben. Dieser 357 `2` werden sämtliche Ausgaben des Programms geschrieben. Dieser
358 Modus ist hauptsächlich für die Entwicklung gedacht. 358 Modus ist hauptsächlich für die Entwicklung gedacht.
359 359
360 \textbf{OGR\_CONNECTION} 360 \textbf{OGR\_CONNECTION}
361 \\Hiermit kann direkt ein beliebiger Verbindungs-String angegegeben 361 \\Hiermit kann direkt ein beliebiger Verbindungs-String angegegeben
362 werden, welcher dann anstatt HOST, USER und PASS verwendet wird. 362 werden, welcher dann anstatt HOST, USER und PASS verwendet wird.
363 Diese Option wird direkt an die OGR-Bibliothek weitergegeben und ermöglicht 363 Diese Option wird direkt an die OGR-Bibliothek weitergegeben und ermöglicht
364 verbesserte Tests und Entwicklung mit verschiedenen Backends. 364 verbesserte Tests und Entwicklung mit verschiedenen Backends.
365 365
366 \textbf{SKIP\_AXIS} 366 \textbf{SKIP\_AXIS}
367 \\Bei gesetztem Wert `1` werden keine Flussachsen importiert. 367 \\Bei gesetztem Wert `1` werden keine Flussachsen importiert.
368 368
389 389
390 \textbf{SKIP\_HWS\_POINTS} 390 \textbf{SKIP\_HWS\_POINTS}
391 \\Bei gesetztem Wert `1` werden kein Hochwasserschutzanlagen (Punktdaten) importiert. 391 \\Bei gesetztem Wert `1` werden kein Hochwasserschutzanlagen (Punktdaten) importiert.
392 392
393 \textbf{SKIP\_UESG} 393 \textbf{SKIP\_UESG}
394 \\Bei gesetztem Wert `1` werden keine Überschwemmungsflächen importiert. 394 \\Bei gesetztem Wert `1` werden keine Ãœberschwemmungsflächen importiert.
395 395
396 \textbf{SKIP\_DGM} 396 \textbf{SKIP\_DGM}
397 \\Bei gesetztem Wert `1` werden keine Metadaten zu Digitalen Geländemodellen importiert. 397 \\Bei gesetztem Wert `1` werden keine Metadaten zu Digitalen Geländemodellen importiert.
398 398
399 \textbf{SKIP\_JETTIES} 399 \textbf{SKIP\_JETTIES}
400 \\Bei gesetztem Wert `1` werden keine Buhnen importiert. 400 \\Bei gesetztem Wert `1` werden keine Buhnen importiert.
401 401
402 \textbf{SKIP\_FLOODMARKS} 402 \textbf{SKIP\_FLOODMARKS}
403 \\Bei gesetztem Wert `1` werden keine HW-Marken importiert. 403 \\Bei gesetztem Wert `1` werden keine HW-Marken importiert.
404 404
405 \subsection{Starten des Geodaten Importers} 405 \subsection{Starten des Geodaten Importers}
406 \label{Starten des Geodaten Importers} 406 \label{Starten des Geodaten Importers}
407 Der Geodaten Importer wird mittels des Shellskripts, 407 Der Geodaten Importer wird mittels des Shellskripts,
408 dass auch für die Konfiguration verwendet wird, von einer Konsole 408 dass auch für die Konfiguration verwendet wird, von einer Konsole
409 gestartet. Dazu führen Sie folgenden Befehl aus:\\ 409 gestartet. Dazu führen Sie folgenden Befehl aus:\\
410 410
411 \begin{lstlisting} 411 \begin{lstlisting}
412 sh ./run_geo.sh pfad/zur/beispiel.gew > geo-import.log 412 sh ./run_geo.sh pfad/zur/beispiel.gew > geo-import.log
413 \end{lstlisting} 413 \end{lstlisting}
414 414
415 Bezüglich des übergebenen Pfades siehe auch Kapitel \ref{start-hydr}. 415 Bezüglich des übergebenen Pfades siehe auch Kapitel \ref{start-hydr}.
416 Der Importer wird nun gestartet. Sämtliche Log-Ausgaben werden in die Datei 416 Der Importer wird nun gestartet. Sämtliche Log-Ausgaben werden in die Datei
417 $geo-import.log$ geschrieben. 417 $geo-import.log$ geschrieben.
418 418
419 419

http://dive4elements.wald.intevation.org