Xsd 如何在KML中使用SimpleFileExtension?

Xsd 如何在KML中使用SimpleFileExtension?,xsd,kml,xml-validation,Xsd,Kml,Xml Validation,我正在创建一个地理定位应用程序,我们打算使用KML作为导入/导出数据scructure。 我们需要存储关于字段定义的额外信息,但我很难理解如何使用KML SimpleFileExtension(事实上,我的问题是理解XML模式和验证)。 谷歌KML教程没有教你怎么做 我知道SimpleFileExtension是一个抽象元素,KML规范中没有Conrect元素 所以我需要扩展它并创建我自己的,对吗? 我想这样做: 我的价值 ... ... 当我试图弄明白这一点时,我的印象是我需要用我自己

我正在创建一个地理定位应用程序,我们打算使用KML作为导入/导出数据scructure。
我们需要存储关于字段定义的额外信息,但我很难理解如何使用KML SimpleFileExtension(事实上,我的问题是理解XML模式和验证)。
谷歌KML教程没有教你怎么做

我知道SimpleFileExtension是一个抽象元素,KML规范中没有Conrect元素


所以我需要扩展它并创建我自己的,对吗?
我想这样做:


我的价值
...
...
当我试图弄明白这一点时,我的印象是我需要用我自己的mySimpleFileExtension创建一个.xsd文件,以及.kml文件如何指向它。但我不确定这条路是否正确


谁能给我举个例子吗?先谢谢你


我正在使用检查我的文件。

如果要创建SimpleFileExtension元素并对其进行验证,则需要创建XML架构(.xsd),并在KML文档中引用该文件

具有KML扩展名的XML架构示例:


请注意,检查严格的KML规范,而不检查KML扩展,因此您也无法验证自定义扩展

可以使用作为独立命令行验证器的验证这样的KML文档

您需要在XML Validator ns.map配置文件中添加名称空间定义:

http://myextension=${XV_HOME}/schemas/ext.xsd
或者像这样的绝对路径:

http://myextension=C:/myPath/ext.xsd

尽管KML标准支持SimpleFileExtension,但通过自定义XML模式添加自定义SimpleFileExtension需要进行更多测试,以验证它不会给使用它的应用程序带来问题,特别是如果您计划在组织外部共享KML。像Google Earth这样的应用程序只会忽略您的扩展,所以只有在您绝对必须使用扩展时才使用扩展。

如果您定义自己的SimpleFileExtension,那么它将是非标准的。您可以轻松地在扩展数据中使用数据/值对,而不需要使用非标准的解决方案。谢谢,我会考虑这个选项。