APP下载

基于自定义模板的空间实体对象转换方法研究

2018-11-23田志刚张彦丽赵韶冲

地理空间信息 2018年11期
关键词:实体对象模板

田志刚,张彦丽,赵韶冲

(1.黄河水文勘察测绘局,河南 郑州 450045;2.黄委水文局,河南 郑州 450004;3.菏泽黄河河务局,山东菏泽 274000)

存在于自然世界地理实体中,与空间位置或特征相关联,在空间中不可再分的最小单元称为空间实体[1]。吴信才[2]认为对象数据结构是由对象的一组数据和表达它行为的一组操作共同组成,数据和行为是统一体。李景文[3]等提出了基于对象的时空数据模型,对空间对象的几何信息、属性信息、时间信息进行封装。姜晓轶[4]设计了GOO-STDM空间数据模型,运用面向对象的方法将地学对象封装为空间、专题、时间的整体。面向实体的空间数据模型以现实世界中的实体为基本表达对象,叶亚琴[5]等提出的实体数据模型将地理实体模型表示为要素,由几何实体和属性组成;刘南[6]等提出了面向实体的分布式结构数据对象集合,将现实世界抽象为空间参考系模型、地理几何对象模型、空间数据库模型和元数据库模型,提供实体模型的海量数据支持。

综合上述实体对象的数据描述内容,本文将空间实体对象定义为由时空参照、空间信息、属性特征、关系、组成5个特征构成的数据结构,其中组成描述的是对象的组成部件或部分,是对象之间的相对包含关系。

1 模板定义

地理实体以某种或多种属性特征为划分标准,同类地理实体具有相同的地理属性特征[7]。空间实体对象模型对地理实体的认知过程是相同的,形成对象的关键是抽象,面向对象方法具有很强的抽象表达能力,可将对象抽象为对象类,实现抽象的数据类型,并允许用户自定义[8]。空间实体对象抽象得到空间实体对象模板,将其作为对象的原型以确定对象数据的描述,且用户可自定义数据结构,通过实例化对象模板实现空间实体对象建模。

由于模板处理机制的灵活性和易扩展性,已逐渐成为空间数据转换、传输和组织研究的热点。现阶段数据模板的类型主要分为数据匹配模板、数据转换模板、数据解析模板和数据组织模板4种。数据匹配模板的应用内容主要是数据内容匹配,以影像数据结构为模板与被匹配源进行配准[9-11],以连续的场结构为模板进行地形匹配[12],以及在矢量地图数据中通过模板进行要素匹配[13];数据转换模板提供了数据转换标准和目标数据组织结构[14];数据解析模板是数据内容的描述文件和数据的语义解释方法;数据组织模板是通过模板将不同的数据组件组成完整的数据内容,在三维复杂实体建模中通过模板将简单对象构建为复杂对象。对象模板综合了数据转换模板和数据组织模板的特点。

根据上述对象模板的理论内容和技术,本文提出的空间实体对象模板定义为:对象模板的基本思想是从一组相似的事物中抽象出一种框架模式,任何一个类似的事物都可作为以模板为超类的派生实例。空间实体对象模板是实体数据组织的抽象模板,将具体应用中实体数据的内容和组织方式定义为模板样式,使对象数据能进行规范化组织。

2 对象模板的数据结构设计

2.1 对象模板分类

空间实体对象信息包括对象自身特征信息和对象间关系信息两部分,相应地可将对象模板分为对象原型模板和关系模板。

1)对象原型模板包括对象的时空参照、空间信息、组成和属性信息。对象原型模板的结构和形式化表达可描述为:

对象原型模板=

{

时空参照: {时间参照,空间参照};

空间信息:

{

几何1= {空间标识,尺度,数据类型,数据存储结构,空间参照};

几何n= {空间标识,尺度,数据类型,数据存储结构,空间参照};

}

组成:

{

组成1={对象类型,对象地址,空间参照};

组成n={对象类型,对象地址,空间参照};

}

属性特征:

{

属性1={名称,属性类型,属性值类型,初始值,取值范围,获取方式};

属性n={名称,属性类型,属性值类型,初始值,取值范围,获取方式};

}

}

2)关系模板负责描述空间实体对象的关系信息,包括对象关系类(关系模型)和关系存储结构。关系模板的形式化表达可描述为:

关系模板=

关系类:

{

关系类1={关系类型,关系标识,参数定义,对象类约束};

关系存储结构={存储结构类型,关系节点,关系边};

}

关系类:

关系类n={关系类型,关系标识,参数定义,对象类约束};

关系存储结构={存储结构类型,关系节点,关系边};

对象原型模板和关系模板相对独立地描述了某类空间实体对象和对象间关系的数据组织结构,关系模板需依赖于对象进行实例化。

2.2 对象模板概念设计

在概念层次上的实体被看作是由时空参照、空间信息、组成、属性信息和关系5个特征组成。对象模板是某类空间实体完整特征抽象的集合。根据对象分类原则,空间实体集中可抽象出多个空间实体类,而应用目的决定了对象模板的数据描述框架,因此一种类型的实体可包含多个对象模板,对象模板的概念模型设计如图1所示。

图1 对象模板概念设计

2.3 对象模板逻辑结构设计

空间实体对象模板包括对象原型模板和关系模板。

