Красная Борода правильно, заявив, что StructuredActivityNodes может содержать ActivityNodes и что ActivityPartitions являются не ActivityNodes.Вот диаграмма, которая показывает последнюю точку:
Из этого следует, что StructuredActivityNodes не может содержать ActivityPartitions.
Однако ничегов спецификации не позволяет нам ссылаться на узлы ActivityNode в StructuredActivityNode из другого раздела, отличного от самого StructuredActivityNode.
Это может привести к невозможности графического отображения раздела.Спецификация определяет текстовую нотацию для этого: просто поместите имя раздела в круглые скобки над именем узла.К сожалению, эта нотация не поддерживается многими инструментами.
Чтобы сделать возможным ее графическое отображение, на StructuredActivityNode нужно ссылаться более чем на один раздел.Это разрешено согласно схеме выше.Конечно, тогда возникает вопрос, какой будет семантика.
На самом деле определенной семантики нет.Спецификация определяет только семантику для разделов, содержащих InvocationActions.Затем раздел указывает цель вызова.Наличие двух целей не имеет смысла, поэтому в этом случае это не должно быть разрешено (хотя ограничение на этот эффект отсутствует).Но все остальные действия могут охватывать несколько разделов.
Поэтому это совершенно правильная диаграмма, которая достигает цели:
PSВ использованном инструменте удалось создать правильную модель.Однако потребовалась некоторая настройка, пока диаграмма не выглядела так.