multiplicity-range-bounds

Available in: KerML, SysML

This checks that model-level evaluable multiplicity range bounds are non-negative.

Specification

Technically, this rule asserts the position of the bounds expressions. However, Syside uses a slightly different internal representation which makes this impossible, at least in textual syntax.

The lower_bound (if any) and upper_bound Expressions must be the first owned_members of a MultiplicityRange.

Example

attribute x = -42;
part p [x]; // error

Use a non-negative value:

attribute x = 42;
part p [x]; // ok