В стандарте ISO 14977 EBNF, раздел 4.7, описано юридическое содержание исключения. Я вполне уверен, что исключение может состоять из любого действительного синтаксического фактора, если он не содержит мета-идентификаторов. Это означает, что в качестве исключения может использоваться специальная последовательностьСодержание исключений в ISO EBNF
syntax =
my rule - ? Something clever ? ;
В этом случае?
Вы можете получить стандарт бесплатно по ISO here.
Да, это более или менее случай. §4.7 Синтаксическое исключение _ Синтаксическое исключение состоит из синтаксического фактора, подверженного ограничению того, что последовательности символов, представленных синтаксическим исключением, могут быть одинаково представлены синтаксическим фактором, не содержащим метаидентификаторов. ПРИМЕЧАНИЕ. Если синтаксическому исключению разрешено быть произвольным синтаксическим фактором, Extended BNF может определять более широкий класс языков, чем контекстно-свободные грамматики, включая попытки, которые приводят к парадоксам, подобным Расселу, например. 'xx =" A "-xx;' Является ли '' A ''примером' xx'? _ –
Предполагается ли, что исключение должно быть такой же длины в символах, что и правило? Что произойдет, если правило начинается с «А», но оно длиннее? – Jens
Длина правила и исключение не должны совпадать. – Uran