• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Minimal-GPX-Datei zum Import in MapSource

ibu

Geocacher
Mich interessiert, was eine händisch im Texteditor bearbeitete GPX-Datei zwingend aufweisen muss, damit sie sich in MapSource importieren lässt.
Mit XML kenne ich mich bisher nicht aus.

Ein kurzer Test zeigt, dass folgende entschlackte Datei problemlos importiert wird.
Code:
<?xml version="1.0" encoding="UTF-8" ?>
<gpx xmlns="http://www.topografix.com/GPX/1/1" creator="MapSource 6.13.4" version="1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www.garmin.com/xmlschemas/GpxExtensions/v3/GpxExtensionsv3.xsd http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd">

  <wpt lat="52.4967840" lon="13.3675554">
    <time>2007-10-31T07:57:49Z</time>
    <name>Foo Bar</name>
  </wpt>

</gpx>

Sobald man diejenigen Attribute im Element GPX entfernt, die auf das Garminschema verweisen, klappt der Import nicht mehr.

Existiert ein alternatives öffentliches, nicht-proprietäres Schema, welches Mapsource akzeptiert und möglichst viele andere Kartenverwaltungswerkzeuge?

Danke.

PS: Nutzt jemand von Euch statt MapSource eine andere Software, weil er diese besser findet?

Zum Beispiel
http://www.expertgps.com/default.asp
oder was auch immer.
 

Cornix

Geowizard
ibu schrieb:
Sobald man diejenigen Attribute im Element GPX entfernt, die auf das Garminschema verweisen, klappt der Import nicht mehr.

Mapsource kann doch auch PQ GPX-Dateien laden und da steht nichts von Garmin drin:

Code:
<gpx xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" creator="Groundspeak, Inc. All Rights Reserved. http://www.groundspeak.com" xsi:schemaLocation="http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xsd http://www.groundspeak.com/cache/1/0 http://www.groundspeak.com/cache/1/0/cache.xsd" xmlns="http://www.topografix.com/GPX/1/0">

Cornix
 
OP
I

ibu

Geocacher
Cornix schrieb:
Mapsource kann doch auch PQ GPX-Dateien laden und da steht nichts von Garmin drin:
Ich suche eine Angabe, die ohne Quellverweise zu einzelnen Firmen oder Betreibern, wie Garmin, Topografix oder Groundspeak auskommt.
Es sollte ein generisches Schema sein, so ähnlich wie die vom W3C bereitgestellt HTML Spezifikation.

Sorry, ich kann es nicht besser ausdrücken. Vielleicht versteht ihr dennoch, was ich meine.
 
A

Anonymous

Guest
ibu schrieb:
… Vielleicht versteht ihr dennoch, was ich meine.
solange du nicht damit rausrückst, wozu das dienen soll?
egal: es geht nicht ohne schema-verweis:
http://www.topografix.com/GPX/1/1/
die spezifikationen hättest du auch selber finden können: goole-suche »gpx schema«.
im weiteren wäre es nett, wenn dieser thread nicht wieder zur haarspalterei ausarten würde.
danke, ein genervter MOD.


Happy Hunting – The Old Fashioned Way (Trads only, NO Micros, NO vanity caches, exceptions may appear)
NoGoAreas: Kurpfalz, Castrop-Rauxel, Berlin, Hannover sowie Gotteshäuser und Raststätten.
 

Cornix

Geowizard
ibu schrieb:
Ich suche eine Angabe, die ohne Quellverweise zu einzelnen Firmen oder Betreibern, wie Garmin, Topografix oder Groundspeak auskommt.
Ohne Verweise auf Topografix wirst du wohl kaum auskommen, die haben nämlich das GPX-Format erfunden. 8)

Cornix
 
OP
I

ibu

Geocacher
HHL schrieb:
es geht nicht ohne schema-verweis:
Alles klar. Danke.
HHL schrieb:
im weiteren wäre es nett, wenn dieser thread nicht wieder zur haarspalterei ausarten würde.
danke, ein genervter MOD.
Denke bitte über Deinen Anteil daran nach, Danke.

