Augmented BNF for Syntax Specifications: ABNF
RFC 5234, “Augmented BNF for Syntax Specifications: ABNF”, is an Internet Standard document published in January 2008 by D. Crocker, P. Overell. It obsoletes RFC 4234. It has since been updated by RFC 7405. The canonical text is published by the RFC Editor.
Abstract
Internet technical specifications often need to define a formal syntax. Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications. The current specification documents ABNF. It balances compactness and simplicity with reasonable representational power. The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges. This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications. [STANDARDS-TRACK]
What “Internet Standard” means
A mature, widely-implemented specification that has completed the full IETF standards process — the highest maturity level on the standards track.
The canonical text of RFC 5234 is hosted at rfc-editor.org. Available in TXT,HTML.
- RFC 5233 Sieve Email Filtering: Subaddress Extension
- RFC 5235 Sieve Email Filtering: Spamtest and Virustest Extensions
- RFC 5232 Sieve Email Filtering: Imap4flags Extension
- RFC 5236 Improved Packet Reordering Metrics
- RFC 5231 Sieve Email Filtering: Relational Extension
- RFC 5237 IANA Allocation Guidelines for the Protocol Field
- RFC 5230 Sieve Email Filtering: Vacation Extension
- RFC 5238 Datagram Transport Layer Security over the Datagram Congestion Control Protocol