Markup spec/BNF/Fundamental elements
From MediaWiki.org
< Markup spec | BNF
EBNF grammar project
- ANTLR
- BNF
- Article title
- Article
- Noparse-block
- Links
- Magic links
- Special block
- Inline text
- Fundamental elements
These are the fundamental definitions of common data types. Terminals are case-sensitive.
<character> ::= <whitespace-char> | <non-whitespace-char> | <html-entity> <html-entity> ::= "&" <html-entity-chars> ";" | "&#" <decimal-number> ";" | "&#x" <hex-number> ";" <html-entity-chars> ::= <html-entity-char> [<html-entity-chars>] <html-entity-char> ::= <ucase-letter> | <lcase-letter> | <decimal-digit> <whitespace> ::= <whitespace-char> [<whitespace>] | EOF <newlines> ::= <newline> [<newlines>] <space-tabs> ::= <space-tab> [<space-tabs>] <whitespace-char> ::= <space-tab> | <newline> <space-tab> ::= <space> | TAB <spaces> ::= <space> [<spaces>] <space> ::= " " <newline> ::= CR LF | LF CR | CR | LF <BOL> ::= <newline> | BOF <EOL> ::= <newline> | EOF <non-whitespace-char> ::= <letter> | <decimal-digit> | <symbol> <letter> ::= <ucase-letter> | <lcase-letter> <ucase-letter> ::= "A" | "B" | ... | "Y" | "Z" <lcase-letter> ::= "a" | "b" | ... | "y" | "z" <symbol> ::= <html-unsafe-symbol> | <underscore> | "." | "," | ... <html-unsafe-symbol> ::= "<" | ">" | "&" <underscore> ::= "_" <decimal-number> ::= <decimal-digit> [<decimal-number>] <decimal-digit> ::= "0" | "1" | ... | "8" | "9" <hex-number> ::= <hex-digit> [<hex-number>] <hex-digit> ::= <decimal-digit> | "A" | "B" | "C" | "D" | "E" | "F" | "a" | "b" | "c" | "d" | "e" | "f"
[edit] Transformations
- Terminals in <html-unsafe-symbol> will, in some situations, need to be converted to valid <html-entity> symbols. When this is required, the transformation is as follows:
- < becomes <
- > becomes >
- & becomes &