Und:
es ist mehr als unangemessen, ganz besonders für einen MOD, hier in diesem Thread, ohne jeden Anlass, wiederum mit einer Unterstellung, "vorsorgen" zu wollen.

Würde es nicht endlos Zeit fressen, würde ich mich bei den anderen MODs über Deine Umgangsweise beschweren und sie ersuchen, Dir den MOD-Status ggfs. zu entziehen oder Dich zu verwarnen.
 
OP
I

ibu

Geocacher
Cornix schrieb:
Ohne Verweise auf Topografix wirst du wohl kaum auskommen, die haben nämlich das GPX-Format erfunden. 8)
Danke.
Hätte ich wirklich selber drauf kommen können, da hatte HHL schon Recht. Sorry.
Ich hatte kurz auf die Website von topografix gesehen und sie als kommerzielle Firma "abgebucht". Ich kam nicht drauf, dass ein solcher Akteur das Format ins Leben gerufen haben könnte.
 
A

Anonymous

Guest
ibu schrieb:
… Würde es nicht endlos Zeit fressen, würde ich mich bei den anderen MODs über Deine Umgangsweise beschweren und sie ersuchen, Dir den MOD-Status ggfs. zu entziehen oder Dich zu verwarnen.
für eine vorsorgliche bitte? wie bist du denn drauf? wer so unverholen droht, läuft gefahr, selber aus dem forum zu fliegen. du wärst nicht der erste.

Happy Hunting – The Old Fashioned Way (Trads only, NO Micros, NO vanity caches, exceptions may appear)
NoGoAreas: Kurpfalz, Castrop-Rauxel, Berlin, Hannover sowie Gotteshäuser und Raststätten.
 
OP
I

ibu

Geocacher
Cornix schrieb:
Ohne Verweise auf Topografix wirst du wohl kaum auskommen, die haben nämlich das GPX-Format erfunden. 8)

Habe jetzt noch einige Versuche gemacht.

Erstaunlich, dass MapSource den Import auch verweigert, wenn allein
Code:
creator="MapSource 6.13.4"
herausgenommen wird (aus dem Code aus meinem Urprungsposting).

Falls jemand an meinem Motiv für die Frage interessiert ist:
Ich wollte verstehen, wie man ein GPX-File manipulieren muss, falls ein GPX mit irgendeinem Werkzeug erstellt wurde (z.B. mit einem Online-Werkzeug, wo gar keine Headerdaten existieren) und der Import nicht klappt.
 

Cornix

Geowizard
ibu schrieb:
Erstaunlich, dass MapSource den Import auch verweigert, wenn allein
Code:
creator="MapSource 6.13.4"
herausgenommen wird (aus dem Code aus meinem Urprungsposting).
So wie's aussieht ist das "creator"-Attribut obligatorisch, wenn es fehlt ist die XML-Datei nicht mehr wohlgeformt. 8)

Der Inhalt ist aber anscheinend beliebig, gc.com schreibt z.B. creator="Groundspeak, Inc. All Rights Reserved. http://www.groundspeak.com" rein und das wird auch akzeptiert.

Cornix
 
Hallo,

bei dem GPX gibt es verschiedene Derivate. MapSource reagiert sehr empfindlich wenn eine Token eines der Derivate nicht da ist.
Es fängt schon damit an, das es den Eintrag für encoding nicht auswertete, als ich es testete.

Nimm es einfach so hin und verwende eine GPX von Mapsource als Vorlage und bilde deine so nach.

KDB
 
Cornix schrieb:
ibu schrieb:
Erstaunlich, dass MapSource den Import auch verweigert, wenn allein
Code:
creator="MapSource 6.13.4"
herausgenommen wird (aus dem Code aus meinem Urprungsposting).
So wie's aussieht ist das "creator"-Attribut obligatorisch, wenn es fehlt ist die XML-Datei nicht mehr wohlgeformt. 8)

Der Inhalt ist aber anscheinend beliebig, gc.com schreibt z.B. creator="Groundspeak, Inc. All Rights Reserved. http://www.groundspeak.com" rein und das wird auch akzeptiert.

