ГОСТ Р ИСО 10303-11— 2009
2) создают результирующее множество комбинаций супертипов, допустимых для т: Рт = Rlm ls 1& R lm ls2& ....
то есть объединяются результирующие множества, сф ормированные на шаге по пункту 1) перечисления /1) с
помощью оператора & ,
3) формируют результирующее множество комбинаций супертипов, которое может не включать в себя все
супертипы т : Хт = I^R Im ls. то есть объединяются результирующие множества, полученные на шаге по пункту 1)
перечисления /1),
4) выполняют действие: R = (R — Xm) + Pm;
j) для каждого к-го выражения SUBTYPE_CONSTRAINT [включая сформированные на шагах по перечисле
ниям Ь) и h)J, имеющего вид O N EO F(S,, S2. ...). выполняют следующие действия:
1) для каждой пары подвыражений S,. S,. управляемой к (/ < у). вычисляют множество комбинаций, запре
щенных оператором ONEOF{Sj. S|): D^:’ = [S, & S(]. Dfc1 преобразуется в соответствии с преобразованиями, опре
деленными в В.2. и тождествами, определенными в В.1.
2) формируют D , = Si j1. то есть D , является объединением множеств, вычисленных на шаге по пункту 1)
перечисления ft),
3) выполняют действие: R = R — (R/Dk);
k) для каждого к-го выражения SUBTYPE_CONSTRAINT [включая сформированные на шагах по перечисле
ниям Ь) и h)[, имеющего вид S- AND S2. выполняют следующие действия:
l) вычисляют множество требуемых комбинаций, задаваемых к: О, = [S ,& S2J. Qk преобразуется в соответ
ствии с преобразованиями, определенными в В.2, и тождествами, определенными в В.1,
2) для каждого объектного типа данных объекта i, объявленного в к, вычисляют множество недопустимых
комбинаций объектов, содержащих г. которые запрещены к: Dk = RJi — RI(Qy/i).
3) выполняют действие: Dk = £,D k . то есть Ok является объединением множеств, сф ормированных на шаге
по пункту 2) перечисления к).
4) выполняют действие: R = R — Ок:
I) полученное результирующее множество R является результирующим множеством для исходного графа
подтипов/супертипов.
Примеры
1В данномпримере заданытолько объявления супертипов иподтипов объектов, посколькутолько
они требуются для выявления возможных сложных объектных типов данных.
SCHEMA example:
ENTITY р;
END_ENTITY;
SUBTYPE_CONSTRAINT p_subs FOR p;
TOTAL_OVER(m, f);
ONEOF(m, f) AND ONEOF{c. a);
END_SUBTYPE_CONSTRAINT:
ENTITY m SUBTYPE OF (p);
END_ENTITY;
ENTITY f SUBTYPE OF (p);
END_ENTITY;
ENTITY
c
SUBTYPE OF (p);
END_ENTITY;
ENTITY a SUBTYPE OF (p);
END_ENTITY;
SUBTYPE_CONSTRAINT n o ji FOR a;
ABSTRACT SUPERTYPE;
ONEOF(l. i);
END_SUBTYPE_CONSTRAINT:
ENTITY I SUBTYPE OF (a);
END_ENTITY;
ENTITY i SUBTYPE OF (a);
END_ENTITY;
END_SCHEMA:
Данная схема e формате EXPRESS-G представлена на рисунке В.1.
130