OpenStreetMap
Die verwendeten XML-Datensätze stammen von OpenStreetMap und wurden mit der Overpass API exportiert.
Es gibt drei Demodatensätze:
- Berlin_Ausschnitt.xml
- Muenchen_Ausschnitt.xml
- Stutgart_Mitte.xml
Die XML-Datensätze sind für alle drei Städte gleich aufgebaut. Diese enthalten Information zu den Städten wie Straßennamen, erlaubte Geschwindigkeit, Geschäfte, Öffnungszeiten und weitere Informationen, die über OpenStreetMap zugänglich sind. Diese XML-Dateien werden für Übung 8 (Gelbe Seiten) benötigt.
Der Aufbau der Dateien ist im folgenden Code-Beispiel dargestellt.
Anmerkung der data2type-Redaktion:
Da die genannten Demodatensätze den Rahmen sprengen würden, folgt hier nur ein beispielhafter Auszug aus einer der drei Demo-Dateien.
Code-Beispiel: Stuttgart_Mitte.xml (Auszug).
<?xml version="1.0" encoding="UTF-8"?>
<osm version="0.6" generator="Overpass API">
...
<bounds minlat="48.7691" minlon="9.173" maxlat="48.7856" maxlon="9.1872"/>
...
<node id="2294018427" lat="48.7832579" lon="9.1822727" version="2" timestamp="2015-05-01T10:12:31Z" changeset="30685626" uid="287306" user="Matthias Frank">
<tag k="historic" v="memorial"/>
<tag k="note" v="Gedenktafel zur Errichtung des Stuttgarter Hauptbahnhofs"/>
<tag k="source" v="extrapolation"/>
</node>
<node id="2294018428" lat="48.7830822" lon="9.1823510" version="3" timestamp="2015-05-01T09:58:26Z" changeset="30685626" uid="287306" user="Matthias Frank">
<tag k="level" v="0"/>
<tag k="name" v="Reisebüro im Bahnhof"/>
<tag k="opening_hours" v="Mo-Fr 09:00-19:00; Sa 09:00-14:00; Su, PH off"/>
<tag k="shop" v="travel_agency"/>
<tag k="wheelchair" v="yes"/>
</node>
...
<way id="91264210" version="2" timestamp="2015-02-08T06:04:56Z" changeset="28696094" uid="12982" user="miscosm">
<nd ref="1059527186"/>
<nd ref="1059525141"/>
<nd ref="3337321162"/>
<nd ref="1059525545"/>
<nd ref="1059526563"/>
<nd ref="1059527186"/>
<tag k="addr:city" v="Stuttgart"/>
<tag k="addr:country" v="DE"/>
<tag k="addr:housenumber" v="18"/>
<tag k="addr:postcode" v="70173"/>
<tag k="addr:street" v="Hirschstraße"/>
<tag k="building" v="yes"/>
</way>
...
<relation id="2724366" version="4" timestamp="2015-01-24T15:02:12Z" changeset="28374636" uid="109062" user="Jojo4u">
<member type="way" ref="273859591" role="to"/>
<member type="way" ref="45122771" role="via"/>
<member type="way" ref="203016572" role="from"/>
<tag k="restriction" v="only_left_turn"/>
<tag k="type" v="restriction"/>
</relation>
...
</osm>
Aufbau der XML-Dateien von OpenStreetMap.
Zeile 2: OpenStreetMap-Element.
Zeile 4: Das <bounds>-Element beschreibt die Boundingbox mit der der zu exportierende Bereich gewählt wurde.
Zeile 6: Die <node>-Elemente besitzen eine ID und Informationen zur geografischen Position, der Version, zum Autor, zum Zeitstempel etc.
Zeile 7: Die Kindelemente <tag> stellen über Key-Value-Paare weitere Informationen, wie Art des Gebäudes, Öffnungszeiten etc., zu dem Knoten bereit.
Zeile 19: Die <way>-Elemente beinhalten Straßeninformationen wie Postleitzahl, Hausnummer etc. und Referenzen zu <node>-Elementen, die zu dem jeweiligen Element gehören.
Zeile 34: Die <relation>-Elemente beschreiben Verbindungen zwischen Knoten. Beispielsweise wie hier <way>-Elemente, die nur linksabbiegen erlauben oder als weiteres Beispiel <node>-Elemente, die Stationen auf einer Bahnverbindung darstellen etc.
Wichtig für die OpenstreetMap-Dateien ist vor allem, dass die Werte über Key-Values angesprochen werden können, wie im Beispiel: <tag k="shop" v="travel_agency"/>.
<< zurück | vor >> |
Tipp der data2type-Redaktion: Zum Thema XSLT bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an: |