July 1st, 2010

flow

кодирование отношений на примере 24744 и далее

1. Примеры.

Для ActionKind:
Agent (1..*) ~ ActsUpon ~ WorkProductKind Subject
... semantics ...

Target (agg) ~ Constraint (0..*)
... semantics ...

Для Constraint:
(0..*) ~ ActionKind Target (agg)
... semantics ...

2. Предлагаемая общая форма.

первая_сущность имя_роли (иные_параметры_роли) ~ имя_связи (иные_параметры_связи) ~ вторая_сущность имя_роли (иные_параметры_роли)

При задании в контексте первой сущности (описание класса метамодели) само имя первой сущности пропускается. Если нет имени роли или иных параметров - они пропускаются. Если нет имени и параметров связи, то используется сокращённая форма:

первая_сущность имя_роли (иные_параметры_роли) ~ вторая_сущность имя_роли (иные_параметры_роли)

Кодирование предназначено не только для 24744, но и для иных возможных входных описаний, с которыми принято использовать графические нотации. Поэтому хорошо подходит для ER-подобных и UML-*-diagramm вообще. Для описания связей с более чем двумя association ends и более сложных зависимостей между ролями (ORM2) данный синтаксис будет дополнен чуть позже.