第05章 数据模型:把“图”变成“数据”
本章导读
多测合一要求成果“多部门共用、可入库、可校验、可追溯”,落到工程上就是一句话:把一张张图形文件变成要素集合。本章按“骨架—身份—结构—内容—关系与时间”的顺序展开:5.2 节建要素分类,5.3 节定唯一标识,5.4 节做分层组织,5.5 节设计属性,5.6 与 5.7 节处理拓扑和时态,最后用 5.8 节的元数据最小集与 5.9 节的宗地要素示例,把前面几条原则落成一个可以逐项检查的设计。两处最容易做错:一是把“统一”理解成“归一”,拿一个面积字段应付所有部门;二是拿图形句柄或记录行号当标识,几何一改,历史关联全部断裂。还有一条提醒常被跳过:字段不是越多越好,判断标准是它有没有被业务规则引用、取值能不能被验证。读完你会明白,数据模型的成本不在建库那一天,而在你为将来留了几个可追溯的接口——这也正是第 6 章要把 CAD 到 GIS 那段路逐环节拆开的原因。
学习目标
读完本章,你应当能够:
- 复述 5.1 节表 5-1 中 CAD 图形与 GIS 要素在基本单元、语义、属性、关系、空间参考、标识、版本七个维度上的差异,并各说一句它对多测合一的影响;
- 区分 5.2 节的“核心类 + 扩展属性”两层结构与“取交集”“取并集”两种做法,说明后两者为什么会分别导致丢信息与失控;
- 对照表 5-2,说出项目级、测绘批次级、空间对象级、成果级四层标识的分配时机与稳定性要求,并指出空间对象级标识最容易被忽视的原因;
- 判断一个属性字段该不该设(依据 5.5 节三条标准),并从表 5-4 中挑出“测绘时点”“数据来源”两项,说明缺了它们为什么就无法兑现“未变化直接沿用”;
- 解释 5.6 节表 5-5 的拓扑规则如何把标准变成可执行的检查,任选两条说明它们各自拦截什么问题、在哪个时机检查;
- 拆解 5.7 节表 5-6 三种时态模型的取舍,为“变化补充测绘”选定一种,并写出实现要素级时态所需的最小字段。
5.1 核心转变:从“图形文件”到“要素集合”
CAD 与 GIS 的根本区别不在于能不能画图,而在于对“对象”的理解方式。
在 CAD 中,一张图是一堆几何图元:直线、多段线、圆弧、块参照、文字。这些图元之间没有语义关系——两条线是否构成一个闭合多边形,CAD 不知道;一个块参照代表一栋楼还是一棵树,取决于图层名和图例约定;图元的属性只存在于文字标注中,是给人看的。
在 GIS 中,数据是要素(feature)的集合:每个要素有几何(geometry)、有属性(attributes)、有空间参考(CRS)、有唯一标识(ID),要素之间有拓扑关系。一栋楼是一个面要素,它有层数、结构、用途、建筑面积等属性;它与其他要素(宗地、绿地、道路)有明确的空间关系,可以查询、可以校验、可以统计。
多测合一要求成果“多部门共用、可入库、可校验、可追溯”,本质上就是要求图形文件变成要素集合。
表 5-1 CAD 图形与 GIS 要素的差异对照
| 维度 | CAD 图形 | GIS 要素 | 对多测合一的影响 |
|---|---|---|---|
| 基本单元 | 图元(线、弧、块) | 要素(点、线、面、体) | 决定能否按对象管理 |
| 语义 | 靠图层与图例约定 | 显式分类编码 | 决定能否跨部门识别 |
| 属性 | 文字标注,非结构化 | 字段化,可查询统计 | 决定能否自动计算与校验 |
| 关系 | 无显式关系 | 拓扑关系可定义与检查 | 决定能否保证一致性 |
| 空间参考 | 图形单位,隐含 | 显式 CRS,可转换 | 决定能否与其他数据套合 |
| 标识 | 无唯一标识 | 全局唯一 ID | 决定能否追溯与关联 |
| 版本 | 文件版本 | 数据版本、要素级版本 | 决定能否增量更新 |
5.2 要素分类:多测合一数据模型的骨架
数据模型的第一件事是要素分类(feature classification)——把现实世界中的对象划分为若干类别,每类有明确的定义、几何类型、属性结构。
多测合一的要素分类需要同时满足三个约束:
约束一:覆盖六项测绘事项的全部产出对象。 包括宗地、界址点、界址线、建筑物(基底、分层轮廓)、房屋(分户单元)、绿地、道路、人防工程、地下空间、控制点等。
约束二:与上游标准兼容。 地籍要素要能对应地籍调查规程的分类,房产要素要能对应房产测量规范的分类,规划要素要能对应规划管理的数据要求。
约束三:与下游系统兼容。 要能映射到不动产登记数据库、国土空间规划“一张图”、工程建设项目审批系统的数据要求。
三个约束往往冲突。解决冲突的方式不是“取交集”(会丢失信息),也不是“取并集”(会失控),而是建立“核心类 + 扩展属性”的两层结构:
- 核心类:跨事项共用的、必须统一的要素类型(如宗地、建筑物、房屋),分类编码全国统一或省级统一;
- 扩展属性:各事项特有的属性,放在扩展字段中,不改变核心类的结构。
这种设计的好处是:核心类保证了跨部门的最小共识,扩展属性保留了专业深度。附录 D 多测合一成果数据字典设计建议 会给出具体的类设计建议。
5.3 唯一标识:为什么它比想象中重要
政策说“同一标的物只测一次”,工程上要兑现这句话,前提是系统能认出“这是同一个标的物”。
这需要唯一标识(identifier)。多测合一中的标识体系至少有四层:
表 5-2 多测合一中的标识层级
| 层级 | 标识对象 | 标识示例形式 | 分配时机 | 稳定性要求 |
|---|---|---|---|---|
| 项目级 | 一个工程建设项目 | 项目编码(与工改系统一致) | 项目登记时 | 全生命周期不变 |
| 测绘批次级 | 一次多测合一委托 | 批次编码(项目编码 + 阶段 + 序号) | 合同备案时 | 不变 |
| 空间对象级 | 宗地、建筑物、房屋等 | 对象 ID(可用行政区划码 + 类别 + 顺序号) | 首次测绘时 | 尽量不变,变更时保留 |
| 成果级 | 一份成果文件/数据集 | 成果编号(批次编码 + 成果类型 + 版本) | 成果提交时 | 版本号递增 |
其中最容易被忽视的是空间对象级标识。很多系统用“图形句柄”或“记录行号”作为标识,结果每次图形更新,标识就变了,历史关联全部断裂。
正确做法是给空间对象分配与几何无关的稳定 ID,几何变化时 ID 保持不变,通过版本记录变化。 这在技术上属于“对象标识与几何分离”的设计,成本很低,但能避免后续大量的关联维护工作。
不动产登记中的不动产单元代码是这一层标识的国家级实践——它由县级行政区划代码、地籍区、地籍子区、宗地/宗海特征码、定着物特征码等构成,具有全国唯一性。多测合一的房屋、宗地标识应当与之衔接,而不是另起一套。
5.4 分层组织:从“一个文件”到“一组图层”
数据模型的第二件事是分层(layering)——按要素类别把数据组织到不同的图层中。
分层不是随意的技术选择,它决定了后续所有操作的成本:
- 分层的粒度:太粗(所有面要素放一层)会导致难以按类查询与校验;太细(每个属性组合一层)会导致图层爆炸、维护困难。
- 分层的命名:应当有明确规则(如“类别代码_几何类型_用途”),而不是“新建图层1”。
- 分层的稳定性:图层结构一旦确定,后续版本应当保持兼容,否则所有下游系统都要改。
一个可供参考的分层结构如下表。需要强调:这只是示意,实际设计必须结合当地技术规程与既有数据库结构。
表 5-3 多测合一成果的图层组织示意
| 图层组 | 图层示例 | 几何类型 | 主要属性 | 对应事项 |
|---|---|---|---|---|
| 控制 | 平面控制点、高程控制点 | 点 | 点号、等级、坐标、高程、施测日期 | 全部 |
| 地籍 | 宗地、界址线、界址点 | 面/线/点 | 宗地代码、面积、用途、界址点号 | 土地核验、地籍 |
| 建筑 | 建筑基底、建筑分层轮廓、建筑角点 | 面/面/点 | 建筑编号、层数、高度、结构、用途 | 规划核实、房产 |
| 房屋 | 房屋分户单元、共有部位 | 面/面 | 房屋编号、建筑面积、套内面积、分摊面积 | 房产实测绘 |
| 绿地 | 绿地地块、乔木、古树名木 | 面/点/点 | 绿地类型、面积、覆土深度 | 绿地核实 |
| 人防 | 人防工程范围、防护单元、出入口 | 面/面/点 | 防护等级、面积、净高、覆土厚度 | 人防核实 |
| 交通 | 道路、停车位、出入口 | 线/面/点 | 道路等级、宽度、车位类型 | 规划核实 |
| 管线 | 管线、管点(若纳入) | 线/点 | 管线类型、管径、埋深 | 视地方要求 |
| 注记 | 各类注记 | 注记 | 文字内容、样式 | 出图 |
5.5 属性设计:字段不是越多越好
属性字段的设计有两个相反的失败模式:字段太少,无法支撑业务判断;字段太多,无人维护、无人使用。
判断一个字段是否必要的标准,本报告建议用三条:
-
它是否被某个业务规则引用? 如果没有任何校验规则、统计报表或审批判断用到它,就不该设。
-
它的取值是否可被验证? 如果一个字段的值只能靠人工填写且无法核对,它的可靠性很低,应当谨慎使用。
-
它是否有明确的定义与取值范围? “备注”这类字段大量存在时,说明前两条没做好。
以“建筑物”要素为例,一个经过精简但仍能支撑业务的属性集可能是:
表 5-4 建筑物要素的属性设计示例
| 字段名 | 类型 | 必填 | 取值约束 | 用途 |
|---|---|---|---|---|
| 建筑编号 | 字符串 | 是 | 项目内唯一 | 对象标识 |
| 建筑名称 | 字符串 | 否 | — | 展示与报告 |
| 结构类型 | 枚举 | 是 | 按标准分类表 | 登记与统计 |
| 地上层数 | 整数 | 是 | ≥1 | 规划核实 |
| 地下层数 | 整数 | 否 | ≥0 | 规划核实、人防 |
| 建筑高度 | 数值 | 是 | >0,单位米 | 规划核实 |
| 建筑基底面积 | 数值 | 是 | >0,单位平方米 | 密度核算 |
| 建筑面积(规划口径) | 数值 | 是 | >0 | 容积率核算 |
| 建筑面积(房产口径) | 数值 | 否 | >0 | 与房产成果核对 |
| 用途分类 | 枚举 | 是 | 按标准分类表 | 登记、统计 |
| 测绘时点 | 日期 | 是 | — | 时效判断 |
| 数据来源 | 枚举 | 是 | 实测/沿用/转绘 | 质量追溯 |
注意最后两个字段——“测绘时点”与“数据来源”。它们在很多设计中被省略,但恰恰是实现“未变化直接沿用、变化补充测绘”的基础。没有数据来源标记,系统无法区分哪些数据是本次实测的、哪些是沿用历史成果的;没有测绘时点,无法判断数据是否已经过期。
5.6 拓扑:让“关系”成为可检查的对象
拓扑(topology)是 GIS 相对于 CAD 最具区分度的能力之一。它把“要素之间的空间关系”从隐含变为显式,从而使关系可以被检查、被强制。
多测合一需要的关键拓扑规则包括:
表 5-5 多测合一的关键拓扑规则
| 规则 | 表达式(概念) | 违反的后果 | 检查时机 |
|---|---|---|---|
| 宗地不重叠 | 任意两宗地面交集面积 = 0 | 权属冲突 | 入库前 |
| 宗地无缝 | 相邻宗地共用同一界址线 | 面积不闭合、漏登记 | 入库前 |
| 界址点在线端 | 每个界址点位于界址线端点 | 界址表达不一致 | 入库前 |
| 建筑底面闭合 | 面要素首尾节点重合 | 面积计算失败 | 构面后 |
| 建筑不越界 | 建筑基底面在宗地内(或按规则允许越界) | 违建嫌疑 | 核实前 |
| 房屋分户不重叠且覆盖整栋 | 分户面并集 = 建筑楼层平面 | 面积漏算或重算 | 房产计算前 |
| 绿地不与建筑重叠 | 绿地面与建筑基底面交集面积 = 0 | 绿地率虚高 | 核实前 |
| 控制点不重合冲突 | 同一点号不出现两个坐标 | 基准混乱 | 数据合并时 |
拓扑检查的价值不只是“发现问题”,更在于它把标准变成了可执行的代码。一条“相邻宗地必须共线”的规则,写进规程是文字,写进系统是可以每次运行、每次报错的检查项。
5.7 时态:多测合一最容易被低估的维度
传统测绘成果是“某一时刻的快照”。多测合一要求“未变化直接沿用、变化补充测绘”,这要求数据具备时态能力。
时态数据模型有三种常见实现方式,各有取舍:
表 5-6 三种时态数据模型的取舍
| 方式 | 实现方式 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|---|
| 快照式 | 每个时点存一份完整数据集 | 实现简单、查询快 | 存储膨胀、变更识别需比对 | 数据量小、变更少 |
| 版本式 | 整体版本号 + 变更集 | 存储经济、可回溯 | 查询需还原版本 | 中小规模项目 |
| 要素级时态 | 每个要素带生效/失效时间 | 精确到对象、支持增量 | 实现复杂、需严格约束 | 大规模、频繁变更 |
对多测合一而言,要素级时态是最贴合需求的,因为“变化补充测绘”的本质就是“部分要素新增、部分要素修改、部分要素沿用”。
实现要素级时态的最小方案是给每个要素增加三个字段:生效时间、失效时间(空值表示当前有效)、变更类型(新增/修改/删除/沿用)。这个方案实现成本不高,但能让系统回答“这个宗地在上一次测绘时是什么样”这类问题。
5.8 元数据:成果的“身份证”
一份合格的多测合一成果,除了数据本身,还必须携带元数据(metadata)。元数据不是可选附件,它是成果合法性的组成部分——没有元数据的成果,接收方无法判断它是否可用。
表 5-7 多测合一成果元数据的最小集
| 类别 | 元数据项 | 说明 |
|---|---|---|
| 标识 | 成果编号、项目编码、批次编码、版本号 | 唯一标识与追溯 |
| 责任 | 委托方、测绘单位、资质证书编号、项目负责人、注册测绘师(若有) | 责任主体 |
| 时间 | 外业起止时间、内业完成时间、提交时间、审核时间 | 时效判断 |
| 空间 | 坐标系、投影参数、高程基准、成图比例尺、覆盖范围 | 可用性判断 |
| 技术 | 执行标准(标准号与名称)、精度指标、检查方式 | 合规判断 |
| 质量 | 检查项数、合格项数、问题清单、检查人、检查结论 | 质量证据 |
| 数据 | 图层清单、要素数量、属性字段清单、数据格式、文件清单 | 内容清单 |
| 安全 | 密级、保密期限、使用范围、共享条件 | 合规控制 |
| 变更 | 相对上一版本的变更摘要、变更要素清单 | 增量依据 |
这张表里,“执行标准”与“质量”两栏经常被简化成一句“符合规范要求”。这种简化在多测合一的语境下是危险的——多部门共用一份成果,每个部门都需要知道这份成果是依据哪一版标准做的。
5.9 一个具体的设计示例:宗地要素
把前述原则落到一个具体要素上,可以看得更清楚。
表 5-8 宗地要素的完整设计示例(示意,非标准)
| 组成部分 | 内容 |
|---|---|
| 几何 | 面(Polygon),由界址线闭合构成,允许内环(飞地、扣除区) |
| 标识 | 宗地代码(衔接不动产单元代码规则)+ 内部对象 ID |
| 基本属性 | 宗地面积、用地面积、土地用途、使用权类型、权利性质、容积率上限、建筑密度上限、绿地率下限 |
| 空间属性 | 所在行政区、地籍区、地籍子区、所在图幅号、中心点坐标 |
| 时态属性 | 测绘时点、生效日期、失效日期、变更类型 |
| 质量属性 | 数据来源(实测/沿用/转绘)、精度等级、检查状态 |
| 关联关系 | 包含的建筑物、相邻宗地、关联的规划许可、关联的不动产单元 |
| 元数据引用 | 所属成果编号、所属批次 |
这个示例说明了一件事:一个“面”在 GIS 里可以承载的信息量,远大于 CAD 图上的一个闭合多段线。 多测合一的技术价值,很大程度上就体现在这个信息量的差异上。
本章小结
数据模型是“把图变成数据”的核心工作,包含五个要素:要素分类(骨架)、唯一标识(身份)、分层组织(结构)、属性设计(内容)、拓扑与时态(关系与时间)。严格说这是六个维度,本报告把“拓扑”与“时态”并列为第五项,故称五个要素。
关键判断有三条:
-
分类要建“核心类 + 扩展属性”的两层结构,避免取交集丢信息、取并集失控;
-
标识必须与几何解耦,几何变化时 ID 不变,靠版本记录变化;
-
面积等关键指标要按口径分字段存储,不做全局归一(详见第 3 章 3.3 节)。
时态能力是多测合一中最容易被低估的维度,但它直接决定了“只测一次”能否兑现。
思考与练习
- 某市一个竣工验收项目的成果里同时有宗地、建筑基底与房屋分户单元,作业组只设了一个“建筑面积”字段,所有部门都按它取数。请按 5.2 节的核心类思路和第 3 章 3.3 节的口径要求,说明问题出在哪一步,并写出字段拆分方案。
- 某测绘单位的数据库用图形句柄作房屋编号,一次界址调整后,同一批房屋的历史关联全部对不上。请按 5.3 节的四层标识判断问题出在哪一层,写出修复思路,并说明版本变化应当记在哪里。
- 某项目的属性表里“备注”字段填写率很高,取值无法核对,也没有任何校验规则或统计报表引用它。请用 5.5 节的三条标准判断该字段的去留,并说明表 5-4 中哪些字段属于必须保留的必填项。
- 找出你所在地区多测合一技术规程中的数据字典,或本单位现行成果的字段表,与表 5-3 的图层组织和表 5-4 的字段设计逐项比对:列出本地有而本章未列的、本章有而本地未列的,并说明差异是口径不同还是遗漏。
- 今天就动手:从手上最近一份成果的图层清单里选一个要素(宗地或建筑),按 5.9 节的结构写出它的几何、标识、基本属性、空间属性、时态属性、质量属性与关联关系,标出缺项,并写明每一项由谁补、什么时候补。
| 上一章:第04章 空间基准:一切统一之前的统一 | 返回目录:多测合一业务全景教程 | 下一章:第06章 从 CAD 到 GIS:一段被严重低估的路 |