我正在构建一个主要使用 GPX 文件作为输入数据的应用程序。鉴于 gpx 文件应该由 gpx 模式定义(定义如下:http ://www.topografix.com/gpx.asp),我教给我的应用程序合理的第一件事是根据模式验证输入文件(当然要记住不同的版本)。到目前为止,一切都很好。对于我正在测试的初始文件,一切都很完美。但是,有时我使用 .gpx 文件,结果证明这些文件对相关的 gpx 架构无效。所以,我试图用其他类似的工具导入它们,奇怪的是,没有返回错误并且文件被完美解析。所以,最合乎逻辑的结论是我的代码有问题。但是,经过彻底调查,我的代码完全没问题,目前没有问题。这甚至通过来自 topografix.com 的建议验证技术 ( http://www.topografix.com/gpx_validation.asp) ,它再次得出该文件无效的结论。
因此,事实证明有一些 GPS 设备/GPS 记录系统/等。生成 .gpx 文件而不符合官方 GPX 架构。这个结论让我问一个问题:为什么?我真的不明白它背后的想法。此外,对于我发现的大多数无效文件,问题不是可能被视为附加功能的问题,而是类似于我认为完全愚蠢的某些元素的子元素没有遵循正确的顺序。
这导致我问你两个问题。首先,如果有人能向我解释为什么我在网上找到的许多 GPX 文件不符合官方 GPX 架构,我会很高兴。其次,我想问一下,如果你要解析GPX文件,你是如何处理这个问题的。毕竟,跟踪点无论如何都会在文件中,所以我是否只需要忽略 XML 模式验证并继续直接解析?但是话又说回来,如果属性名称拼写错误,我的系统就会崩溃。非常感谢您如何处理解析 GPS 文件的任何信息。
感谢您的时间和帮助。
问候,
佩塔尔
编辑:我发布了一个新线程:GPX 解析模式和“标准”,我在其中询问人们实际上是如何解析 GPX 文件的。如果您有任何想法,请在此处发布您的答案。