Welcome to Shaun Luttin's public notebook. It contains rough, practical notes. The guiding idea is that, despite what marketing tells us, there are no experts at anything. Sharing our half-baked ideas helps everyone. We're all just muddling thru. Find out more about our work at bigfont.ca.

Extended BNF Notation

Tags: computer-science

EBNF consists of terminal symbols (literals) and non-terminal production rules (variables).

Here is an example:

extended-bnf-example

Here are what its notations mean:

  • :=
    • is defined a
  • "..."
    • terminal string (aka terminal symbol)
    • that is, a string literal (as opposed to a variable)
    • obversely, non-terminal strings are variables to be replaced with terminal string
  • *
    • repetition symbol
  • (...)
    • grouping
  • ;
    • terminator symbol

References

https://en.wikipedia.org/wiki/ExtendedBackus%E2%80%93NaurForm

http://www.ietf.org/rfc/rfc1806.txt