ГОСТ I» ИСО 10303-21-2002
яЗ = BfJohn Doc’):
ENDSEC;
DATA (TWO’, (’EXTENSION’));
Я4 =■C(«2, *100 Main Street’);
#5 **C(*3, *1300 Elmwood Avenue’);
ENDSEC;
END-1SO-10303-21:
При использовании метода задания требований к интерфейсу на языке EXPRESS для определения
правильности ссылок реализация должна учитывать, что объект типа Вявно связан со схемой ’EXTENSION’,
поэтому допустимы ссылки из “4 на «2 и из »5 на «3.
F.1.2 Метод определения эквивалентности области значений СИДД
При использовании данного метода ссылки междуэкземплярами объектов, заданными в разных схемах,
должны быть выполнены на основе методов определения эквивалентности области значений, установленных
в ГОСТ Р ИСО 10303-22.
При задании экземпляра типа, определенного в схеме, экземпляры любых типов объектов из данной
схемы, ссылающиеся на данный тип. также могут ссылаться на экземпляры любых типов, объявленных в
эквивалентной области значений первого типа.
П р и м е р —Рассматриваются две схемы и основанная на них структура обмена.
SCHEMA LONGA:
ENTITY а;
range : REAL;
END_ENTITY:
ENTITY b;
name : STRING:
END_ENTITY:
END.SCHEMA;
SCHEMA LONGB:
ENTITY a;
range : REAL;
END_ENT1TY:
ENTITY b;
name : STRING;
ENDJENTITY;
ENTITY c;
addrc*scd_itcm : b;
address : STRING;
END_ENTITY:
RULE a rangc_positivc FOR (a);
WHERE
WR1: SIZEOF (QUERY (iast <* a | inst.range < 0)) —0;
END_RULE;
END_SCHEMA;
ISO-10303-21;
HEADER;
FILE. SCHEMA <( ’LONGA’. LONGB’));
ENDSEC;
DATA ( ONE*. (’LONGA’));
#1 - A<-3.5);
#2 = BfSam Smith’);
»3 = B(’John. Doc’);
ENDSEC;
DATA (TWO1, (’LONGB’));
«4 = C(#2, *100 Main Street’):
#5 = C(«3, ’1300 Elmwood Avenue’);
ENDSEC;
END-ISO-10303-21:
В настоящем примере предполагается наличие информации об области эквивалентности значений,
заданной с использованием одного из методов, описанных в ГОСТ Р ИСО 10303-22, устанавливающей
эквивалентность области значений типов А и В в обеих схемах. Это представлено в виде:
43