Garmin GPX extension - validation & documentation

 

I am able to validate standard GPX files, but not files using the Garming extention:


$ cat v1sample.gpx
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<gpx
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 http://www.topografix.com/GPX/1/1/gpx.xsd"
version="1.1"
creator="gpx-poi.com">

<wpt lat="17.000000" lon="0.000000">
<time>2021-02-27T23:15:59Z</time>
</wpt>
</gpx>

$ xmllint --noout --schema http://www.topografix.com/GPX/1/1/gpx.xsd v1sample.gpx
v1sample.gpx validates

$ cat v3sample.gpx
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<gpx
xmlns="http://www.topografix.com/GPX/1/1"
xmlns:gpxx="http://www8.garmin.com/xmlschemas/GpxExtensions/v3"
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
http://www8.garmin.com/xmlschemas/GpxExtensions/v3
http://www8.garmin.com/xmlschemas/GpxExtensions/v3/GpxExtensionsv3.xsd"
version="1.1"
creator="gpx-poi.com">

<wpt lat="17.000000" lon="0.000000">
<time>2021-02-28T00:04:17Z</time>
<extensions>
<gpxx:WaypointExtension>
<gpxx:Proximity>1000</gpxx:Proximity>
</gpxx:WaypointExtension>
</extensions>
</wpt>
</gpx>

$ xmllint --noout --schema https://www8.garmin.com/xmlschemas/GpxExtensions/v3/GpxExten... v3sample.gpx
warning: failed to load external entity "https://www8.garmin.com/xmlschemas/GpxExtensions/v3/GpxExtensionsv3.xsd"
Schemas parser error : Failed to locate the main schema resource at 'https://www8.garmin.com/xmlschemas/GpxExtensions/v3/GpxExtensionsv3.xsd'.
WXS schema https://www8.garmin.com/xmlschemas/GpxExtensions/v3/GpxExten... failed to compile

I can't remember where I originally found the schema reference for standard GPX; however, the one for the Garmin extension I could only find here:
https://en.wikipedia.org/wiki/GPS_Exchange_Format

I modified this URL in my example above so that it would resolve:
From - http://www.garmin.com/xmlschemas/GpxExtensionsv3.xsd
To - http://www8.garmin.com/xmlschemas/GpxExtensionsv3.xsd

There are clearly some other issues there, neither URL resolves:
http://www.garmin.com/xmlschemas/GpxExtensions/v3
http://www8.garmin.com/xmlschemas/GpxExtensions/v3

However, I imagine that just points to the documentation used to generate the XSD file, so I am not even sure it matters.

Using http versus https does not seem to make a difference either.

Anybody have an idea where the schema reference is documented or what it should look like?

Rolf
https://gpx-poi.com/

--
Rolf @ https://gpx-poi.com

XSD File

I see that the XSD file itself has a URL that does not resolve:
https://www8.garmin.com/xmlschemas/GpxExtensions/v3/GpxExten...

Line 1:

<xsd:schema targetNamespace="http://www.garmin.com/xmlschemas/GpxExtensions/v3" elementFormDefault="qualified">

--
Rolf @ https://gpx-poi.com