ГОСТ Р И С 0 10303-11 — 2009
Знак равенства ’=’ обозначает порождающее правило. Элемент слева от знака равенства
определяется как комбинация элементов, расположенных справа от него. Любые пробелы между
элементами правой части не имеют значения, если только они не входят в состав литерала. В конце
порождающего правила ставится точка 7.
Использование идентификатора влюбом элементе обозначает нетерминальный символ, который при
сутствует влевой части другого порождающего правила. Идентификатор состоит из букв, цифр и символа
подчеркивания. Ключевые слова языка представлены порождающими правилами, идентификаторы кото
рых состоят только из прописных букв.
Литерал используется для обозначения терминального символа, который не может быть раскрыт
вдальнейшем. Литерал представляется последовательностью не зависящих от регистра символов,
заключенной вапострофы. Под символом вданном случае понимается любой символ, определенный в
ИСО/МЭК10646 в позициях 21 — 7Е группы 00. плоскости 00. строки 00. Чтобы апостроф был включен в
литерал, он должен быть записан дважды.
Семантика разных видов скобок определена следующим образом:
- фигурные скобки ’{ }’ обозначают ни одного или несколько повторений;
-квадратные скобки ’[]’ обозначают необязательные параметры;
- круглые скобки’ () ’обозначают, что группа порождающих правил, заключенная в круглые скобки,
должна использоваться как единое порождающее правило;
- вертикальная линия ’ | ’ обозначает, что в выражении должен использоваться только один из
элементов, разделенных вертикальными линиями.
Примеры
1 Синтаксис строкового типа данных определяется следующим образом:
Синтаксис:
311 string_type = STRING [ width_spec ].
341 width_spec = ’ (’ width ’) ’ [ FIXED ].
340 width = numeric_expression.
Полное определение синтаксиса, представленное в приложении А, содержит определения лексем
STRING, numeric_expression и FIXED.
2 В соответствии с синтаксисом, приведенном в примере 1, возможны следующие варианты:
string;
string (22);
string (19 ) fixed.
Правило для numeric_expression является достаточно сложным и позволяет представить
много других вариантов.
6.2 Обозначение специальных символов
Следующая нотация используется для представления полных наборов символов и некоторых специ
альных символов, которые трудно визуально отобразить;
\а — представляет символы в позициях 21-7Е строки 00. плоскости 00, группы 00 из ИСО/МЭК
10646,
\п — представляет символ новой строки (newline), зависящий от системы (см. 7.1.5.2);
\q — представляет символ одиночной кавычки (апострофа) (’) и входит в\а;
\s — представляет символ пробела:
\х9. \хА и VxD — представляют символы, расположенные соответственно в позициях 9,10 и 13
строки 00, плоскости 00. группы 00 из ИСО/МЭК 10646.
7 Основные элементы языка
В данном разделе определены основные элементы, из которых формируется EXPRESS-схема: набор
символов, комментарии, знаки, зарезервированные слова, идентификаторы илитералы.
Из основных элементов языка формируется текстовая структура, обычно разделяемая на физические
строки. Физическая строка представляет собой последовательность из любого числа (включая ни одного)
символов, заканчивающуюся символом новой строки (см. 7.1.5.2).
П р и м е ч а н и е — Схема бопее удобна для восприятия, если операторы разбиты на строки, а для
выделения разных конструкций использованы пробелы.
6