面向对象整体 GIS 数据模型的设计与实现

肖乐斌,钟耳顺,刘纪远, 宋关福

(1 中国科学院遥感应用研究所 , 北京  100101 ; 2 中国科学院地理科学与资源研究所 , 北京  100101)

论文来源:地理研究 第21卷 第1期 2002年 1月

摘要:本文在前期 GIS 概念数据模型研究的基础上 , 提出了面向对象整体 GIS 数据模型 , 并针对整体 GIS 软件的实现在系统数据组织、存储结构与访问机制方面进行了较为深入的探讨 , Deskpro 最后简单介绍了基于整体 GIS 数据模型的商品化软件 ———SuperMap Deskpro 的实现情况。

关键词: 面向对象 ; 整体数据模型 ; 系统数据组织 ; 存储与访问

1  引言

经过几十年的发展 , 今天的 GIS 系统已经具备了较强的数据存贮、管理和输入输出功能 , 但目前大多数的 GIS 仍然是以数据为中心的 , 在完整表达客观地理世界、进行高层次的空间分析和直接提出决策方案的能力方面还远远不够 , 导致这种情况的根本原因在于现有 GIS 的数据模型不能准确地表达客观地理世界。为此 , 作者为现有 GIS 软件总结了两种典型的数据模型[1 ] : 拓扑关系数据模型和面向实体的数据模型 , 并分析了它们各自的优缺点 , 指出应该在整体论的基础上为地理空间建立一个能够直接反映人们认知的整体数据模型。

2  面向对象的整体数据模型

GIS 本质上是对客观地理世界的近似模拟 , 其理想状态应该是尽可能准确地反映地理世界 , 同时做到数据量最小 , 又便于人们从中获取所需要的信息和规律。要达到这种理想状态 , 我们需要做好两步工作 : 1) 准确理解地理空间 ; 2) 为地理空间建立面向对象的整体数据模型 ———一个基于地理空间整体论、完全以面向对象方式组织的 GIS 数据模型。

地理空间的理解可以简单概括为[1 ] : 地理空间是一个目标组合排列集 , 每个目标或对象都具有位置、属性和时间信息 , 及与其它对象的拓扑关系、语义关系等。基于这一认识 , 可以得到表达地理空间的整体 GIS 数据模型的如下特征 :

· 将地理空间按照人的思维方式理解为基于目标的空间和定义在地球表层目标集上的关系。除了要研究对象的几何位置及拓扑关系外 , 还要重视研究对象间的语义关系。

· 整体数据模型虽然要求我们将客观世界作为整体看待 , 但在执行具体的数据组织时也需要对众多的地理实体进行分层。分层是基本的和必要的 , 但由于为一种目的进行的分层很难满足另外的需求 , 因此重要的不是提供一种通用的分层 , 而是对方便地加入、删除对象等维护层的操作予以足够的支持。复合图层含有不按对象维数分层的含义 , 能够很好地体现客观世界的整体特征 , 为不同层中的关联对象或用户感兴趣的不同类型对象提供了一个集中存贮与交互的独立空间 , 整体数据模型尤其应该增强复合图层的功能 , 使用户能够自由地加入、删除、修改、查询任意类型 (点、线、面和复杂实体) 的地理实体 , 同时能够进行强大的空间分析。

· 虽然传统的 GIS 数据模型常将基于对象的模型用矢量结构表达 , 而将基于场的模型用栅格结构表达[2 ,3 ] , 其实可将对象和连续场这两种看似对立的模型统一在面向对象的整体数据模型中 , 因为面向对象的方法作为一种框架不仅可以描述基于对象的模型 , 也可以描述基于场的模型[3 ,4 ] 。

· 空间对象是处在三维空间中的 , 并具有多尺度特征。

·整个数据模型完全以面向对象的方式组织。