对比
GeoPackage 与 KML
两者都描述地理信息,但 GeoPackage 是用于多图层和瓦片的 SQLite 数据库,KML 则是用于地图和地球浏览器可视化地理数据的 XML 格式。
应该选择哪种格式?
要打包 GIS 数据、使用 SQL 或离线访问时选 GeoPackage;要分享用于地图展示的地理要素和样式时选 KML。
适用于 GeoPackage
在单个文件中分发和使用地理空间数据
- 为 GIS 或离线使用组合矢量要素、栅格瓦片和属性
适用于 KML
描述要在地图和地球浏览器中显示的地理信息 · 分享地标路径区域说明和显示样式
- 在 Google Earth 和兼容的 GIS 工具中显示地理要素与注释
- 将位置信息与名称说明和显示方式放在一起
基本信息
| 项目 | GeoPackage | KML |
|---|---|---|
| 扩展名 | .gpkg | .kml |
| MIME 类型 | application/geopackage+sqlite3 | application/vnd.google-earth.kml+xml |
| 常见用途 | 在单个文件中分发和使用地理空间数据 | 描述要在地图和地球浏览器中显示的地理信息 · 分享地标路径区域说明和显示样式 |
| 打开方式 | 使用支持 GeoPackage 的 GIS 软件(如 QGIS)打开,并检查图层、坐标参考系和扩展。SQLite 工具可能能显示其表,但解释几何和地图瓦片需要兼容软件。 | 用 Google Earth 或支持 KML 的 GIS/地图应用打开。除了要素位置,还要检查线、面、样式、说明、外部图像和网络链接是否正常。XML 编辑器可查看结构;地图显示效果应在兼容应用中确认。 |
| 导出或转换 | 可以导出为 GeoJSON、Shapefile 或 MBTiles。目标格式未必保留所有图层、属性、坐标参考系或瓦片;导出后应检查要素数量、坐标、属性和地图显示结果。 | 可转换为 GeoJSON 等供 GIS 或网页地图使用的格式。样式、说明、时间戳和外部引用不一定都能保留。请检查坐标顺序、高度处理和目标应用中的显示效果,并保留原始 KML。 |
按用途选择
为 GIS 或离线使用组合矢量要素、栅格瓦片和属性
在单个文件中分发和使用地理空间数据
GeoPackage在 Google Earth 和兼容的 GIS 工具中显示地理要素与注释
描述要在地图和地球浏览器中显示的地理信息 · 分享地标路径区域说明和显示样式
KML将位置信息与名称说明和显示方式放在一起
描述要在地图和地球浏览器中显示的地理信息 · 分享地标路径区域说明和显示样式
KML关键点 1
GeoPackage 遵循 OGC SQLite 架构,可保存矢量要素、栅格瓦片和属性;KML 用 XML 编码地理要素和显示信息。
进一步了解差异关键点 2
GeoPackage 支持多张表及 SQL 查询;KML 用来描述地理应用应显示哪些内容以及如何显示。
进一步了解差异进一步了解差异
需要将多个要素图层、瓦片和属性收在一个数据库文件中,并进行 SQL 查询或离线使用时,选 GeoPackage。要向兼容的地图或地球浏览器软件分发地点、路线、区域和显示样式时,选 KML。转换后核对坐标顺序、高度处理、样式和扩展支持。
- GeoPackage 是符合 OGC 架构的 SQLite 容器,可保存矢量要素、栅格瓦片和属性。KML 是用于地理标注与可视化的 XML 编码。
- GeoPackage 可作为支持 SQL 的多表数据存储;KML 着重在客户端应用中呈现地理内容及其显示属性。
- GeoPackage 保存空间参考信息,也可能使用扩展。KML 坐标采用经度、纬度、高度顺序,转换时需要保留正确的轴顺序和高度含义。
常见问题
KML 能代替 GeoPackage 保存 GIS 数据吗?
并非所有工作流都适用。KML 适合可视化和要素交换;GeoPackage 提供支持多图层、属性、瓦片和 SQL 访问的数据库容器。