Допускает ли расширенный BNF (как указано в RFC 5234) совпадения с пустой строкой?
Из чтения грамматики самого расширенного BNF (раздел 4, ABNF Definition of ABNF) мне кажется, что единственный способ - использовать пустые кавычки (""
):
empty-rule = ""
or
empty-alternative = some-rule-1 / some-rule-2 / ""
в то время как синтаксис, как
invalid-empty-rule =
не допускается.
Я прав? Почему это так?