gpt4 book ai didi

UML MultiplicityElements 中的多个值范围

转载 作者:行者123 更新时间:2023-12-04 17:15:54 26 4
gpt4 key购买 nike

根据 UML 规范,在 MultiplicityElements 中指定多个值范围是否正确?例如,AssociationEnd 的两个范围:3..7、10..20 或一个属性,例如。帐户:帐户[0..5,8..10]。流行的工具允许这样做。是否正确?

最佳答案

TLDR:不,这种多重性是不正确的。

完整答案

UML 2.5 规范的第 7.5.2 节和第 7.5.3.2 节明确定义了多重性在 MultiplicityElement 中定义为两个数字之间的范围,一个特定数字(如果 upperlower 相等)或者如果 upper 数字为 *,则为从数字到无穷大的范围。不幸的是,您不能只列出具体的值。更具体地说,它由定义多重性范围限制的两个数字 lowerupper 列出。

我记得它在一些早期版本的 UML 中是可能的,但是我只在一些书中看到过它(不幸的是我记不清楚了),而不是规范本身。

至于 B.8.15.1,它没有说明任何可能的值,尤其是没有建议列出多个值/范围的可能性。

所以可能的值是:

  • 一个
  • a..b(其中 a <= b,如果 a = b 则相当于 a)
  • *
  • a..*(如果a = 0 那么它等同于*)

ab 都可以是求值为大于或等于 0 的自然数的表达式,前提是 不等式a <= b 用于表达式的所有可能值。

当然,对于内联多重性,它们放在方括号中。

另一方面,根据 9.4.2 StructuralFeatures 和 Parameters MultiplicityElements,因此它们恰好具有一个多重性。

关于UML MultiplicityElements 中的多个值范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41051367/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com