这种关系可以用UML建模吗?

这种关系可以用UML建模吗?,uml,aggregation,Uml,Aggregation,我已收到以下用于实施的UML图: 从问题描述中我知道 每个Foo都属于同一个区块 每个酒吧都属于同一个街区 一个条可以不属于任何条,也可以属于同一块的一个或多个Foo 这是UML图所表达的吗?如果不是, 所描述的关系如何用UML表示? 换句话说:Foo和Bar之间的关系只能 如果两者属于同一块,则存在。有人告诉我 图中的聚合(菱形)确保了这一点 我问过同样的问题。你的图表还可以。为了表达一个条的foo必须位于该条的同一块中的要求,您需要一个称为约束的东西。在UML中,约束通常在(OCL)中

我已收到以下用于实施的UML图:

从问题描述中我知道

  • 每个Foo都属于同一个区块
  • 每个酒吧都属于同一个街区
  • 一个条可以不属于任何条,也可以属于同一块的一个或多个Foo
这是UML图所表达的吗?如果不是, 所描述的关系如何用UML表示?

换句话说:Foo和Bar之间的关系只能 如果两者属于同一块,则存在。有人告诉我 图中的聚合(菱形)确保了这一点


我问过同样的问题。

你的图表还可以。为了表达一个条的foo必须位于该条的同一块中的要求,您需要一个称为约束的东西。在UML中,约束通常在(OCL)中表示

您的约束可以这样写:

context Bar
inv: self.foo -> forAll(t |  t.block = self.block)

你的图表还可以。为了表达一个条的foo必须位于该条的同一块中的要求,您需要一个称为约束的东西。在UML中,约束通常在(OCL)中表示

您的约束可以这样写:

context Bar
inv: self.foo -> forAll(t |  t.block = self.block)

你的图表还可以。为了表达一个条的foo必须位于该条的同一块中的要求,您需要一个称为约束的东西。在UML中,约束通常在(OCL)中表示

您的约束可以这样写:

context Bar
inv: self.foo -> forAll(t |  t.block = self.block)

你的图表还可以。为了表达一个条的foo必须位于该条的同一块中的要求,您需要一个称为约束的东西。在UML中,约束通常在(OCL)中表示

您的约束可以这样写:

context Bar
inv: self.foo -> forAll(t |  t.block = self.block)

第194页(文件204),图11.5

第194页(文件204),图11.5

第194页(文件204),图11.5

第194页(文件204),图11.5

另见第230页,图13-70

另见第230页,图13-70

另见第230页,图13-70

另见第230页,图13-70

那么图中的聚合是否与Foo和Bar之间的关系无关?OCL需求与聚合是完全不同和独立的?那么图中的聚合与Foo和Bar之间的关系无关,这是真的吗?OCL需求与聚合是完全不同和独立的?那么图中的聚合与Foo和Bar之间的关系无关,这是真的吗?OCL需求与聚合是完全不同和独立的?那么图中的聚合与Foo和Bar之间的关系无关,这是真的吗?OCL要求与聚合完全不同,是独立的?关系是否可以用组合而不是聚合表示?关系是否可以用组合而不是聚合表示?关系是否可以用组合而不是聚合表示?关系是否可以用组合而不是聚合表示用合成而不是聚合表示?