Abfragen an den Endpunkt der Overpass-API - Verarbeitung mit XPath

Hallo communtiy,

mit diesem Code hole ich vom Endpunkt der OSM Overpass API Daten.

**Hier die Resultate: **

Soweit so gut!! Wenn ich aber den Teil zwei des Codes verändern will um die Suche etwas präziser zu machen - mehr Daten zu gewinnen,
Dann komme ich in** Probleme. Die errors.**… -siehe unten:

Hintergrund: Will mehr aus dem Datenset bekommen mehr Informationen; vorher hat das so ausgesehen:

diese beiden Zeilen habe ich nun ergänzt:

es sieht in der Foreach-Loop nun so aus:

All das hab ich hier eingesetzt in den Teil 2 des Codes - der mit den XML-Resultaten arbeitet.

Die Ausgangsfrage war: wie kann ich mehr Daten gewinnen - wenigstens aber:

  • die Ardesse
  • die Webseite

Es ist also die Frage, wie ich mehr Daten in die xpath Abfrage einmünden lassen kann.
Habe mich zur Information hier umgesehen Key:contact - OpenStreetMap Wiki

Ziel ist es, die xpath Abfragen in der Foreach-Loop zu erweitern, relativ zu den Schools-Nodes

Aber es geht so nicht wie oben beschrieben - es kommt zu Fehlern.

Was mache ich falsch!? Freue mich auf einen Tipp.

TagTheWorld

Wenn Du uns mitteiltest, welches die Zeilen 42 und 43 sind, wäre das Tipp geben einfacher.

Erweitere deine PostgreSQL-Datenbank mit PostGIS.

Ein Zugriff auf deine MySQL-DB von PostgreSQL/PostGIS aus ist - mit dem notwendigen Wissen - jederzeit machbar.

Gruss
walter

hallo und guten Morgen glglgl, hallo Walter,

vorweg - vielen Dank für Eure schnellen Antworten.

die beiden Zeilen sind hier drinne…

zeile 42 und 43 sind die beiden Folgenden:

…ohne diese Zeilen geht alles problemlos - Ich dachte eben dass ich die weiteren Abfragen so einfügen kann!?

Irgendetwas mache ich hier falsch!

Freue mich auf einen Tipp
TagTheWorld aka Martin

**ps: ** zum Thema PostgreSQL/ PostGIS etc.

@Walter:

Werde mir PostGIS ansehen - im Moment hab ich den Eindruck, dass ich das noch nicht brauche. Sehe mir die Dokumente nochmals an. Du, Walter, bist
ja ein wahrer PostGIS-Fan - gibt es denn einen direkten Import des Planetfiles in PostGIS? Du siehst ich sollte mich noch stärker mit dem Thema auseinandersetzten.

Was mir im Moment noch etwas näher liegt, ist die Verwendung von Python Wrapper:

a. Osmapi
https://wiki.openstreetmap.org/wiki/Osmapi

b:** overpass-api-python-wrapper - thin Python wrapper around the OpenStreetMap Overpass API.**
GitHub - mvexel/overpass-api-python-wrapper: A thin Python wrapper …
https://github.com/mvexel/overpass-api-python-wrapper

Hierzu werden von mir nächstens noch ein Paar Fragen hier auf dem Forum kommen. Aber dazu werde ich einen anderen Thread aufmachen. VG.

Vermutlich geschieht das beim Auspacken des Ergebnisses.

Hintergrund: Mit

list($a, $b, $c…) = $array

packst du den Inhalt von $array in die angegebene Variablen aus, d. h. dies ist eine Kurzform für

$a = $array[0]; $b = $array[1]; $c = $array[2]; …

In deinem Fall hast du aber offenbar teilweise gar keine Tags mit contact:website oder contact:email.

Von daher wäre es geschickter,

  1. erstmal andere Variablen als $name zu verwenden (sonst überschreibst du ja das zuvor ausgelesene)
  2. den Trick von zuvor anzuwenden und dem potentiell leeren Array einen Default-Eintrag anzuhängen, der dann verwendet wird, wenn die Query kein Ergebnis lieferte.

