Hallo,

Am Sonntag, den 22.07.2012, 21:22 +0200 schrieb Stefan Keller:
> 1. Sind OSM ID's wirklich instabil? bzw. Wann ändern IDs
> "ungewollt/unfreiwillig"?
> 
> Oben wird die Overpass Permanent ID erwähnt
> (http://wiki.openstreetmap.org/wiki/Overpass_API/Permanent_ID ) und
> dort steht: "...you shouldn't use an object ID, because the OSM IDs
> may change at any time." Das würde ich gerne mal näher analysieren:
> 
> Ein klarer Fall für ein Löschen und Neu-Einfügen (mit neuer ID)
> scheint mir zu sein, wenn das auch in der realen Welt der Fall ist:
> Wenn z.B. ein Gebäude abgerissen und neu erstellt wird, oder ein
> wichtiger Einzelbaum gefällt und neu gepflanzt wird.
> 
> Soeben realisiere ich, dass wenn Nodes (mit Tags) lagemässig
> verschoben werden, ein neuer Node mit neuer ID und neuen Koordinaten
> und den "geretteten" Tags erzeugt wird (zumindest in JOSM), während
> dessen alte Koordinaten als "normaler Way-Node zurückbleiben. Das ist
> aber kein logisch zwingender Grund, sondern technischer Mangel.

Dieses Problem lässt sich umgehen, wenn man nicht mit der Version des
Weges arbeitet, sondern zusätzlich mit einem Datum.

Ein way X lässt sich zu jedem Zeitpunkt und immer gleich aus OSM (und
der OSM-Historie) extrahieren.
Dieses Objekt(mit Datum) ist stabil. Diese Information ließen sich
cachen und bei Bedarf gegen die Objekte mit aktuellerem Datum
abgleichen.

Wie kommt man an das Objekt mit ObjektID+Datum?
--> alle referenzierten Objekte mit dem entsprechenden Datum ermitteln.
Die Ermittlung ist ohne komplette Datenbank mit OSM-Historie sehr
aufwändig.

Vor einigen Jahren habe ich mal einen Prototypen geschrieben, der über
die API aus der OSM-DB ein Objekt zu jedem Zeitpunkt ermitteln kann:
Beschreibung:
http://www.h-renrew.de/h/osm/tools/osmhistory.html
Quelltext:
https://github.com/werner2101/python-osm

Anmerkungen:
* Bei der Eindeutigkeit gibt es eine gewisse Unschärfe, weil die  
  Changesets AFAIK nicht atomar in die OSM-Datenbank eingetragen werden.
* Ich weiß nicht ob der Code mit Objekten noch geht, die vom Redaction
  Bot verändert wurden.

Grüße
Werner



_______________________________________________
Talk-de mailing list
Talk-de@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-de

Antwort per Email an