为了解决上面的功能需求,一般的GIS系统具备以下几个方面的主要功能:

第一应具备的是,数据采集功能。数据是GIS的血液,贯穿于GIS的各个过程。数据采集是GIS的第一步,即通过各种数据采集设备,如数字化仪、全站仪、调查等,来获取现实世界的描述数据,并输入GIS系统。GIS应该尽可能提供与各种数据采集设备的通讯接口。
第二个应具备的功能是数据编辑与处理,为保证采集来的数据在内容、逻辑、数值上的一致性和完整性,还需要对数据进行编辑、格式转换、拼接等一系列的处理工作。GIS系统应该提供强大的、交互式的编辑功能,包括图形编辑、数据变换、数据重构、拓扑建立、数据压缩、图形数据与属性数据的关联等内容。
第三个应该具备数据存储、组织与管理功能,由于空间数据本身的特点,一般信息系统的中数据结构和数据库管理系统并不适合管理空间数据,GIS必须发展自己特有的数据存储、组织和管理的功能。
第四个应该具备的是空间查询与空间分析功能,虽然数据库管理系统一般提供了数据库查询语言,如SQL语言。但对于GIS而言,需要对通用数据库的查询语言进行补充或重新设计,使之支持空间查询。一个功能强大的GIS软件,应该设计一些空间查询语言,满足常见的空间查询的要求。
第五个应该具备的功能是数据输出与可视化表达,通过图形、表格和统计图表显示空间数据及分析结果是GIS项目的必须。GIS脱胎于计算机制图,因而GIS的一个主要功能就是计算机地图制图,包括地图符号的设计、配置与符号化、地图注记、图幅整饰、统计图表制作、图例与布局等项内容。
最后,GIS系统还需要具备应用模型与系统开发功能,随着GIS在各行各业的应用越来越广泛,常规GIS无法满足各类型的应用需求。因此,GIS也具有相应二次开发功能,用于开发满足特定行业需求的应用模型或应用软件系统。GIS的二次开发功能包通常会提供完整的API和开发环境。