2.3.1 对象原型模板逻辑结构设计

对象原型模板包括时空参照、空间位置、空间形态、组成结构、属性特征5个特征。在逻辑结构设计时,需要包括对象模板标识数据,通过该标识管理和识别对象模板类型。

1)模板标识(ObjectTemplate),描述模板编码和模板中所描述的对象类别,同时在该处添加继承的上层模板路径。空间实体对象模板标识信息包括模板编码(TemplateID)、模板所描述对象类名称(Name)、对象类型(Type)、继承模板路径(referencePath),其中Type存储了模板所描述的对象类的分类编码。

2)时空参照(STRID),包括时间参照类型(TRID)和空间参照类型(SRID),在模板结构中需选择时间和空间参照类型。

3)空间信息(Spatials)描述中单个空间描述是基于对象空间尺度进行划分的,一个空间描述中数据存储内容可包括一种矢量数据。本文模板中Spatials逻辑结构设计只针对对象二维矢量形态。

Spatials中,对象包含多个形态的“Spatial”,其数据结构包括尺度(Scale)、空间描述名称(Name)和时间(Time),Time描述了对象空间信息的时态记录特点。Part表示空间的组成部分,包含组成部分的名称、形态类型(本文矢量形态统一为Vector2D)。对象模板构建时,需对Name和Scale属性进行初始化,限定基于该对象模板建模的对象空间形态支持的空间尺度。

4)组成。对象模板中组成连接部件对象与组合对象,Parts结构描述了对象组成数据的标识。Parts结构中,Name表示对象组成部分的名称,ID表示组成结构编码,在对象组成结构信息初始化时动态分配,RefType表示组成结构的类型,RefObjectID表示该组成部分所引用的对象编码,RefObjectType表示组成部分的对象类型。构建模板时需对组成结构中RefType和RefObjectType的属性进行初始化,约束对象组成结构中部件对象类型。

5)属性特征(Attr)。对象模板中,Attr是模板定义的公有属性,是对象实例化所必须包含的属性项,是基于模板的实例化对象的必要属性信息。

Attr结构中的Type属性描述了对象的类型,不同类型属性的数据描述方式不同,动态属性是具有时间标签的连续记录信息,静态属性描述了与时间没有关联的信息。在对象模板中,公有属性需初始化的内容包括Attr中的Name、ValueType、Type和ValueRange。

2.3.2 关系模板逻辑结构设计

关系模板中包括关系模板标识和关系类两方面信息,关系模板标识负责识别和管理关系模板,关系类是模板中设计的对象关系模型。

1)模板标识,包括模板编码(TemplateID)、模板名称(Name)和继承模板路径(referencePath)。

2)关系类(ObjectRelationClass),包括类名称(Name)、关系类型(Type)、类编码(ID)、关系数据存储类型(RelationType),其中RelationDataType表示该关系类实例化的数据存储结构,构建关系的对象类约束目录(Category)。ObjectRelationClass通过节点参数(NodeParameters)、边参数(EdgeParameters)和环参数(RingParameters)进行定义。

2.4 模板生成工具的设计

模板生成工具实现了对象模板的可视化创建和特征内容编辑,以及对象之间关系交互式的构建和对象模板文件的导出导入;同时提供了模板文件在SQLite数据库中的存储方法,便于对象模板文件的存储、管理和重用。模板生成工具实现了对象模板的生成和存储。

图2 对象模板生成工具模型类图

图2为对象模板生成工具的模型类图,模板的创建过程统一在TemplateEditFrame中进行管理,模板可视化创建在GraphFrame中进行,ObjectClassFactory中包含了模板创建所需的基本结构,AbstratEdge中描述了模板间的关系,Storage负责存储管理创建后的模板。

3 实验验证

根据空间实体对象的生成步骤和创建的模板生成工具,将1∶500比例尺下的郑州市地铁OSM数据、郑州市地铁CAD数据转换为城市地铁空间实体对象,展示矢量地图数据自动化生成空间实体对象的转换过程。数据源基本信息如表1所示,生成的空间实体对象类型如表2所示。地铁1号线站点转换后的空间实体对象数据如图3所示,转换后的空间实体对象通过多粒度时空独享建模工具进行显示,结果如图4所示。

表2 数据转换结果描述

图3 地铁1号线地铁站空间实体对象

图4 地铁实体对象数据可视化

4 结 语

在综合现有空间实体定义的基础上,本文提出了一种基于模板实现空间实体数据自定义的数据构建机制,详细设计了基于模板的空间实体数据组织方法,以及模板的概念模型和逻辑模型,并创建了模板生成工具。基于对象模板实现了郑州市OSM数据和地铁站CAD数据的融合和信息重构,并通过空间实体对象数据转换结果和可视化效果验证了本文方法的可行性和科学性。

猜你喜欢

实体对象模板
铝模板在高层建筑施工中的应用
铝模板在高层建筑施工中的应用
涉税刑事诉讼中的举证责任——以纳税人举证责任为考察对象
前海自贸区:金融服务实体
攻略对象的心思好难猜
实体的可感部分与实体——兼论亚里士多德分析实体的两种模式
两会进行时:紧扣实体经济“钉钉子”
振兴实体经济地方如何“钉钉子”
基于熵的快速扫描法的FNEA初始对象的生成方法
区间对象族的可镇定性分析