ГОСТ Р ИСО/ТС 10303-110S-2012
EXPRESS-спеиификация:
*)
ENTITY attribute_language_assignment
SUBTYPE OF (attributG_classification_assignment):
SELRattribute_classification_assignment.assigned_class:language,
items: SET[1:?] OF attributeJanguage item;
WHERE
WR1: SELF\attribute_classification_assignment.role.name IN (’primary’,
translated’];
WR2; SELF\attribute_classincation_assignment.attribute_name < >",
END_ENTITY;
Г
Определения атрибутов
assigned_class — объект language, используемый для уточнения текстового атрибута у экзем
пляров, представленных атрибутом items;
items — экземпляры, имеющие атрибут в виде строкитекста на языке, представленном объектом
language.
Формальные утверждения
WR1 — для любого экземпляра из items значением атрибута role, уточняющего значение рас
сматриваемого текстового атрибута, должно быть’ primary (оригинальный)’ или’ translated (переведен
ный)’;
WR2 — атрибут attribute_name недолженбыть представлен пустой строкой.
Неформальноеутверждение
IP1 — все экземпляры из items должны быть экземплярами объектных типов данных, которые
имеют или наследуютатрибутс наименованием, определяемым значением атрибута attribute_name.
5.2.2.3 Объект multi_language_attribute_assignment
Объектmulti_language_attribute_assignmentявляетсяподтипомобъектаattribute_
value_assignment. который определяет альтернативное значение для атрибута, имеющего строковое
значение, уодного или несколькихэкземпляров.
EXPRESS-споииФикаиия:
ENTITY multijanguage_attribute_assignment
SUBTYPE OF (attribute_value_assignment);
items: SET[1:?] OF multi_language_attribute_item:
DERIVE
translationjanguage;language := language_indication[1]\
attribute_classification_assignment.assigned_dass;
INVERSE
language indication;SET(1 ;1] OF attribute_language_assignment FOR items;
WHERE
WR1: (SELRattribute_value_assignment.role.name = ’alternate language’);
WR2; SIZEOF( QUERY{ ala <* languagejndication |
(ala\attribute_classification_assignmenLattribute_name =
’attribute_vatue’)AND
(ala\attribute_classification_assignment.role.name=’transiated) ))= 1;
WR3: SELF\attribute_value_assignment.attribute_name <
>
";
WR4; SIZEOF(QUERY(ci <* items j SIZEOF(QUERY(ata <* USEDIN(ci.
,MULTI_LINGUISM_MIM.MULTI_LANGUAGE_ATTRIBUTE_ASSIGNMENT.ITEMS’)
|(ata\attribute_value_assignment.attribute_name =
SELF\attribute_value_assignment.attribute_name)AND
(ata.translationjanguage ;=:translationjanguage) ))>1)) =0;
WR5: SIZEOF(QUERY(ci <* items | SIZEOF(QUERY(ata <* USEDIN(ci.
MULTI JJNGUISM_MIM.ATTRIBUTE_LANGUAGE_ASSIGNMENT.ITEMS’)|
(ataVattribute_classification_assignment.role.name-primary’)AND
(ata\attribute_classification_assignment.attribute_name=
SELRattribute_value_assignment.attribute_name) AND
10