Cornix
Das ist leider nicht so, denn daran schein Mapsource die Derivate der GPX-Dateien zu erkennen.

KDB
 

1887

Geomaster
ibu schrieb:
Falls jemand an meinem Motiv für die Frage interessiert ist:
Ich wollte verstehen, wie man ein GPX-File manipulieren muss, falls ein GPX mit irgendeinem Werkzeug erstellt wurde (z.B. mit einem Online-Werkzeug, wo gar keine Headerdaten existieren) und der Import nicht klappt.
Dann beschäftige Dich als erstes mit XML. Man kann in XML nicht einfach irgendwelche Elemente/Attribute entfernen. Die in den Definitionen des jeweiligen Datenformates vorgegebenen Deklarationen müssen eingehalten werden. Wenn das Schema vorsieht, dass bestimmte Attribute da sein müssen, ist eine Datei nicht valide, wenn diese fehlen. Und es ist gut, wenn Programme invalide Dokumente ablehnen.

In der xsd steht unter anderem:
xsd:attribute name="creator" type="xsd:string" use="required"

und

You must include the name or URL of the software that created your GPX document. This allows others to inform the creator of a GPX instance document that fails to validate.

Meint

1887
 
OP
I

ibu

Geocacher
Cornix schrieb:
So wie's aussieht ist das "creator"-Attribut obligatorisch, wenn es fehlt ist die XML-Datei nicht mehr wohlgeformt. 8)

Aktueller Stand des Eindampfens des Codes aus dem Urprungsposting:
Code:
<?xml version="1.0" encoding="UTF-8" ?>
<gpx 
xmlns="http://www.topografix.com/GPX/1/1" 
creator="" 
version="1.1" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd">
	<wpt lat="52.4967840" lon="13.3675554">
		<time>2007-10-31T07:57:49Z</time>
		<name>Moin moin</name>
	</wpt>
</gpx>
Bei der Interpretation der GPX-Doku blicke ich ehrlich gesagt nicht durch.
Eleganter als mein Try&Error wäre natürlich, aus der Doku heraus exakt zu wissen, was obligatorisch und was optional ist.
 

1887

Geomaster
Es steht doch alles im Klartext in der Doku:
Erstes Element ist gpx:

xsd:element name="gpx" type="gpxType"

Es hat den Typ gpxType, will man wissen, was gpxType ist schaut man darunter nach:

xsd:complexType name="gpxType"

dort erfährt man, dass dieser type eine Sequenz von Elementen enthält (die alle vorkommen dürfen, aber nicht müssen) außerdem müssen zwei Attribute vorhanden sein

xsd:attribute name="version" type="xsd:string" use="required" fixed="1.1"
xsd:attribute name="creator" type="xsd:string" use="required"

Beispiel für ein mögliches Element:

xsd:element name="metadata" type="metadataType" minOccurs="0"

Will man wissen, wie metadate aussehen muss um valide zu sein, schaut man sich die Deklaration unter metaDataType an.

Aslo ich finde diese Deklarationsdatei sehr übersichtlich und gut nachvollziehbar.

Eine noch kürzere valide Version wäre:
Code:
<?xml version="1.0" encoding="UTF-8" ?>
<gpx
xmlns="http://www.topografix.com/GPX/1/1"
creator=""
version="1.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd">
</gpx>
 
ibu schrieb:
Mich interessiert, was eine händisch im Texteditor bearbeitete GPX-Datei zwingend aufweisen muss, damit sie sich in MapSource importieren lässt.
Mit XML kenne ich mich bisher nicht aus.


Die GPX-Datei ist eine XML-Datei mit nicht mitgelieferter DTD.
Die "Mapsource"-Kennung ist notwendig, weil es der Hinweis auf die zu verwendende (geräteinterne) DTD ist.


Diese Stichworte sollten Dir reichen um in Google genügend Online-Kurse zu finden, mit denen Du Dir ausreichende Kenntnisse zu diesem Thema aneignen kannst, um die GPX-Dateien erfolgreich und zuverlässig bearbeiten zu können.

Viele Grüße
Onkelchen
 
Oben