7.9 实存
7.9.1 实存概述
实存定义(occurrence definition)是对一种具有时间延展,且可能具有空间延展的实存的定义。 实存使用(occurrence usage)是实存定义的使用。
实存在时间上的延展称为其寿命(lifetime),覆盖了实存从创建到销毁的时间周期。 实存在其寿命内维持独立性,而它的特征的值可能随时间变化。 实存的寿命在其独立性建立时开始,在其独立性消失时结束。 例如,一辆汽车的寿命在其离开生产线时开始,或者当其获得车辆登记号时。 类似地,汽车的寿命在它被分解或者毁坏时结束。
行为的表现也是一种占据时间的实存。 行为表现的寿命从其表现。。。 结构和行为实存经常是相互联系的。 例如,汽车组织线上的机器在其寿命内,重复地执行行为任务, 每一个行为表现都有其自己的寿命,进一步对在流水线上组装的汽车的建造产生影响。
如果实存定义或使用具有内嵌的复合特征,那么这些特征也必须是实存定义的使用 (包括不同种类的实存特化,例如部件、项目以及动作)。 如果实存在其寿命终结时,其复合特征有值,那么这些复合特征的值的寿命也必须终止。 然而,如果一个复合的子实存在其父实存寿命结束之前被移除, 那么这个字实存可以继续存在。 例如,如果一辆汽车被销毁时,仍然附有车轮,那么这些车轮也会被销毁。 但是如果在汽车销毁之前车轮被移除,那么既是汽车被销毁之后,该车轮也可以继续存在。
时间切片和快照
实存的寿命可以切分为时间切片(time slice),代表一段持续时间。 这些时间切片表示寿命的某个周期或者阶段,例如部署、运维阶段。 时间切片可以再进一步切分。 例如,汽车的寿命可以分为多个时间切片:组装,库存,以及一组由不同车主带来的周期。
时间长度为0的时间切片称为快照(snapshot)。 对任意时间切片,都可以定义开始、结束和中间快照,来表示实存的寿命中特定的时刻。 例如,一辆汽车的每一个所有权时间切片的开始快照,表示这两汽车被出售给一个新的车主, 这和前一个时间切片的结束快照发生在同一时刻。
个体
任意种类的实存定义都可以限制为定义表示一个单独个体(individual)的类,
即一个具有唯一标识的真实或感官上的对象。
例如,考虑部件定义Car,其对所有汽车建模。
具有唯一车辆标识数字的一个汽车个体Car1
,可以建立为一个单独的部件定义模型,
这个模型是一般的部件定义Car的一个子分类。
这样,Car1继承了Car的所有特征(例如引擎、变速器、底盘、车轮等),
但是对于这些特征,都有单独的值。
实存使用也可以限制为一个单独的个体的使用。 个体使用可以用来对一个个体在某段时间内所扮演的角色来建模。 例如,个体部件定义Car1可以在不同的上下文里使用, 比如在服务期间Car1的使用,以及在正常操作期间的使用。 令Car1在