【问题标题】:Getting data from xml into leaflet map从xml获取数据到传单地图
【发布时间】:2015-07-20 15:05:59
【问题描述】:

我有一张 Leaflet 地图,我想包含一些来自 web 服务的数据,该服务返回 a strange XML format 中的数据。

  • leaflet 是否能够以某种方式处理 XML? (恐怕不是因为我没有找到任何相关信息)

  • 如果不是,那么处理该 XML 的最佳/最简单方法是什么?我是否应该编写/使用(我发现很多)解析器将 XML 转换为更适合传单的格式,如 (geo)json?我是否应该将 XML 直接解析为 Leaflet-Layer(听起来像是自己编写插件)?

  • 我还缺少其他选项吗?

【问题讨论】:

    标签: javascript xml parsing leaflet


    【解决方案1】:

    取决于您的 XML 数据包含的内容 - 如果包含大量地理信息,我会考虑将其转换为 KML

    我正在使用类似的东西,我使用 php xml 处理程序将现有的 KML 编辑为对 Leaflet 更友好的格式,然后使用 this 将其加载到我的地图中。

    否则我认为geojson是要走的路。

    希望这会有所帮助。

    【讨论】:

    • 感谢您的回复。实际上,上面有一个链接描述了我得到的 XML 格式。您指向 KML 的链接可能很有用 - 我认为 KML 只是传单无法处理的另一种奇怪的 XML 格式,但它似乎是可用的。您会建议将我的 XML 转换为 geojson 还是 KML?如果有“大量的地理信息”,后者会有什么优势?
    • 我认为这取决于您对数据的使用情况?在我的示例中,我使用传单来跟踪科学资产,因此我希望在网站上拥有它的“哇”以及为中级用户提供数据以在谷歌地球等离线内容上查看的灵活性。对我来说,我可以在地图/显示器上使用大部分数据也很重要。所以我选择了 KML 路线(因为它很常见)。我认为如果您的应用程序仅供您自己使用,那么将您的 xml 转换为 Geojson 是可行的方法。但这是据我所知。
    【解决方案2】:

    XML 中的 X 代表“可扩展”。上面提供的链接(FDSN)不是“奇怪的格式”,而是一种特定的模式。 JSON 是一种非常易于使用的格式,因为不需要模式信息,尽管 JSON 模式确实存在。但是,当出于多种原因需要对信息进行标准化时,为了使信息易于理解,就需要一个模式。 FDSN 模式显然代表了用于处理地震数据的标准元数据模式。人们会发现,为了实现互操作性,各个行业和组织已决定将元素合并到文档中。

    XML 通常不像 JSON(或 GeoJSON)那样直接,但使用它的原因正是因为它的可扩展性,因为在许多应用程序和数据集合中,需要和/或首选丰富的元数据模式。无论如何,如果架构本身没有被很好地理解,则可能无法进行快速转换。

    有关在 Leaflet 中使用 XML 的优秀教程,请参阅以下链接。注意:任何时候使用 XML,至少需要打开文件并环顾四周,以便准确了解每个元素的含义。坐标信息在哪里,如果有的话?

    http://erica.altschul.info/Tutorial_XML-to-Leaflet.pdf

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-29
      • 1970-01-01
      • 2013-07-01
      • 1970-01-01
      相关资源
      最近更新 更多