[opengeodb] README - Teil 1+2 (von min. 6)
Martin Trautmann
traut at gmx.de
Sam Mar 22 10:01:48 CET 2008
Hallo,
ein freundlicher Helfer auf der Liste hat mir einen umfangreichen und
sehr guten Entwurf eines READMEs zugeschickt.
Vermutlich wird er selbst dazu noch Stellung nehmen.
Ich habe diesen Entwurf nun um einen Teil 2 ergänzt, den ich für
elementar halte. Dazu habe ich begonnen, die einzelnen Datentypen
genauer zu erläutern.
Jetzt gewinne ich den Eindruck, diese README wird mehr und mehr zu einem
Handbuch - und da halte ich für besser, diese Erklärungen in das wiki
auszulagern. Einerseits ist es dort besser strukturierbar, andererseits
kann dort von jemden korrigiert und ergänzt werden.
Was würdet ihr empfehlen?
+++
README-Datei für Opengeodb
Diese Datei erläutert, welche Dateien im Verzeichnis
http://fa-technik.adfc.de/code/opengeodb/
vorhanden sind und gibt einen kurzen Überblick über die Verwendung.
Gliederung:
1. Verzeichnis-Übersicht
2. Dateninhalt
2. Kurzbeschreibung zur Erstellung der Datenbank
3. Erläuterungen zum Datenbank-Schema
4. weiterführende Beispiele
5. Verwendung der Opengeodb für eine Umkreissuche
################################
### 1. Verzeichnis-Übersicht ###
################################
Die Dateien in diesem Verzeichnis enthalten die Basis-Daten der OpenGeoDB.
Diese liegen in zwei verschiedenen Formaten vor:
- als Textdateien
Diese enthalten die reinen Informationen, eine Zeile pro Datensatz.
Die einzelnen Felder sind durch Tabulatoren getrennt, die Feldnamen
stehen in der ersten Zeile. Aktuell werden die Daten in diesen Dateien
gepflegt.
Es sind folgende Dateien vorhanden:
AT.tab Daten für Österreich
BE.tab Daten für Belgien
CH.tab Daten für die Schweiz
DE.tab Daten für Deutschland
LI.tab Daten für Liechtenstein
PLZ.tab Diese Datei enhält eine Liste der Postleitzahlen
mit den dazugehörigen Geokoordinaten und Ortsnamen
DE9.tab Experimentelle Straßendaten abgeleitet aus der
OpenStreetMap. Diese Daten stehen unter der
CC-BY-SA-Lizenz
- als SQL-Dump
alle Dateien haben die Endung .sql und sind für MySQL erstellt. Falls
eine andere SQL-basierte Datenbank zum Einsatz kommen soll, dürfte sich
der Portierungs-Aufwand in Grenzen halten.
Diese Daten entstehen durch Konvertierung der Dateien von .tab nach .sql
################################
### 2. Dateninhalt ###
################################
Seit der ersten Einrichtung der OpenGeoDB ist die Datenbank in
verschiedene Richtungen gewachsen. Der Umfang der Daten, wie auch
Genauigkeit und Qualität allgemein werden fotlaufend verbessert. Es
können jederzeit neue Länder hinzugefügt werden. Auch die angebotenen
Daten wurden immer wieder ergänzt.
Derzeit enthalten die .tab-Dateien eine Auswahl sogenannter Basisdaten,
die ergänzt werden durch Extradaten, die nur im Einzelfall verfügbar
sind. Zu diesen Extradaten gehören beispielsweise Sprachversionen oder
versionierte Daten mit eingeschränkter Gültigkeit.
Für SQL werden die einzelnen Datentypen durch Kenn-Nummern markiert
(data_types)
Folgende Daten werden insgesamt unterstützt:
.tab .sql Beschreibung
########## Basisdaten ######################################################
locid loc-id Location ID (Primärschlüssel)
ags 500600000 Amtlicher Gemeindeschlüssel
ascii 500100002 Sortiername
name 500100000 Name
200100000 WGS84 Koordinaten
lat 200200000 Breitengrad (latitude)
lon 200300000 Längengrad (longitude)
amt 500700000 Verwaltungszusammenschluss
500700001 Sortiername eines Verwaltungszusammenschlusses
plz 500300000 Postleitzahl
vorwahl 500400000 Telefonvorwahl
einwohner 600700000 Einwohnerzahl
650700001 Ungefähre Einwohnerzahl
650700002 Genaue Einwohnerzahl
flaeche 610000000 Fläche
kz 500500000 KFZ-Kennzeichen
typ 400300000 Typ
level 400200000 Ebene
of 400100000 Teil von
invalid Markierung als ungültig
########## Hierarchie-Typen ################################################
100100000 Erdteil
100200000 Staat/Land
100300000 Bundesland
100400000 Regierungsbezirk
100500000 Landkreis
100600000 Politische Gliederung
100700000 Ortschaft
100800000 Postleitzahlgebiet
100900000 Ortsteil
########## Datums-Typen ####################################################
300100000 Auf einen Tag genaues Datum
300200000 Auf ein Monat genaues Datum
300300000 Auf ein Jahr genaues Datum
300400000 Auf 10 Jahre genaues Datum
300500000 Unbekanntes Datum in der Zukunft
########## Höhenangaben ####################################################
600800000 Höhenangabe in Metern
650800001 Maximale Höhe
650800002 Minimale Höhe
650800003 Durchschnittliche Höhe
650800004 Höhe am Referenzpunkt mit der angegebenen loc_id
650800005 'Höhe an der angegebenen Koordinate'
########## sonstiges #######################################################
500100001 ISO 3166 Alpha-2
500100003 ISO_3166_2
500100004 Region eines Postleitzahlgebietes
500800000 Quelle
500900000 Kommentar
Weitere Erklärungen zu einzelnen Datentypen:
* 100*00000 Hierarchie-Ebenen
Alle opengeodb-Einträge können durch die Zuordnung über den Typ
400100000 Teil von in Hierarchien zugeordnet werden.
Durch die Ergänzung mit 400200000 Ebene lässt sich sicherstellen, dass
benachbarte Zweige gleich strukturiert bleiben. So gibt es neben
Kontinent (Ebene 1) und Staat (2) in Deutschland die Ebenen Bundesland
(3), Regierungzbezirk (4), Kreis (5), Gemeinde (6) usw. Nicht in jedem
Bundesland ist jede dieser Ebenen vorhanden. In den Hierarchien werden
solche Ebenen daher übersprungen.
Die SQL-Hierarchien geodb_hierarchies sind redundant, können die
Datenbankabfragen aber erheblich beschleunigen. Da bisher keine
SQL-Routine existiert, die diese rekursive Berechnung erledigt, werden
sie ebenfalls aus den Basisdaten abgeleitet und als dump bereitgestellt
(XXhier.sql)
* 100100000 Erdteil
Aktiv gefüllt wird bisher nur der Kontinent Europa
* 100200000 Staat
Verfügbar sind bisher die Länder Deutschland (DE), Österreich (AT),
Schweiz (CH) usw.
* 100300000 Bundesland
Deutschland hat 16 Bundesländer. Österreich hat 9 Bundesländer. Dem
entsprechen die 26 Schweizer Kantone.
* 100400000 Regierungsbezirk
Regierungsbezirke gibt es in den deutschen Bundesländern
Nordrhein-Westfalen, Baden-Württemberg und Bayern. In anderen
Bundesländern wie Niedersachsen (2004) und Sachsen-Anhalt (2007) wurden
diese aufgelöst. In Stadtstaaten wie Hamburg gab es diese nie.
* 100500000 Kreis
In Deutschland gibt es sowohl Landkreise als auch kreisfreie Städte. In
Österreich und der Schweiz werden auf dieser Ebene die Bezirke geführt.
* 100600000 Gemeinde
Die deutsche Hierarchisierung strukturiert jede politische Gliederung
bis zur Gemeinde-Ebene. Es gibt daher einen Stadtstaat wie Hamburg
sowohl als Bundesland Hamburg, als kreisfreie Stadt Hamburg (Kennzeichen
HH) und auch als Gemeinde. Notfalls werden hier Dummy-Einträge
eingeführt, die den Kreis als Gemeindestruktur wiederholen.
Auch in Österreich und der Schweiz gibt es Gemeinde-Strukturen.
* 100700000 Ortschaft
Während viele Gemeinden praktisch nicht von einem Ort unterschieden
werden können, gibt es künstliche Gemeindestrukturen, die den
Zusammenschluss mehrerer Orte bilden. Während hier auf Gemeindeebene die
Koordinaten der Gemeindefläche oder teils auch die Koordinaten der
Gemeinde-Verwwaltung genutzt werden können. bietet die Ortschaft die
Koordinaten der entsprechenden, meist geschlossenen Ortsfläche.
* 100800000 Postleitzahlgebiet
Achtung: ein Postleitzahlgebiet ist nur im Ausnahmefall eine Teilmenge
eines Ortes. Postleitzahlen folgen den unternehmerischen Interessen der
Post und sind oftmals völlig losgelöst von der politischen Struktuierung
der opengeodb.
Großsstädte können viele verschiedene Postleitzahlen umfassen. Kleinere
Ortschaften und Gemeinden können sich die gleiche Postleitzahl teilen.
opengeodb wurde daher um PLZ-Gebiete erweitert, die für jede einzelne
PLZ eine repräsentative Koordinate, wie auch einen repräsentativen
Ortsnamen angeben.
* 100900000 Ortsteil
Ortsteile sind Unterstrukturen von Ortschaften und Gemeinden. Die genaue
Zuordnung folgt hier keinen regelmäßigen und bundesweit einheitlichen
Strukturen. Die Unterscheidung von Ort und Ortsteil, von Stadtviertel,
Stadtbezirk, Stadtquartier, Stadtteil, von Einzelwohnplatz, Siedlung,
Weiler usw. ist hier nach geeigneten Kriterien vor Ort festzulegen.
Es können hier also auf gleicher Ebene kleinere Strukturen als Teil von
übergeordneten Strukturen aufgenommen werden. Nach unten werden diese
Strukturen ergänzt durch Straßen und Einzelkoordinaten wie Hausnummern.
Tipp: Ortsteile sind noch flächig, Straßen eher linienförmig,
Einzelkoordianten punktförmig.
[...]
* 500600000 Amtlicher Gemeindeschlüssel
Der Amtliche Gemeindeschlüssel wird in Deutschland vom Statistischen
Landesamt vergeben. Er wird für verschiedene Verwaltungsaufgaben
verwendet. [...]
########################################################
### 3. Kurzbeschreibung zur Erstellung der Datenbank ###
########################################################