ГОСТ Р ИСО 10303-14—2015
RETURN po.name;
PARTITION two;
FROM or : organization;
RETURN org.name;
END_VIEW;
9.3.6 Опродолонио подтипов образов
Язык EXPRESS-X допускает определение образов как подтипов других образов, при этом тип
данных подтипа образа является конкретизацией своего супертила. Это устанавливает наследствен
ную взаимосвязь между типами данных образа, при которой подтип наследует атрибуты и критерии
выбора своего супертипа. Образ является подтипом другого образа, если в его объявлении присутству ет
элемент языка
subtype
.
Пространство типа данных подтипа образа является подмножеством про
странства его супертипа в соответствии с критерием выбора, определенным элементом языка
where
в
данном подтипе.
Подтип образа наследует атрибуты от своего супертипа образа (или образов). Наследование
атрибутов должно соответствовать правилам и ограничениям наследования атрибутов, определенным в
пункте 9.2.3.3 ИСО 10303-11,.
В объявлении подтипа образа могут быть заново определены атрибуты, присутствующие у одно
го из его супертипов. Новое определение атрибутов должно соответствовать правилам и ограничениям
повторного объявления атрибутов, определенным в пункте 9.2.3.4 ИСО 10303-11.
При вычислении значения образа должен быть создан экземпляр образа в том случае, если удов
летворяется критерий выбора для самого общего супертипа. Экземпляр образа должен относиться к
типу, соответствующему образу подтипа, если оценка всех критериев выбора для данного подтипа об
раза. а также всех его супертипов образа дает значение
true
.
Синтаксис:
228 view decl = (root view decl Idependent view decl |subtype view decl
> •
206 subtype
subtype
view decl = VIEW view
binding header SELECT
id subtype declaration ’;’
view attr decl stmt list c
subtype binding header SELECT view attr decl stmt list ) END VIEW
205 subtype declaration = S’JBTYPE OF ’(’ view ref i view ref ) ’)’ .
203 subtype binding header = I PARTITION partition id j where clause .
Правила и ограничения
a) Только в одном супертипе образа для данного подтипа образа должен быть определен элемент
языка
FROM.
b) Множество разделов подтипа образа должно быть подмножеством множества разделов его
супертипа образа.
Примеры
1 В данном примере показано определение подтипа образа. Подтип образа
male
определяет
дополнительное требование принадлежности к данному подтипу для экземпляров образа (атрибут
gender = ’М‘):
VIEW person;
FROM е:employee;
END_VIEW;
VIEW male SUBTYPE OF (person);
WHERE e.gender = ’M’;
END_VIEW;
2
В данном примере показано использование разделов и подтипов образа:
VIEW j;
PARTITION first;
FROM s:three, t:four
WHERE cond6;
17