我想用MOF 层模型来表达对象图和类图之间的关系。
由于对象图 (OD) 是类图 (CD) 的一个实例,因此我得出结论,OD 必须位于 CD 下方的层上(例如 M0 中的 OD 和 M1 中的 CD)。
令我困惑的是,对象图和类图似乎都在 M1 层,因为它们都是 M2 层中的 UML 元模型的实例。
我在这里想念什么?
我想用MOF 层模型来表达对象图和类图之间的关系。
由于对象图 (OD) 是类图 (CD) 的一个实例,因此我得出结论,OD 必须位于 CD 下方的层上(例如 M0 中的 OD 和 M1 中的 CD)。
令我困惑的是,对象图和类图似乎都在 M1 层,因为它们都是 M2 层中的 UML 元模型的实例。
我在这里想念什么?
MOF
出于在容器中交换图表的目的,AFAIK未定义(也不需要)图表关系,因此不施加任何层约束。
这就是我得出结论的地方:
1.
...
Object diagram
可以被视为实例级别class diagram
,显示类和接口(对象)的实例规范、具有值规范的槽和链接(关联实例)...
2.
Object diagram
在现已过时的UML 1.4.2 规范中定义为...UML 2.4 规范只是没有提供对象图的定义......
请注意,UML 2.5 标准图表层次结构(请参阅UML 2.5 图表概述)显示并且
class diagrams
完全不相关......object diagrams
......我真的对所有这些混乱感到头疼...... OMG,请修复它!
3.
omg.org:图表定义,1.0 版,2012 年 7 月说:
图 7.2 - UML 的图定义架构示例
9.3.1图交换→分类器描述→图[类]
图表是图表元素图表的抽象容器...
...它也可以由抽象语法模型的元素拥有,或者根本不属于任何元素......
...图可以从抽象语法模型中引用模型元素,在这种情况下,整个图被认为是该元素的描述(例如,活动图是 UML 活动的描述)。
或者,没有这种引用的图只是其图元素的布局容器(例如,类图是 UML 类形状和边缘的容器)