GPX Output Format
gpx-export produces a GPX 1.1 XML document with Topografix GPX 1.1 schema declarations, plus Garmin TrackPointExtension v2 declarations when needed.
Base structure
The generated document can include metadata, waypoints, routes, and tracks:
<gpx version="1.1" creator="gpx-export"
xmlns="http://www.topografix.com/GPX/1/1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.topografix.com/GPX/1/1 https://www.topografix.com/GPX/1/1/gpx.xsd">
<metadata>...</metadata>
<wpt lat="..." lon="...">...</wpt>
<rte>...</rte>
<trk>...</trk>
</gpx>
Metadata mapping
metadata.name-><metadata><name>metadata.desc-><metadata><desc>metadata.author-><metadata><author>metadata.link-><metadata><link href="...">metadata.time-><metadata><time>metadata.keywords-><metadata><keywords>metadata.bounds-><metadata><bounds minlat="..." ... />metadata.copyrightsupports shorthand string or full object form
Track and segment mapping
- Each track is emitted as
<trk>with required<name>. - If
segmentsexist, they are emitted as provided. - Otherwise a single
<trkseg>is built frompoints. - Track points include required
lat,lon, andtime. - Point elevation writes to
<ele>with 2 decimal places.
Garmin extensions
- When Garmin extension fields are present,
xmlns:gpxtpxand Garmin schema location are added. speed,heartRate, andcadencemap togpxtpx:speed,gpxtpx:hr, andgpxtpx:cadon track points.speedon track points is treated as a legacy alias for extension speed.- Garmin extension values are emitted under
<extensions><gpxtpx:TrackPointExtension>in<trkpt>.
Example with Garmin data
<gpx version="1.1" creator="gpx-export"
xmlns="http://www.topografix.com/GPX/1/1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:gpxtpx="http://www.garmin.com/xmlschemas/TrackPointExtension/v2"
xsi:schemaLocation="http://www.topografix.com/GPX/1/1 https://www.topografix.com/GPX/1/1/gpx.xsd
http://www.garmin.com/xmlschemas/TrackPointExtension/v2 https://www8.garmin.com/xmlschemas/TrackPointExtensionv2.xsd">
<trk>
<name>Morning Ride</name>
<trkseg>
<trkpt lat="54.5741" lon="-1.318">
<ele>32.40</ele>
<time>2026-03-23T07:15:00.000Z</time>
<extensions>
<gpxtpx:TrackPointExtension>
<gpxtpx:speed>5.2000</gpxtpx:speed>
<gpxtpx:hr>151</gpxtpx:hr>
<gpxtpx:cad>86</gpxtpx:cad>
</gpxtpx:TrackPointExtension>
</extensions>
</trkpt>
</trkseg>
</trk>
</gpx>
Trusted raw XML
Per-point/route/track/waypoint extensions.rawXml values are inserted as-is and are not escaped.
Use only trusted XML strings.