Extended Backus–Naur form
Appearance
The Extended Backus-Naur Form or BNF is any variation on the basic Backus-Naur Form (BNF) metasyntax notation with (some of) the following additional constructs: square brackets "[..]" surrounding optional items, suffix "*" for Kleene closure (a sequence of zero or more of an item), suffix "+" for one or more of an item, curly brackets enclosing a list of alternatives, and super/subscripts indicating between n and m occurrences.
All these constructs can be expressed in plain BNF using extra productions and have been added for readability and succinctness.
This article (or an earlier version of it) contains material from FOLDOC, used with permission.