ГОСТ Р ИСО 10303-14—2015
FROM
iwv : itera_with_versions;
FOR EACH version_iterator IN iwv.id_of_versions INDEXING i;
SELECT
iv[ij.item_id:= iwv.id;
iv[i).version_id := version_iterator;
END_MAP;
END_SCHEMA_MAP;
Например, следующее исходное множество экземпляров:
#1 ■ ITEM_WITH_VERSIONS(1,(10,11,12));
создает следующее целевое множество экземпляров:
#1 * ITEM_VERSION(1,10);
#2 ■ ITEM_VERSION(1,11);
#3 » ITEM_VERSION(1,12);
(
В синтаксическом элементе
instantiation foreach control
может быть определено не
сколько выражений с помощью факультативного синтаксического элемента
and см
.
синтаксическое
правило 118). Итерации продолжаются до тех пор. пока по крайней мере одна исходная агрегированная
структура не будет исчерпана. Элементу
variable id
исчерпанных агрегированных структур при
сваивается неопределенное значение.
9.4.4 Разделы отображения
Экземпляры объектного типа данных могут по-разному связываться с исходными данными. Для
определения этих разных связей могут использоваться разделы отображения.
Если множество целевых объектов перечислено в заголовке объявления отображения, то разные
подмножества данных объектов могут быть созданы в каждом подразделе.
Синтаксис:
136 map decl = MAP тар id AS
( map subtype
o t
clause
target parameter{ target parameter)
subtype binding header map deci body > I (
map decl body
i binding
header map
decl body i )
binding header
END MAP *;’ .
4? binding header
= { PARTITION
partition
id)
[
irom clause ] (
local decl
ordered^by
) [ where clause J l identified by clause J [
clause j .
Правила и ограничения
a) Если в объявлении отображения существует более одного раздела, то для каждого раздела
должен быть задан элемент p a rtitio n e d .
b) Каждый элемент p a rtitio n _ id в рамках объявления отображения должен быть уникальным.
c) Для каждого целевого объектного типа данных, на который имеется ссылка в заголовке ото
бражения. по крайней мере в одном из разделов объявления отображения должны быть созданы эк
земпляры.
Пример
—
Данный пример иллюстрирует, как разные исходные объектные типы данных могут
быть отображены на один целевой объектный тип данных с помощью объявления отображения, со
<* Целевая схема
“ )
SCHEMA tar;
ENTITY person;
name: STRING;
END_ENTITY;
END SCHEMA;
держащего разделы.
(A Исходная схема
")
SCHEMA src;
ENTITY student;
name: STRING;
END_ENTITY;
ENTITY employee;
name: STRING;
END_ENTITY;
END SCHEMA;
22