|
|
Zeile 1: |
Zeile 1: |
| | | |
| + | Das von kvwmap verwendete PostNAS-Datenmodell wurde mit dem Tool [https://github.com/pkorduan/xmi2db xmi2db] auf Basis des [http://gdi-service.de/xmi2db/xmis/2016-04-01_ImplModell_AAA-xmi12-uml14.xmi AAA-Implementierungsmodells] erzeugt und bildet das ALKIS-Datenmodell vollständig ab. Das Datenbankschema heißt "alkis" und wird bei Aktivierung des Plugins ALKIS durch Ausführung von Migrationsdateien bei der Aktualisierung der Datenbank automatisch angelegt. |
| + | Bei dieser DB-Aktualiserung werden neben dem Basisschema außerdem weitere Tabellen, Sichten und Indizes angelegt, die von kvwmap benötigt werden. |
| | | |
− | == Erstellung eines PostNAS-Schemas ==
| |
− |
| |
− | Das in dieser Anleitung verwendete PostNAS-Basisschema wurde mit dem Tool [https://github.com/pkorduan/xmi2db xmi2db] auf Basis des [http://gdi-service.de/xmi2db/xmis/2016-04-01_ImplModell_AAA-xmi12-uml14.xmi AAA-Implementierungsmodells] erzeugt. Bei Bedarf kann mit xmi2db auch selbst ein Schema erzeugt und verwendet werden.
| |
− | Für die Verwendung mit kvwmap muss das Schema "alkis" heißen.
| |
− |
| |
− | * Das Datenbankschema wird erstellt, indem die nachfolgenden SQL-Dateien ausgeführt werden. Diese sind in der nachstehenden Reihenfolge auszuführen.
| |
− |
| |
− | :*[http://www.kvwmap.de/alkis/complete/1_complete_alkis_schema.sql 1_complete_alkis_schema.sql] das mit xmi2db erstellte Basisschema - Stand: 02.02.2017
| |
− |
| |
− | :*[http://www.kvwmap.de/alkis/complete/2_alkis_indizes.sql 2_alkis_indizes.sql] Indizes für die performante Abfrage der Daten - Stand: 22.03.2017
| |
− |
| |
− | :*[http://www.kvwmap.de/alkis/complete/3_alkis-functions.sql 3_alkis-functions.sql] Funktionen - Stand: 23.01.2017
| |
− |
| |
− | :*[http://www.kvwmap.de/alkis/complete/4_weitere_keytables.sql 4_weitere_keytables.sql] weitere Schlüsseltabellen - Stand: 23.01.2017
| |
− |
| |
− | :*[http://www.kvwmap.de/alkis/complete/5_weitere_tables.sql 5_weitere_tables.sql] weitere Tabellen - Stand: 23.01.2017
| |
− |
| |
− | :*[http://www.kvwmap.de/alkis/complete/6_pp_definition.sql 6_pp_definition.sql] Postprocessing-Tabellen - Stand: 23.01.2017
| |
− |
| |
− | :*[http://www.kvwmap.de/alkis/complete/7_nutzungsart_definition.sql 7_nutzungsart_definition.sql] Postprocessing-Tabellen für die Nutzungen - Stand: 02.10.2015
| |
− |
| |
− | :*[http://www.kvwmap.de/alkis/complete/8_sichten.sql 8_sichten.sql] Sichten (werden nur für die [[Gruppen_und_Themen_für_ALKIS|Layerdefinitionen]] benötigt) - Stand: 03.04.2017
| |
| | | |
| == Einspielen der NAS-Daten == | | == Einspielen der NAS-Daten == |
| | | |
− | === Umbenennungsskript ===
| |
| | | |
− | Damit die NAS-Daten mit OGR korrekt in das vollständige PostNAS-Schema eingelesen werden können, müssen vorher bestimmte Attribute in den NAS-Dateien umbenannt werden. Diese Umbenennung erfolgt mit dem Ruby-Skript [https://raw.githubusercontent.com/pkorduan/xmi2db/master/converter/rename_nas.rb rename_nas.rb] aus dem xmi2db-Projekt. Welche Attribute wie umbenannt werden sollen, wird durch eine Umbenennungsliste definiert. Die zum aktuellen Schema passende Umbennungsliste befindet sich in conf/samples/umbenenn_conf.json. Damit das Umbenennungsskript diese Liste verwenden kann, muss sie einfach einen Ordner höher in conf/ abgelegt werden.
| |
− |
| |
− | === GFS-Template ===
| |
− |
| |
− | Damit OGR die Daten aus den NAS-Dateien mit dem korrekten Datentyp in die Datenbank einliest, wird eine gfs-Datei verwendet, die das komplette ALKIS-Schema abbildet. Diese gfs-Datei wurde auch mit xmi2db auf Basis des AAA-Implementierungsmodells erzeugt.
| |
| | | |
| :[http://www.kvwmap.de/alkis/complete/alkis_template.gfs alkis_template.gfs] GFS-Template - Stand: 02.02.2017 | | :[http://www.kvwmap.de/alkis/complete/alkis_template.gfs alkis_template.gfs] GFS-Template - Stand: 02.02.2017 |
Zeile 49: |
Zeile 23: |
| *Danach wird die umbenannte NAS-Datei wieder gelöscht. | | *Danach wird die umbenannte NAS-Datei wieder gelöscht. |
| | | |
− | === Postprocessing ===
| |
− |
| |
− | Nach dem Einlesen der Daten müssen die folgenden beiden Postprocessing-Skripte ausgeführt werden:
| |
− |
| |
− | :*[http://www.kvwmap.de/alkis/complete/pp_laden.sql pp_laden.sql] Postprocessing - Stand: 26.01.2017
| |
− | :*[http://www.kvwmap.de/alkis/complete/nutzungsart_laden.sql nutzungsart_laden.sql] Postprocessing Nutzungen - Stand: 23.01.2017
| |
− |
| |
− |
| |
− | == Prüfung von NAS-Dateien auf Validität mit xmllint ==
| |
− | Vor dem Einlesen der Daten ist eine Prüfung der NAS-Dateien mit '''xmllint''' auf Validität gegen das Schema NAS 6.0.1 der ADV zu empfehlen.<br>
| |
− | Beispiel:
| |
− |
| |
− | xmllint --nowarning --noout --schema pfad_zum_schema/NAS_6.0.1/schema/NAS-Operationen.xsd pfad_zu_nas/beispiel.xml
| |
− |
| |
− | Das Tool '''xmllint''' wird über das Paket libxml2-utils unter linux zur Verfügung gestellt. Es ist eine aktuelle Version ab 2.9 erforderlich.<br>
| |
− | Das Ergebnis der Prüfung wird mit "validates" oder eine detailierte Fehlermeldung und "fails to validate" ausgegeben.<br>
| |
− | Das notwendige Schema kann auf den Seiten der ADV als ZIP heruntergeladen und dann lokal entpackt installiert werden.<br>
| |
− | Link zum Schema: [http://www.adv-online.de/icc/extdeu/med/704/70425220-0746-2210-3ca0-c0608a438ad1,11111111-1111-1111-1111-111111111111 NAS 6.0.1]
| |
− |
| |
− | Wichtig: Es sollten nur valide Daten eingespielt werden!
| |
| | | |
| | | |
− | == Zugriff mit kvwmap ==
| |
| | | |
− | === Layerdefinitionen ===
| |
| | | |
− | [[Gruppen_und_Themen_für_ALKIS|Hier findet man die Gruppen und Themen für ALKIS]]
| |
| | | |
| == Mapdatei == | | == Mapdatei == |
Version vom 30. August 2017, 10:48 Uhr
Das von kvwmap verwendete PostNAS-Datenmodell wurde mit dem Tool xmi2db auf Basis des AAA-Implementierungsmodells erzeugt und bildet das ALKIS-Datenmodell vollständig ab. Das Datenbankschema heißt "alkis" und wird bei Aktivierung des Plugins ALKIS durch Ausführung von Migrationsdateien bei der Aktualisierung der Datenbank automatisch angelegt.
Bei dieser DB-Aktualiserung werden neben dem Basisschema außerdem weitere Tabellen, Sichten und Indizes angelegt, die von kvwmap benötigt werden.
Einspielen der NAS-Daten
- alkis_template.gfs GFS-Template - Stand: 02.02.2017
Wenn diese GFS-Datei nicht verwendet wird, ermittelt OGR den Datentyp automatisch an Hand der NAS-Daten. Dabei kann es vorkommen, dass z.B. führende Nullen abgeschnitten werden o.ä.
Einleseskript
Hat man das Umbenennungsskript, die Umbenennungsliste und das GFS-Template auf seinem Server abgelegt, kann der Einlesevorgang beginnen. Folgendes einfaches Einleseskript kann dafür verwendet werden.
- import_nas.sh Einleseskript - Stand: 02.02.2017
- Das Einleseskript durchläuft alle NAS-Dateien im angegebenen Ordner und benennt sie mit Hilfe des Umbenennungsskripts um. Die umbenannte Version der NAS-Datei wird als ..._renamed.xml neben der originalen NAS-Datei abgelegt.
- Dann wird eine Kopie des GFS-Templates dort abgelegt. Sie heißt genauso, wie die umbenannte NAS-Datei (..._renamed.gfs).
- Anschliessend wird ogr2ogr aufgerufen, um die umbenannte NAS-Datei einzulesen.
- Danach wird die umbenannte NAS-Datei wieder gelöscht.
Mapdatei
-
Testdaten
Zum Testen eigenen sich NAS-Daten aus der DHK, die aus einem NBA-Verfahren stammen. Wer noch keine eigenen NBA-Daten hat, kann zunächst mit Testdaten arbeiten. Erfolgreich getestet wurden Daten aus MV vom LAiV und Daten aus Brandenburg, die auch in EPSG 25833 liegen.
Testdaten:
- ALKIS®-Beispieldaten Brandenburg: [1]
- ALKIS®-Beispieldaten Mecklenburg-Vorpommern vom LAiV: [2]
- Hier findet man Beispieldaten zum Testen (kostenlos).