Also


# Get the name of the school (if any), again with xpath
list($name) = $school->xpath('tag[@k = "name"]/@v') + ['(unnamed)'];
list($website) = $school->xpath('tag[@k = "contact:website"]/@v') + ['(no website)'];
list($email) = $school->xpath('tag[@k = "contact:email"]/@v') + ['(no email)'];
printf("#%02d: ID:%' -10s  [%s,%s]  %s %s %s\n", $index, $school['id'], $school['lat'], $school['lon'], $name, $website, $email);

hallo glglgl

vielen Dank - jetzt funktioniert es.

Habe verstanden dass es zu Komplikationen führt wenn ich $name verwende. Es kommt zu Schwierigkeiten - da sich hier ggf. das zuvor Ausgelesene überschrieben wird.

Danke für die Hinweise.

Viele Grüße

say

hier die Ausgabe:


martin@linux-3645:~/dev/php> php o3.php
Query returned 2799 node(s) and took 9.36001 seconds.

33 School(s) found:
#00: ID:332534486   [39.5018840,16.2722854]  Scuola Elementare (no website) (no email)
#01: ID:1428094278  [39.3320912,16.1862820]  (unnamed) (no website) (no email)
#02: ID:1822746784  [38.9075566,16.5776597]  (unnamed) (no website) (no email)
#03: ID:1822755951  [38.9120272,16.5713431]  (unnamed) (no website) (no email)
#04: ID:2002566438  [39.1349460,16.0736446]  (unnamed) (no website) (no email)
#05: ID:2056891127  [39.4106679,16.8254844]  (unnamed) (no website) (no email)
#06: ID:2056892999  [39.4124687,16.8286119]  (unnamed) (no website) (no email)
#07: ID:2272010226  [39.4481717,16.2894353]  Scuola dell'infanzia San Francesco (no website) (no email)
#08: ID:2272017152  [39.4502366,16.2807664]  Scuola Media (no website) (no email)
#09: ID:2358307794  [39.5015031,16.3905965]  I.I.S.S. Liceo Statale V. Iulia (no website) (no email)
#10: ID:2358307796  [39.4926280,16.3853662]  Liceo Classico (no website) (no email)
#11: ID:2358307797  [39.4973761,16.3858275]  Scuola Media (no website) (no email)
#12: ID:2358307800  [39.5015527,16.3941156]  I.T.C. e per Geometri (no website) (no email)
#13: ID:2358307801  [39.4983862,16.3807796]  Istituto Professionale (no website) (no email)
#14: ID:2448031004  [38.6438417,16.3873106]  (unnamed) (no website) (no email)
#15: ID:2458139204  [39.0803263,17.1291649]  Sacro Cuore (no website) (no email)
#16: ID:2552412313  [39.0765212,17.1224610]  (unnamed) (no website) (no email)
#17: ID:2582443083  [39.0815417,17.1178983]  Liceo Socio Biologico Gravina (no website) (no email)
#18: ID:2585754364  [38.8878393,16.4076323]  Scuola Elementare (no website) (no email)
#19: ID:2585754366  [38.8877600,16.4076216]  Scuola Media (no website) (no email)
#20: ID:3071126720  [38.6022703,16.5554408]  Scuola Media (no website) (no email)
#21: ID:3071127683  [38.6027273,16.5563125]  Scuola Elementare (no website) (no email)
#22: ID:3081362915  [39.2865638,16.2601963]  Convitto Nazionale Bernardino Telesio (no website) (no email)
#23: ID:3081362921  [39.2856714,16.2613594]  Liceo Classico B. Telesio (no website) (no email)
#24: ID:3081362926  [39.2888949,16.2577446]  Scuola (no website) (no email)
#25: ID:3732551794  [39.5132435,16.2863285]  (unnamed) (no website) (no email)
#26: ID:3740289655  [39.5167318,16.2838146]  scuola media (no website) (no email)
#27: ID:3740289656  [39.5164344,16.2821103]  scuola elementare (no website) (no email)
#28: ID:4004532684  [38.7804787,16.5122952]  Liceo Artistico (no website) (no email)
#29: ID:4589289756  [38.6794209,16.1063084]  Scuola Comprensiva Trentacapilli (no website) (no email)
#30: ID:4843966477  [39.0709866,17.1288384]  Pegaso (no website) (no email)
#31: ID:5297629775  [38.5768845,16.3263536]  Scuola Media Statale "Ignazio La Russa" (no website) (no email)
#32: ID:5316865306  [39.0807997,17.1264225]  Enrico Fermi (no website) (no email)
Query returned 3 node(s) and took 9.83496 seconds.

