Da ich in diesem Bereich beträchtliche berufliche Erfahrungen habe, möchte ich das nicht unwidersprochen stehen lassen:
XML ist genau zu diesem Zweck gemacht.
Ist es nicht. Es ist eine abstrakte Darstellung von Textinhalten z.B. für automatisierte Doku. Die 2x32bit einer Koordinate in zig Bytes XML zu verpacken ist ein Unding. Die zum Lesen und Schreiben nötigen Bibliotheken ein fettes Krebsgeschwür in Speicher und Zyklen.
GPX ist ein ziemlich gut überlegtes Schema, und auch das Erweiterungskonzept ist sehr brauchbar.
Nein, GPX ist an allen Enden zu kurz gedacht. Es fehlt jedem Element ein verbindlicher Schlüssel. Ein Wegpunkt einmal in purem GPX abgespeichert ist für die Software nie mehr wiederzuerkennen. Solche lapidaren Werte wie ein Annäherungsalarm fehlen. Die Routendefinition ist vollkommen unterentwickelt und lässt keine Definition von komplexen Routen zu. Seiteninformation wie z.B. eingebettete Bilder fehlen und können nur verlinkt werden. Ein in sich konsistenter Datensatz sieht anders aus. Und alleine schon die schwammige Definition der Tags <cmt> und <desc> löst lange Diskussionen aus.
Die Erweiterungen lassen einen Wildwuchs zu, der der Idee eines "Exchange" Formates absolut entgegen steht. Ein "ziemlich gut überlegtes Schema" sieht anders aus.
Normen oder Standards sind per Definition der kleinste gemeinsame Nenner. Das gilt auch für GPX, zumal es eine bereits gelebte Realität mit unterschiedlichen Datenmodellen gab, weder komplett zu erfassen sind, so daß nur eine begrenzte kompatible Schnittmenge bleibt.
Schau dir mal einen echten Standard an. Bei der ITU-T oder dem IEEE gibt es genügende. Moderne Kommunikation wäre ohne eine detaillierte, allumfassende Definition nicht möglich. Deswegen kann das Internet weltweit Daten zwischen den unterschiedlichsten Systemen austauschen, ohne das Information verloren geht.
GPX ist weit davon entfernt einen Standardisierungsprozess zu durchlaufen. Topographix scheint auch kein Interesse daran zu haben es weiter zu entwickeln. Und so hängt das Kind seit Jahren schief in der Landschaft.
Durch die Umstellung habe ich auch die alten MPS-Dateien im aktuellen Format, so daß mir meine Inhalte nicht "unter'm Hintern weg" veralten.
Weiß garnicht, ob das aktuelle MapSource oder BaseCamp alte MPS-Dateien noch fressen?
Einige weitere Lösungen haben sich darüber hinaus ergeben,
beispielsweise habe ich mit einem sehr einfachen Skripting eine große Anzahl von POI mit geschwindigkeitsabhängigen Annäherungsradien versehen können.
Kommentarballast und Fehler im Batch bereinigen, kein Problem,
Wegpunkte mit zu langen Namen oder problematischen Sonderzeichenkodierungen finden, auch kein Problem,
Wer das auch in GDB kann, oder nichts davon braucht, mag gerne beim GDB-Format bleiben.
Alles anzeigen
Clevere Binärformate lassen sich ebenso einfach bearbeiten wie die XML Hölle. Der einzige Vorteil von XML ist, dass mit dem Klartext der Hersteller automatisch gezwungen wurde seine Spezifikation halbwegs offen zu legen. Für den Preis eines enormen Overheads. Und für die meisten Benutzer bleibt auch XML ein Buch mit 7 Siegeln.
Ich verlasse mich jedoch bei einem Hersteller wie Garmin darauf, dass ich mit seinen Binärformaten maximale Funktion bekomme. Wenn der Hersteller das Format ändert dann muss er Rückwärtskompatibel bleiben. Und wenn nicht, dann kann ich immer noch mit GPSBabel meine Daten nach GPX kastrieren. Muss ich aber nicht gleich machen, oder?