浅述XML在GIS数据转换中的应用

时间:2022-08-16 10:15:09

浅述XML在GIS数据转换中的应用

[摘要]本文论述了基础地理信息数据建设中的数据交换模式,分析了各个模式存在的数据转换问题,设计了以XML文件作为交换格式的转换方法,并应用于Walk数据的转换中,取得较好的效果。

[关键字]数据转换 交换格式 XML Walk

[中图分类号] N94 [文献码] B [文章编号] 1000-405X(2013)-3-293-2

0 前言

随着我国测绘与地理信息行业的快速发展,涌现出一批优秀的数据采集平台(如Cass、EPS、Walk等)和GIS基础平台(如GeoStar、MapGIS、SuperMap等),再加上国外行业软件(如AutoCAD、MicroStation、ArcGIS、MapInfo等),这就使得基础地理信息数据建设中面临的空间数据格式多种多样。城市基础地理信息系统建设的核心在于数据及基于数据的服务,因此进行各类数据转换的研究具有重要的现实意义。

1 数据交换模式

目前,实现数据交换的模式大致有4种:直接数据访问模式、数据互操作模式和空间数据共享平台模式以及外部数据交换模式。直接数据访问模式是利用软件自身的打开或者导入其他数据格式的功能模块来实现异构数据的访问,但是这种模式往往会受到数据格式兼容性以及软件功能模块的限制,往往开打或者导入的数据有一些损失。数据互操作模式和空间数据共享平台模式提供了较为理想的数据共享方式,适合于成果数据的应用,对于基础数据的建设不太适合。外部数据交换模式一般能较完整地反应数据的信息,如一些软件商提供了明码的交换格式(如AutoCAD的DXF格式、ArcGIS的E00格式、MapInfo的MIF格式、EPS的EXF格式、Walk的Wex格式等)以便与其他软件交互,这种模式在具体的工程应用中更具可操作性和现实性。

很多交换格式虽然能够诠释自己的数据格式,但是设计得非常复杂,要完整解析还是比较困难的事情。而且由于数据采集平台与GIS基础平台数据格式的差异,也使得一些交换格式在转换的时候出现了数据信息的丢失和数据的冗余,所以这些交换格式有些时候显得不太实用。常见的数据采集平台都提供了脚本语言,而GIS基础平台都提供了组件开发包,这为我们自定义实用的交换格式提供了接。

交换格式的设计须遵循以下几个原则:(1)满足空间数据库建设的需要;(2)能完整地诠释原始数据格式;(3)能被无损地转为GIS数据;(4)尽量减少数据的冗余(5)方便转换模块的设计(6)转换过程灵活、适应性强。以XML定义的交换格式就符合这样的要求。

2 XML简介

XML是Extensible Markup Language的简写,意为可扩展的标记语言。XML提供了一个标准,可以根据实际需要定义新的置标语言,并为这个置标语言规定它特有的一套标签。准确地说,XML是一种元置标语言,它允许根据提供的规则,制定各种各样的置标语言。XML有以下特点:

(1)XML文档的内容和结构完全分离。这个特性为XML的应用带来了很大的好处。基于这样的特点,企业系统可以轻松地实现内容管理和流程管理的彻底分离。

(2)互操作性强。大多数纯文本的文件格式都具有这个优点。纯文本文件可以方便地穿越防火墙,在不同操作系统上的不同系统之间通信。而作为纯文本文件格式,XML同样具有这个优点。

(3)规范统一。XML具有统一的标准语法,任何系统和产品所支持的XML文档,都具有统一的格式和语法。这样就使得XML具有了跨平台跨系统的特性。

(4)支持多种编码。相对于普通文本文档而言,XML文档本身包含了所使用编码的记录,这方便了多语言系统对数据的处理。

(5)可扩展性。XML是一种可扩展的语言,可以根据XML的基本语法来进一步限定使用范围和文档格式,从而定义一种新的语言。

3 XML交换格式设计

目前,微软的.Net FrameWork开发平台提供了专门的开发包来操作XML文件,特别是在预先定义好可序列化的类后,可直接将XML文件反序列化为类的对象,这样可以大大减轻解析XML文件的开发工作量。以下是以XML为交换格式的数据转换的流程:

下面以Walk数据的输出为例,详细介绍XML交换格式的定义过程。

一个Walk数据中包含多个图层,每个图层中包含要素、注记和符号,每个要素或者注记都有式样属性,每个式样都有一个符号与之对应,要素又包含几何对象和属性。因一般GIS平台中的符号库都无法兼容,因此在交换格式中不设计符号。图1是设计的可序列化类的UML图,图2是XML文件的实例。

XML文件可以在Walk平台下编制WalkScript脚本程序输出,读取时则可用.Net和目标GIS平台组件解析转换,转换时需要详细了解两种格式之间差异,数据表达方式不同时,用作出最接近的转换,因转换不是本文的重点,这里就不做累述。

5 结论

利用现有软件转换有损失或者冗余时,以XML定义的交换格式能够完整地诠释原始数据格式,在.net FrameWork开发平台下可以方便的读取并可以简化转换模块的设计,可操作性强。但由于XML格式是文本格式,且里面包含了很多的标签,这就使转换的文件数据量较大,所以这种转换方法不适合于大数据量的转换。

参考文献

[1]白海丽,石金峰,赵飞.基于GIS的空间数据集成方法研究[J].辽宁工程技术大学学报.2005年S1期.

[2]王海芹,杨永侠,严泰来.MapGIS到ArcSDE的数据转换方法与实践[J].国土资源遥感.2005年03期.

[3]袁淑芳,张献州.GIS中CAD数据转换方法的研究[J].四川测绘.2005年03期.

[4]曹国云,张伟.AutoCAD数据到GIS空间数据转换技术和方法的研究[J].安徽农业科学.2006年22期.

[5]熊光彩,莫蓉,赵歆波,张定华.XML文档对象模型研究与应用[J].计算机工程与设计.2002年05期.

上一篇:基因表达式编程在建筑物沉降预测中的应用研究 下一篇:徕卡TCA1800全站仪后处理软件的设计开发