martin@linux-3645:~/dev/php> 
                                                                                   

Prima! Jetzt wäre es noch hilfreich, zu wissen, ob Webseiten- und Emailadressenermittlung so korrekt ist. Denn soweit ich sehe, sind alle abgefragten Werte ohne eine der beiden Angaben.

Am besten suchst du dir mal welche raus, von denen du weißt, dass sie welche haben und verifizierst das.

hallo glglgl

vielen Dank für dein erneutes Posten und diesen wichtigen Hinweis.

Denke dass du Recht hast - da stimmt etwa noch nicht - ich suche mal in einem Bereich bei dem tatsächlich die DATEN vorhanden sind -dann kann man sehen, ob es mit dem oben genannten Ansatz geht oder noch nicht.

ja - das mache ich. Werde hier wieder reingucken u. Euch auf dem Laufenden halten.

Viele Grüße

TagTheWorld

@ Walter: mit meinen noch eher bescheiedenen PostgreSQL Kompetenzen würde ich obige Abfragen einfach in eine MySQL DB reinlaufen lassen.
ABER sicher - man kann hier auch PostgreSQL verwenden. … :wink: Ich guck mir das mal an.

Mir liefert die Overpass-API im genannten Bereich auch nur Schulen ohne website&email. Beachte bitte auch die unterschiedlichen Tagging-Schemata für websites (contact:website=* und website=*). Und dein Regex-Filter auf “beliebige Values im Key amenity” ist auch unnötig, denn

[amenity]~".*"

ist das gleiche wie

[amenity]

, wenn ich mich nicht täusche, nur schneller und netter für den Server weil kein Suchen mehr auf dem Server gemacht wird.

Es macht hier keinen Unterschied, ~"." * wird automatisch wegoptimiert, da wird kein regulärer Ausdruck mehr auf derm Server ausgewertet.

Es geht hier nicht um PostgreSQL - das brauchs du nur, damit man PostGIS installieren kann und zudem der Zugriff auf MySQL möglich ist.

Allerdings müssen die Koordinaten der Objekte in einem GIS-Format als Geometrie vorliegen. Felder mit lat und lon als ASCII-Text bringen da nicht viel.

Gruss
walter

Hallo Walter, hallo Gormo,

danke fürs Antworten!! :wink:

@ Gormo: Vielen Dank für deine Antwort u. die Hinweise. Ich werde heute Abend mal weitersuchen u. versuchen herauszufinden, ob ich nicht andere Daten finde, die hier weiteren Aufschluss geben. Bin sicher dass wir hier weiter kommen.

Danke ich werde hier nochmals genauer nachsehen und die Unterschiede nächstens genauer berücksichtigen.

diese beiden Schemata liefern Unterschiedliches:

contact:website=* 
website=* 

Darüber hinaus sagst du… [quote]dein Regex-Filter auf “beliebige Values im Key amenity” ist auch unnötig, [/quote]

Danke!!!

@Walter: - zum Thema PostGIS und sein Einsatz:

