ГОСТ Р ИСО 13584-42—2012
Пример представления на языке EXPRESS:
*)
FUNCTION string_for_named_unil(u: named_unit): STRING:
IF MEASURE.SCHEMA.SIJJnif IN TYPEOF(u) THEN
RETURN(slringJor_SI_unit(u));
ELSE
IF MEASURE_SCHEMA.CONTEXT_DEPENDENT_Unif INTYPEOF(u)
THEN
RETURN(u\context_dependent_unit.name>;
ELSE
IF MEASURE_SCHEMA.CONVERSION_BASED_Unif INTYPEOF(u)
THEN
RETURN(u\conversion_based_unit.name);
ELSE
IF ISO13584JEC61360_DICTIONARY_SCHEMA’
♦’.NON_SI_Unit’ IN TYPEOF(u)
THEN
RETURN(u\non_si_unitname):
ELSE
RETURN(’name_unknown’);
ENDJF;
ENDJF:
ENDJF;
ENDJF;
END_FUNCTION; — stringJor_named_unit
(*
F.3.10.8 Функция строчного представления единицы системы СИ (SiringJor_SI_unit)
Функция stringJor_SI_unit возвращает строчное представление единицы системы СИ si_un’rt (в соответ
ствии с ИСО 10303-41). рассматриваемой как параметр.
Пример представления на языке EXPRESS:
*)
FUNCTION stringJor_SI_unit(unit: si_unit): STRING:
LOCAL
prefix_string. unit_slring: STRING;
ENDJ.OCAL;
IF EXISTS(unit.prefix) THEN
CASE uniLprefix OF
exa: prefix_slring:= ’E’;
peta: prefrx_slnng:= ’P’;
tera: prefix_string:= T ;
giga: prefix_string:= G’:
mega: prefix_string:= M’;
kilo: prefix_slring:= k’;
hedo: prefix_string:= ’h’;
deca: prefix_string:= ‘da‘;
deci: prefix_string:= ’d’:
centi: prefix_strir>g:= -c’;
milli: prefix_string:= ’m’;
micro: prefix_string:= ’u’;
nano: prefrx_string:= n;
pico: prefix_string:= ’p’:
femlo: pre(ix_string:= T:
atto: prefix_string:= ’a’;
END_CASE:
ELSE
prefix_strir»g:=
END_IF;
CASE unit.name OF
metre: unit_string:= ’m’;
gram: unit_string:= ’g’:
118