case-usage-types
Available in: SysML
This checks that case usages are only typed by a single case definition.
Subsumes action-usage-types.
Specification
While not formally described in chapter 8, it is given in chapter 7.22.2:
A case usage must be defined by a single case definition.
Example
part def P;
case def C1;
case def C2;
case c : P; // error: A case usage must be defined by a single case definition
case r : C1, C2; // error: A case usage must be defined by a single case definition
Fix this by removing specializations that directly or indirectly contribute to invalid types:
part def P;
case c; // ok
or specialize only a single case definition:
case def C1;
case c : C1; // ok