{[sind hier schon in einem Methode (bzw. System-) Thread - vom Nutzen u. Nachteil von PostGIS für das ordinäre OSM-Leben.:wink:
klar du hast Recht. Aber soweit ich die Stärke von PostGIS verstanden habe geht es dort auch um die Vorteile die vektorbasierte (GIS-) Standards ermöglichen.

Um also ganz kurz hier in diesem Thread auf das Thema einzugehen -(und damit vllt. auch in der Chance da du PostGIS so gut kennst - )abzuklären ob ich das brauche - und damit beginnen soll hier ein paar Erwägungen / Fragen.

@the Mods: sorry für das OT hier :wink: Kann nächstens gerne einen eigenen Thread aufmachen. :wink:

[quote=wambacher][quote=tagtheworld]

@ Walter: mit meinen noch eher bescheiedenen PostgreSQL Kompetenzen würde ich obige Abfragen einfach in eine MySQL DB reinlaufen lassen.
ABER sicher - man kann hier auch PostgreSQL verwenden. … :wink: Ich guck mir das mal an.[/quote]
Es geht hier nicht um PostgreSQL - das brauchs du nur, damit man PostGIS installieren kann und zudem der Zugriff auf MySQL möglich ist.
Allerdings müssen die Koordinaten der Objekte in einem GIS-Format als Geometrie vorliegen. Felder mit lat und lon als ASCII-Text bringen da nicht viel.
Gruss walter[/quote]

bislang habe ich lediglich mit verschiedenen Abfragen an der Overpass API gearbeitet:

in den Verschiedenen Dateiformaten ( XML, JSON und CSV).
Habe mir das PostGIS mal angesehen - sieht sehr gut aus. Das sieht sehr sehr advanced aus - ich werde mir das mal genauer ansehen…Denke dass diese wohl sehr leistungsfähig ist.

was ich bis dato alles eingesetzt habe:

  • Osmfilter und Osmconvert.

OSM und Scripten:

Und für das weiterverarbeiten in Skripten finde ich Python sehr interessant:

Perl:

  • das Datenabfrage-Utility "opaQuery.pl von user KLAUS TOCKLOTH: http://www.freizeitkarte-osm.de/ perl scrip hab auch schon mit KLAUS TOCKLOTHs opaQuery einiges gemacht; das Datenabfrage-Utility “opaQuery.pl” Das Utility nutzt für OSM-Datenabfragen das Overpass-API unter Verwendung der Abfragesprache “Overpass-QL”. Das Utility wird von der Kommandozeile aus benutzt und ist unter Linux, ( vgl. https://forum.openstreetmap.org/viewtopic.php?id=16937 )

Nutzung:perl opaQuery.pl “Overpass-QL-String”

Beispiel: perl opaQuery.pl “node [‘name’=‘Gielgen’] (50.7,7.1,50.8,7.2); out meta;”
Weitere Details zum Utility finden sich hier: http://www.easyclasspage.de/maptools/index.html

PHP:

  • OSM Overpass API mit PHP SimpleXML: an Overpass Daten kommen mit Standard PHP.

last but not least: Wget und Curl:

  • Wget; http://overpass-api.de/command_line.html

  • Curl - hier ein Beispiel: [quote]Curl: curl ‘http://nominatim.openstreetmap.org/search?X-Requested-With=overpass-turbo&format=json&q=Ridgefield+Connecticut’ -H ‘Origin: http://overpass-turbo.eu’ -H ‘Accept-Encoding: gzip,deflate,sdch’ -H ‘Accept-Language: en-US,en;q=0.8’ -H ‘User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.111 Safari/537.36’ -H ‘Accept: /’ -H ‘Connection: keep-alive’ --compressed
    [{“place_id”:“2578289456”,“licence”:“Data \u00a9 OpenStreetMap contributors, ODbL 1.0. http://www.openstreetmap.org/copyright”,“osm_type”:“way”,“osm_id”:“305805056”,“boundingbox”:[“41.2371844”,“41.3774174”,“-73.5509631”,“-73.438191”],“lat”:“41.2814842”,“lon”:“-73.4981792”,“display_name”:“Ridgefield, Fairfield County, Connecticut, United States of America”,“class”:“boundary”,“type”:“administrative”,“importance”:0.62842337196131,“icon”:“http://nominatim.openstreetmap.org/images/mapicons/poi_boundary_administrative.p.20.png”},{“place_id”:“57921086”,“licence”:“Data \u00a9 OpenStreetMap contributors, ODbL 1.0. http://www.openstreetmap.org/copyright”,“osm_type”:“way”,“osm_id”:“21923588”,“boundingbox”:[“42.2668794”,“42.2694486”,“-88.3335358”,“-88.3264975”],“lat”:“42.2694329”,“lon”:“-88.3290606”,“display_name”:“Connecticut Trail, Holcombville Corners, McHenry County, Illinois, 60012, United States of America”,“class”:“highway”,“type”:“residential”,“importance”:0.2}]
    [/quote]

Fazit: werde mir PostGIS jetzt mal näher ansehen… : in einem Einsteigertutorial zu PostGIS liest man folgendes: http://www.bostongis.com/?content_name=postgis_tut01

[quote]The most common queries we will be doing on this query are spatial queries and queries by the town field. So we will create 2 indexes on these fields. NOTE: The loader has an option to create the spatial index which we took advantage of, so the spatial index one is not necessary but we present it here, just so if you ever need to create a spatial index, like for csv loaded data, you know how to.

CREATE INDEX idx_towns_geom
ON towns
USING gist(geom);

CREATE INDEX idx_towns_town
ON towns
USING btree(town);

Querying Data

Go back into PgAdmin III and refresh your view. Verify that you have a towns database now.
Test out the following queries from the query tool

SELECT ST_Extent(geom) FROM towns WHERE town = ‘BOSTON’;

SELECT ST_Area(ST_Union(geom)) FROM towns WHERE town = ‘BOSTON’;

Viewing the Data

If you are a GIS newbie, I highly recommend using QGIS. QGIS has ability to view PostGIS data both geometry and raster directly, do simple filters on it, is free, is cross-platform (Linux, Windows, MacOSX,Unix) and is the least threatening of all the GIS Viewers I have seen out there for people new to GIS.[/quote]

Also - mein Schwerpunkt der Beschäftigung mit OpenStreetMap liegt in solchen oben (im Threadstart) genannten schlichten Abfragen.
Ich bin kaum an den Map (grafiken) interessiert vielmehr an POI Geschichten.

Bin also nicht sicher ob ich dann in die PostGIS-Geschiche einsteigen soll(te).

Fragen:

  • Käme denn auch bei meinen - sagen wir mal eher Oberflächen-Interessen-geleiteten-Ansatzes - der sich für Abfragen rund um POI-Thematiken interessiert auch die Vorteile einer PostGIS zum Tragen?

  • Würde sich PostGIS auch hier anbieten?

  • Last but not Least: Ich arbeite ausschließlich mit lat und lon als ASCII-Text (siehe obige Abfragen die mein Schwerpunkt bilden.

hingegen kann PostGIS viel viel mehr und anderes: vgl https://de.wikipedia.org/wiki/PostGIS

[quote]Von PostGIS unterstützte Funktionen und Operatoren:

Räumliche Funktionen wie Berechnung von Flächen und Distanzen, Verschneidung, Berechnung von Pufferzonen etc.
Räumliche Operatoren wie Overlaps, Within, Contains etc.
Funktionen für die Erstellung von Geometrien
Analyse von Raster- und Vektordaten
Funktionen für die Abfrage von Geometrien in den Formaten Well-Known Text, Well-Known Binary, GML, SVG, KML
Räumliche Indizierung mit dem GiST-Index

[/quote]

Womit ich mich nächstens noch auseinandersetzen werde ist der Einsatz eines Overpass API python wrappers.

Freue mich auf Deine Antwort,

vG TTW aka Martin :wink:

Aber sicher! damit steht dir die ganze GIS-Welt offen. Und das bei Verwendung anerkannter OGC-Standards.

QGIS benutze ich auch, aber nur um bestimmte Daten grafisch darzustellen (nicht mit Rendern verwechseln, das ist ne andere Baustelle):

Aktuelles Projekt: Stand der Erfassung der Postleitzahlgrenzen in Österreich.

Sind “nur” einige Layer, die auf PostGIS-Abfragen beruhen. Hier mal die Query für das PLZ-Layer (gelb):


"osm_id" < 0
and boundary = 'postal_code'
and pointonsurface @ (select bbox from boundaries where country='AUT' and level='2')
and st_contains((select way from boundaries where country='AUT' and level='2'),pointonsurface)

selektiert alle Relationen (osm_id<0), die PLZ-Grenzen (boundary=postal_code) sind und in Österreich (country=‘AUT’ and level='2) liegen.

Aufwand für das Layer: 5 Minuten. Laufzeit 60 Sekunden bei einer PostgreSQL-DB mit 1.6 TB - (Terabyte!) Größe.

Aber sicher. Den Start- oder auch Endpunkt eines Ways bekommst du z.B mit ST_Startpoint(way) bzw. ST_Endpoint(way) geliefert.

hattu doppelt gefragt.

Wenn du 1x lat/lon in Geometrien umrechnen lässt (dafür gibt es natürlich PostGIS-Funktionen) hat jedes Objekt (Knoten, Weg, Fläche) genau ein geom-Feld in der Tabelle, in dem alles drin steht - egal ob es nur ein Punkt oder die Fläche von Deutschland mit allen Inseln ist. Anschliessend kannst du dutzende von Gis-Funktionen darauf anwenden bzw. selber schreiben. Hast du ja schon selber erkannt.

naja, das aktuelle Projekt würde ich jetzt nicht gerade umkrempeln aber mit PostGIS stehen dir Möglichkeiten zu Verfügung, von denen du wohl noch nie was gelesen hast.

Ich denke da an Topologien https://www.battefeld.com/bricscad_und_gis/topologie-eines-wassernetzes und Bildverarbeitung mit Rastern http://www.rivm.nl/media/Geodata/Beheer/Tools/postgis_raster.pdf. Alles drin.

Bücher gibt auch darüber. Hier das beste: https://www.manning.com/books/postgis-in-action-second-edition

Und denk dran - wir haben alle mal klein angefangen. Ich hab auch meine Zeit gebraucht.

Gruss
walter

Hmm, also nochmal zum Verständnis: du extrahierst mit diversen Scripts aus den OSM Daten letztendlich ASCII Daten, um diese in eine MySQL (o.a.) zu importieren. Soweit so gut. Darf man fragen, wie dann die weitere Nutzung der Daten ist, also was du dann z.B. mit den lat/lon Spalten von deiner MySQL machst?

Ich glaube es wäre vielleicht ganz gut, wenn du mal deutlich und plastisch beschreibst, was denn das Endprodukt nach bzw. aus deiner MySQL Datenbank sein soll.

Nachtrag: Und hast du dich eigentlich mal mit XSLT beschäftigt?

Hallo Harald hallo Walter,

vielen Dank für Eure Antworten, Beiträge und Anregungen. Sehr sehr spannend alles - und ich merke dass ich in jedem einzelnen Thread sehr viel dazulerne und sich irgendie neue Seiten an Openstreetmap sehe. Ja sogar von Posting zu Posting :wink:

**
@ Walter: **Wow das ist ja ganz beachtlich. Finde es sehr leistungsfähig was PosGIS hier macht. Eröffnet ganz neue Welten. Und das bei Verwendung anerkannter OGC-Standards. Bis dato hatte ich weniger Interesse daran, bestimmte Daten grafisch darzustellen. Aber wie man sieht ist PostGIS ggf. auch für mich - der im Moment kein Interesse daran hat auch etwas dabei.

Also ich denke drüber nach die lokale DB auf PostgreSQL/PostGIS umstellen. Vielleicht taugen hier die Ansätze von PS/PG auch ganz gut. Dann kann ich von meiner MySQL-Umgebung auf PostGIS umsteigen.

**@ Harald: **Nun ich hab als Pädagoge ein spez. Interesse an den Themen, Netzwerken, Lernen, Weitergabe von Wissen,
Bin darüber hinaus ferner interessiert an Austausch, Kontakt - mit Schulen usw.
Empirisch: Was auffällt ist dass mMn der Ausbau der Map - und die Aktivität also der Mapper sehr unterschiedlich ist. In Deutschland gibt es eine sehr aktive Community - in anderen Ländern z.T. etwas schwächer ausgeprägt.

Hier eine Veranschaulichung dessen was ich meine:

vgl. Daten aus dem Forum _ btw_: gibt es denn hier auch empirische Untersuchugen?!

Das techn. Interesse: also ich kenne mich etwas aus in den Sprachen PHP, Python, weniger gut in Perl - und XSLT.

Mein technisches Interesse greift hier (an dem oben Gesagten) ein - vernetzt sich sozusagen damit. Technisches Interesse greift hier ein - man - abgesehen von den DATEN in diesem Forum wie aktiv die Communities (/maW. die Mapper in den jeweiligen Ländern) sind.
Technisch bin ich an OSM interessiert - auch die in den Maps sich niederschlagenden Daten mir aufzuschlüsseln. Also, mit anderen Worten: wenn ich Toolchains ausprobieren - und sehe wie, aktiv die Mappingprozesse sind. Das ist absolut analog. Um das mal etwas plastisch zu machen und anschaulich hier mal ein kleines Beispiel.

Beispiel: einer Abfrage: Abfragen z-.B. in Spanien liefern einen anderen Datensatz - eine andere Dichte Sieht man mal z.B. auf folgende Abfrage:


[out:csv(::id,::type,"name","addr:postcode","addr:city","addr:street","addr:housenumber","website"," contact:email=*")][timeout:600];
{{geocodeArea:España}}->.a;
( node(area.a)[amenity=hospital];
  way(area.a)[amenity=hospital];
  rel(area.a)[amenity=hospital];);
out;

Einige Informationen stehen aber auch unter contact:website oder email. Von den über 2500 Krankenhäusern in Spanien haben 1998 keine Straßenangabe in ihrer Adresse, 2067 keinen Ort, 2090 keine Postleitzahl sowie nur 7 eine contact:email, 5 eine contact:website, 16 eine email und 107 eine website.
Nun da ist es wieder: Da ist mein Interesse - wie kommt so etwas zustande - wie organisieren, motivieren, sich denn die Mapping-Prozesse?

Also meine nächsten Beschäftigungen:

  • technisch: mich mal mit XSLT auseinandersetzen - https://de.wikipedia.org/wiki/XSL_Transformation und darüber hinaus:
  • mir mal weitere Literatur / Online-Tutorials für den Einstieg in PostGIS suchen; Denke, es macht Sinn das mal näher anzusehen.
  • last but not least: dem _non_techn_interesse folgend: hier nochmals vorbeigucken: https://flosshub.org/ bzw. https://flosshub.org/biblio
    dort wird v.a. das Open Source Phänomene beschrieben - aber denke dass vllt. auch das OSM mitbechrieben wird.

vg TagTheworld.

Wie solch unterschiedliche Datendichten zu Stande kommen? Kurz: unterschiedliches Interesse, und auch unterschiedliche Meinungen.

  • rein theoretisch (und eigentlich auch praktisch) braucht man z.B. weder Postleitzahl noch Ort zu erfassen, wenn die entsprechenden administrativen Grenzen gepflegt sind, weil dann macht man mit PostGIS einfach eine spatiale Abfrage (in welchem Gebiet findet sich Punkt XY).
  • Und auch so Daten wie Telefonummer, Emailadresse, Website … da gibt es genug Leute die der Meinung sind, dass OpenStreetMap kein Branchenbuch ist und es deshalb auch nicht eintragen.
  • Umso detailierter man Daten erfasst, umso aufwändiger wird ja dann auch der DatenPFLEGEaufwand (initiales Erfassen ist - sehr - einfach, die Daten aktuell zu halten und zu pflegen unterschätzen viele).