RFC: 5234
Оригинал: Augmented BNF for Syntax Specifications: ABNF
Предыдущие версии: RFC 2234, RFC 4234
Категория: Стандарт Интернета
Дата публикации:
Авторы: ,
Перевод: Николай Малых

RFC 5234, Страница 5 из 11

3.2. Варианты: Rule1 / Rule2

Элементы, разделенные символом дробной черты (/), задают варианты. Следовательно,

foo / bar

будет принимать <foo> или <bar>.

Примечание: Заключенные в двойные кавычки строки букв представляют собой специальную форму задания дополнительных символов и интерпретируются как нетерминальное представление набора комбинаторных строк с содержащимися в них символами в указанном порядке, но с любыми комбинациями строчных и прописных букв.

3.3. Дополнительные варианты: Rule1 =/ Rule2

Иногда удобно задавать список вариантов в виде фрагментов. Т. е., начальному правилу соответствует один или множество вариантов, а последующие определения правил добавляют набор вариантов. Это особенно полезно для создания иной независимой спецификации, которая является производной от того же родительского набора правил, как это часто бывает со списками параметров. ABNF поддерживает такие дополнения с помощью конструкции:

oldrule     =/ additional-alternatives

Таким образом набор правил

ruleset     =  alt1 / alt2

ruleset     =/ alt3

ruleset     =/ alt4 / alt5

представляет собой то же самое, что и

ruleset     =  alt1 / alt2 / alt3 / alt4 / alt5
2007 - 2017 © Русские переводы RFC, IETF, ISOC.