ГОСТ РИСО 13584-32—2012
Т а б л и ц а Н.1 — Синтаксический метаязык EBNF-формы ИСО/МЭК 14977
Наименование символа
Символ метаязыка и его назначение
Представлениесогласно
ИСО/МЭК 10646-1
Апостроф
Символ первой кавычки представляет собой терминальные
символы языка.
Кавычки
Этот символ не должен содержать апострофа. Пример: ’Hello’
Символ второй кавычки представляет собой терминальные
символы языка.
Этот символ не должен содержать апострофа. Пример: ’John’s
саг"
( )
Левая/правая
скобки
круглые Начало/конец символов групп, содержимое которых должно
рассматриваться как единый символ.
скобки
[ J
Левая/правая квадратные Начапо/конец вспомогательных символов, содержимое которых
может существовать или не существовать
фигурные Начало/конец
повторяющихся символов, содержимое
которых
может повторяться 0 - п - раз.
{ }
Левая/правая
скобки
-
Дефис-минус
Символ вычитания
•
Запятая
Символ связи
Знак равенства
Символ определения
I
Вертикальный штрих
Синтаксическое правило определяет символ слева с помощью
формулы, стоящей справа от этого знака.
Символ альтернативного разделителя
•
Точка с запятой
Терминальный символ, обозначающий конец синтаксического
правила
Применение мета-идентификатора в перечне определений означает нетерминальный символ,
который появляется слева от другого синтаксического правила. Мета-идентификатор содержит буквы
или цифры, но первым символом всегда является буква. Если член содержит знак «минус», перед
которым и после которого стоит какой-либо символ, то только первый из этих символов будет
представлять этот член.
П р и м е р 1
—
О б о з н а ч е н и е в и д а :
" •
",
с и м в о л -
о з н а ч а е т л ю б о й с и м в о л , к р о м е с и м в о л а а п о с т р о ф а , н а х о д я щ е г о с я м е ж д у д в у м я к а в ы ч к а м и .
Терминальный символ означает тот символ, который не может расширяться с помощью
синтаксического правила, и который будет проявляться в качестве окончательного результата. Для
представления терминального символа допускаются два способа: либо с помощью множества символов
без апострофов, вставляемых между двумя апострофами: либо с помощью множества символов без
кавычек, вставляемых между двумя кавычками.
П р и м е р 2
—
Д о п у с т и м , м ы ж е л а е м о п и с а т ь с п о м о щ ь ю п о д о б н о й г р а м м а т и к и с т о и м о с т ь и з д е л и я в
е в р о (€ ), к о т о р а я в ы р а ж а е т с я п о л о ж и т е л ь н о й в е л и ч и н о й н е б о л е в ч е м с д в у м я з н а ч а щ и м и ц и ф р а м и в
ц е н т а х . В в е д е м м е т а - и д е н т и ф и к а т о р , с в я з а н н ы й с т р е м я с л е д у ю щ и м и с и н т а к с и ч е с к и м и п р а в и л а м и :
digit = ’О* || •2• | •3• | ’4’ | ’5’ | ■6• |
■Т
| ’8* |
’ 9 ’ ;
cents =[*.*, digit [ , digit ] ];
euros = digit { , digit > cents;
П р и и с п о л ь з о в а н и и э т и х с и н т а к с и ч е с к и х п р а в и л 0 1 2 , 4 3 2 3 .3 , 3 .5 6 б у д у т я в л я т ь с я п р и м е р а м и
д о п у с т и м ы х п р е д с т а в л е н и й е в р о . 12.. . 1 0 - э т о п р и м е р ы н е д о п у с т и м ы х п р е д с т а в л е н и й е в р о .
Н.2Типы форматов значенийданных
Грамматика, описанная в настоящем приложении, определяет девять различных типов форматов
203