ГОСТ Р ИСО 10303-11— 2009
- комментарии с метками, относящиеся к ограничению SUBTYPE_CONSTRAINT. должны быть переназна
чены новому правилу RULE; если создается несколько глобальных правил, то комментарий должен быть повто
рен для каждого правила.
П р и м е ч а н и е — Рекомендуется вручную отредактировать переназначенные помеченные комментарии
в конце процесса преобразования.
Пример — Промежуточная схема, сформированная в соответствии с G.4, выглядит следующим
образом:
SCHEMA artifact;
ENTITY el;
END_ENTITY;
ENTITY e2 SUBTYPE OF (e1);
END_ENTITY;
SUBTYPE_CONSTRAINT sc_total_over FOR el;
TOTAL_OVER (e2);
END_SUBTYPE_CONSTRAINT;
END_SCHEMA; — конец схемы artifact
Результирующая схема по ИСО 10303-11:1994 выглядит следующим образом:
SCHEMA longform:
ENTITY el;
END_ENTITY;
ENTITY e2 SUBTYPE OF (e1);
END_ENTITY;
RULE total_over_sc_total_over FOR (e1);
WHERE
(* "total_over_sc_total_over.wri" Все экземпляры e1
должны также быть объектного типа е2. *)
wr1 : SIZEOF (QUERY(e1_i <* е1 |
SIZEOF ([’ LONGFORM.E2’ ] * TYPEOF(e1_i)) = 0)) = 0;
END_RULE;
END_SCHEMA; — конец схемы longform
G.5.4.2 Ограничения реализаций подтипов/супертипов
Если SUBTYPE_CONSTRAINT включает в себя ограничения на реализацию графов подтипов/супертипов,
то они должны быть преобразованы в ограничения SUPERTYPE. Данные ограничения обычно включают в себя
ключевые слова AND, ANDOR и ONEOF. Ограничения SUPERTYPE должныбыть построены последующим прави
лам;
a) для каждого объекта, ограниченного ограничением SUBTYPE_CONSTRAINT. содержащим ограничение
SUPERTYPE, ограничение SUPERTYPE заключается в круглые скобки и добавляется кограничению SUPERTYPE.
определенному в данном объекте;
b
) каждое ограничение, вытекающее из SUBTYPE_CONSTRAINT. объединяется посредством оператора
ANDOR со всеми другими ограничениями, добавленными из разных спецификаций SUBTYPE_CONSTRAINT.
Комментарии с метками, относящиеся к ограничению SUBTYPE_CONSTRAINT. содержащему указанные
ограничения, должны быть переназначены объекту с ограничением SUPERTYPE.
П р и м е ч а н и е — Рекомендуется вручную отредактировать переназначенные помеченные комментарии
в конце процесса преобразования.
Пример — Промежуточная схема, сформированная в соответствии с G.4, выглядит следующим
образом:
SCHEMA artifact;
ENTITY р;
END_ENTITY;
SUBTYPE_CONSTRAINT p_subs FOR p;
m AND a;
END_SUBTYPE_CONSTRAINT;
ENTITY m SUBTYPE OF (p);
END_ENTITY;
ENTITY a ABSTRACT SUBTYPE OF (p);
END_ENTITY;
ENTITY I SUBTYPE OF (a);
END_ENTITY;
END_SCHEMA; — конец схемы artifact
174