ГОСТ Р ИСО 13584-42—2012
Пример представления на языке EXPRESS:
*)
ENTITY translatedJabel;
labels: LIST [1:?] OF label;
languages: present_translat*ons;
WHERE
WR1: SIZEOF(labels) = SIZEOF(languages.language_codes);
END_ENTITY; — translatedJabel
(*
Определения атрибутов:
labels: список меток labels, которые уже переведены.
language: список языков, на которые переведены рассматриваемые метки.
Пояснения к тексту программы:
WR1: количество меток labels, содержащихся в списке labels, равно количеству языков, определяемому
в атрибуте languages.language_codes.
Дополнительные пояснения:
IP1:содержание массива labelsp] наязыке, идентифицированном массивом атрибутов languages.language_
codes[i].
F.4.1.6 Переводимый текст (Translatable Jext)
Сущность translatable_text определяет тип значений, который может быть текстом или переведенным тек
стом.
Пример представления на языке EXPRESS:
*)
TYPE translatableJext = SELECT(text, translatedJext);
END_TYPE; — translatableJext
(*
F.4.1.7 Переведенный текст (TranslatedJext)
Сущность translated_text определяет переведенные тексты и соответствующие языки перевода.
Пример представления на языке EXPRESS:
*)
ENTITY translated_text;
texts: LIST £1:?] OF text;
languages: present_translat*ons:
WHERE
WR1: SIZEOF(texts) = SIZEOF(languages.language_codes);
END_ENTITY; — translatedJext
r
Определения атрибутов:
texts: список переведенных текстов.
languages: список языков, на которые переведен каждый текст.
Пояснения к тексту программы:
WR1: количество текстов, содержащихся в списке текстов, равно количеству языков, определенных атрибу
том languages.language_codes.
Дополнительные пояснения:
IP1: содержание массивов texts[i] на языке, идентифицированном атрибутом languages.language_codes[i].
F.4.2ОпределенияфункцийстандартнойсхемыязыковогоресурсаIS013584JEC61360Janguage_resource_schema
Данный подраздел содержит описание функции, на которую производится ссылка в разделах по месту
для подтверждения непротиворечивости данных.
F.4.2.1 Функция проверки длины метки (CheckJabelJength)
Функция checkjabeljength проверяет тот факт, что ни одна из меток массива I не превышает длину, ука
занную атрибутом IJength.
Пример представления на языке EXPRESS:
*)
FUNCTION checkjabeljength(l: translatableJabel;
IJength: INTEGER): BOOLEAN;
IF ’IS013584JEC61360J-ANGUAGE_RESOURCE_SCHEMA.TRANSLATEDJ.ABEL’
IN TYPEOF(I)
THEN
REPEAT i:=1 TO SIZEOF(l.labels);
IF LENGTH(l.labels[i)) > IJength
THEN
RETURN(FALSE);
ENDJF:
END_REPEAT;
128