ГОСТ Р ИСО 10303-14—2015
SELECT
tp.price := р.price;
tp.management p.vendor;
END_MAP;
END_SCHEMA_MAP;
В отображении супертипа могут быть определены циклы создания экземпляров объектов. Ото
бражение подтипа данного отображения супертипа должно наследовать эти циклы создания экземпля
ров. Тело цикла создания экземпляров может быть повторно определено. Соответствие между телами
циклов в отображении супертипа и в отображении подтипа, в котором используются циклы создания
экземпляров, реализуется с помощью использования идентичных индексных идентификаторов; в теле
из отображения подтипа, наследующем цикл, должна использоваться ссылка на индексный идентифи
катор. идентичный индексному идентификатору, определенному в отображении супертипа.
Пример
—
Данный пример иллюстрирует наследование цикла создания экземпляров объектов.
SCHEMA source_schema;
ENTITY part; ”
name : STRING;
no_of_versions : INTEGER;
is_assembly : BOOLEAN
;
END_ENTITY;
END_SCHEMA;
SCHEMA target_schema;
ENTITY product;
name : STRING;
END_ENTITY;
ENTITY product_version;
version_id : INTEGER;
of_product :product;
END_ENTITY;
ENTITY product_definition;
name : STRING;
of version :product_version;
END_ENTITY;
END_SCHEMA;
SCHEMA_MAP example;
REFERENCE FROM source_schema AS SOURCE;
REFERENCE FROM target_schema AS TARGET;
MAP euper_map AS
pvw :AGGREGATE OF product_definition;
pver :AGGREGATE OF product_version;
pro :product;
FROM prt :part;
FOR i := 1 TO prt.no_of_versions;
SELECT
pverfi],version_idi;
pver[ij.of_product := pro;
pvw[i].of_version := pver[i];
pvw[i].name := ’view of part ’ + prt.name;
SELECT
pro.name :» ’part ’ + prt.name;
END_MAP;
MAP sub_map AS
pro : product;
SUBTYPE OF (super_map);
25