真实世界的对象是很复杂的,该如何对其进行编码,使其数字化呢?这其中需要一个数据模型来描述真实世界(与海域及航海相关)的对象。
从面向对象的角度看:
- 真实世界里的一个实体相当于模型中的一个物标(如一个锚地),它拥有一个全局并唯一的标识符和若干属性(比如名称,锚地类型,是否受限,描述信息等);若物标之间存在联系,则用标识符作为外键进行关联;
- 特征物标没有地理信息,但包含描述信息(如海图的更新数据,并没有地理位置信息);
- 空间物标必须有地理信息,可能包含描述信息(如锚地的边界的经纬度);空间物标必须关联一个特征物标(如锚地至少拥有名称)
- 为便于真实世界实体非位置描述信息的有效交换,本数据模型定义了四类特征物标:
- 元物标:包含其他物标的信息(如锚地位置精度、编译比例尺等的);
- 制图物标:包含与海图绘制相关的信息(如锚地绘制区域,罗经花等);
- 地理物标:包含真实世界实体的描述信息(大部分物标归于此类,如指明某一空间位置为锚地等);
- 集合物标:包含物标之间的关联信息(如陆地上叠加桥梁等关联信息);
- 有多种方法来表示真实世界实体的空间特性,本模型仅采用矢量模型,一个空间物标由简单的点、线、面组成:
- 孤立节点包含在面中(如水深点);
- 点相互连接(成为连接节点),组成边;
- 面的界限为边,同时相连面之间的边可以共用;
本模型还是很抽象,对于真实世界的实体(如锚地),并不能轻易的通过该模型将其数字化,必须进一步学习海图文件和其更新文件的内部结构。