基于ArcGIS的领域知识与规则库管理系统的设计与实现
2016-12-20许林艳
许林艳,张 洪
(云南国土资源职业学院,云南昆明 650091)
基于ArcGIS的领域知识与规则库管理系统的设计与实现
许林艳,张 洪
(云南国土资源职业学院,云南昆明 650091)
结合县域农村集体土地确权登记项目和基本农田划定项目在数据处理和建库过程中的数据分析,总结空间数据和非空间数据的一般空间规则和领域知识,设计领域知识与规则库。基于ArcGIS Add-ins插件开发和Geodatabase开发领域知识与规则库管理系统,可动态实现对规则库的可视化添加、修改、删除,以图层和关系表作为操作对象,灵活地添加规则。该系统可扩展为空间数据和非空间数据生产过程中成果的自动检查,保证数据库质量检查过程的流程化和规范化,极大地提高检查效率和准确度。
ArcGIS Add-ins;领域知识与规则库;空间数据质量检查;Geodatabase;GIS
近几年,基于知识与规则的GIS数据检查系统也逐渐应用于不同的空间数据建库质量检查,如农村集体土地所有权和使用权数据库、基本农田划定数据库、土地利用现状数据库等质量检查系统。这些系统以实现某一类空间数据库的质量检查为设计目标,不具有通用性。一种理想的方案是:建立统一的知识与规则库,据此开发专门的数据检查系统,完成数据的自动检查[2]。笔者结合自己在云南省宁洱县农村集体土地确权登记项目和大姚县基本农田划定项目数据处理和建库过程中的实践经验,基于ArcGIS Add-ins插件开发和Geodatabase,以一体化解决不同领域、不同标准的空间数据质量检查为出发点,按照建立通用的空间数据知识与规则体系思路,设计并实现了基于ArcGIS的领域知识与规则库管理系统。
1 领域知识与规则的分类
空间数据领域知识与规则在数据质量检查应用中,主要分为拓扑规则和属性规则2类。拓扑关系是空间认知中最常用的空间信息,用节点、弧段和多边形表示实体之间的邻接、关联、包含和连通关系[3]。在ArcGIS中定义了32种拓扑规则,对诸如点点重合、点线连接、线线相交、面面包含等进行限制,其从底层数据模型上定制对象之间的知识规则,用于控制地理实体的行为。而对于不同领域的空间数据,在这些拓扑规则的基础上,不同的点、线、面空间对象因其空间属性不同和表达要求不同,存在特殊的空间关系,比如:界址点必须与界址线和宗地重合,界址线与界址线之间必须有界址点,同一条界址线必须与2个宗地相邻等。表1列出了ArcGIS中的部分拓扑规则,在这些拓扑规则基础上,又产生多项专门领域的拓扑规则。
表1 ArcGIS中的拓扑规则与领域规则(部分)
属性的质量控制包括描述空间数据本身性质的信息和描述空间数据的专题属性信息,如属性完整性、属性项类型正确性等[4]。属性规则可归纳为两种情况:一是非空间数据表内属性值的规则,比如某个字段值是否允许为空;二是表与表之间的逻辑关系,包括非空间数据之间的关系,以及非空间数据与空间数据属性之间的关系。
2 系统的设计与实现
2.1 ArcGIS Add-ins开发 ArcGIS Add-ins开发是ArcGIS新的开发方式,更容易定制和扩展ArcGIS桌面应用,具有高效、便捷的特点。不同于ArcGIS Engine开发,使用ArcGIS Add-ins开发方式可以省去大量基础功能实现的程序编写工作,例如数据添加、数据编辑、属性浏览等功能的实现,极大地提高了软件的开发效率。另外,在领域知识与规则库的基础上进行数据质量检查与修改,需要结合ArcGIS的很多操作功能,使用ArcGIS Add-ins开发会使操作更方便。
Add-ins工程配置文件Config.esriaddinx的XML文件中可添加交互类项和容器类项,比如Toolbars为容器类,Button为交互类。控件的具体实现方法可通过refID直接调用ArcGIS的COM接口,也可以调用自定义WinForm类,见图1。
图1 ArcGIS Add-ins工程XML文件示例Fig.1 Add-in project XML file example in ArcGIS
2.2 拓扑规则与属性规则数据库设计 采用ArcGIS的个人数据库Geodatabase作为规则数据库。Geodatabase 采用一种开放的结构将空间数据(包括矢量、栅格、影像、三维地形等)及其相关的属性数据统一存放在工业标准的数据库管理系统DBMS中,使用该数据库可以同时操作空间数据(点、线、面矢量数据)和属性表。
ArcGIS中拓扑规则的方法需要几个参数,包括目标图层、参考图层、拓扑规则,属性规则一般使用通用的SQL语句,其中较为复杂并常用的查询在程序中先行设定,见表2。拓扑规则中定义的中文规则说明通过ArcGIS的esriTopologyRuleType枚举关联到对应规则方法,再调用GP工具创建ITopologyRule的实例并传入参数。属性的自定义规则使用SQL语句进行查询。
表2 知识与规则表数据结构
2.3 系统实现 基于GIS的领域知识与规则管理系统主要功能模块包括知识与规则管理、数据检查、常用工具、帮助等。
2.3.1 知识与规则管理。该模块能够实现对规则库的可视化添加、修改、删除,见图2。可以根据不同的领域空间数据库自定义规则,在ArcGIS中添加要设置规则的图层或者属性表,可以只设置空间规则或者属性规则,也可以同时设置两者。在设置属性规则时,可以通过修改SQL条件语句,创建不同图层或属性表,以及不同字段的模糊查询条件。通过该模块可实现拓扑规则与属性规则的一体化管理,建立不同领域的知识与规则,最终形成统一的规则与知识库。
2.3.2 数据检查。该模块是知识与规则库的实例运用,按照待检查的空间数据库类型,选择适当的知识与规则,按照数据质量检查的要求设置流程。检查结果错误列表能在ArcGIS进行空间定位查询,并可使用ArcGIS的编辑工具进行修改。
2.3.3 常用工具。该模块是在开展宁洱县农村集体土地确权登记项目和大姚县基本农田划定项目数据建库过程中编写的较为通用的功能,例如椭球面积的计算、标识码的生成等。
3 结语
实践证明,基于ArcGIS的领域知识与规则库管理系统在宁洱县农村集体土地确权登记项目和大姚县基本农田划定项目建库过程中得到了很好的应用,节省了人工成本,极大地提高了效率。利用ArcGIS作为开发平台,通过对不同领域空间数据库的知识与规则进行归纳和分类,从图形拓扑关系、属性、图属关系等方面建立统一的规则库,并提供数据检查的功能,具有较高的应用价值。
图2 新建知识与规则界面Fig.2 New knowledge and rules interface
[1] 舒飞跃,闾国年,陆婧.土地管理空间数据知识与规则体系框架研究[J].测绘工程,2010,19(5):6-10,14.
[2] 吴长彬,闾国年,舒飞跃.基于知识与规则的地籍数据质量检查方法[J].地理与地理信息科学,2007,23(5):22-25,30.
[3] 王履华,孙在宏,吴长彬,等.基于领域知识和规则库的空间数据库质量检查:以土地集约利用评价数据库为例[J].广东农业科学,2013,40(4):167-170,176.
[4] 徐启恒,张新长,张兴飞.GIS数据检查与质量控制系统的设计与实现[J].测绘通报,2012(5):38-40.
A Design and Realization of ArcGIS-based Domain Knowledge and Rule Base Management System
XU Lin-yan, ZHANG Hong
(Yunnan Land and Resources Vocational College, Kunming, Yunnan 650091)
This paper analyses the data captured during the course of data processing and database construction for county rural collective land ownership registration program and basic farmland use planning program, concludes the general spatial rules and domain knowledge between spatial and non-spatial data, and designs a domain knowledge and rule base. We develop a domain knowledge and rule base management system based on ArcGIS Add-ins and Geodatabase, a system make dynamic realization of rule base visual add-in, change and delete, and flexible operations on rules add-in for layers and relation tables. This system can be extended to automatically check the findings during the generations of spatial and non-spatial data, so as to ensure the flow and standardization of quality inspection, and greatly improve the inspection efficiency and accuracy.
ArcGIS Add-ins; Domain knowledge and rule base; Quality inspection of spatial data; Geodatabase; GIS领域知识(Domain Knowledge)是指一个专门领域重要的问题或概念以及这些问题和概念之间的相互关系[1]。基于知识与规则的GIS数据结构有别于传统的GIS数据结构,它既包含知识表达,也有规则定义,其结构更复杂,但对复杂对象、复杂关系的定义更精确[2]。
云南省地质矿产勘查开发局科技创新基金项目“基于空间数据挖掘技术的数据质量检查方法应用与研究”。
许林艳(1984- ),女,湖南长沙人,讲师,硕士,从事土地资源管理、GIS应用研究。
2016-09-23
S 126
A
0517-6611(2016)33-0234-03