The grammar is a composite of the HTML 2.0 standard tags and special extensions to the language as enabled by the latest versions of NCSA Mosaic, Netscape Communication's Netscape Navigator, and Microsoft's Internet Explorer.
The rules are in alphabetical order. The starting rule for an entire document is named html_document.
| a_tag | ::= | <a> | |
| {a_content}_0 | |||
| </a> | |||
| a_content[1] | ::= | heading | |
| | | text | ||
| address_tag | ::= | <address> | |
| {address_content}_0 | |||
| </address> | |||
| address_content | ::= | p_tag | |
| | | text | ||
| applet_content | ::= | {<param>}_0 | |
| body_content | |||
| applet_tag | ::= | <applet> | |
| applet_content | |||
| </applet> | |||
| b_tag | ::= | <b> text </b> | |
| basefont_tag | ::= | <basefont> | |
| body_content | |||
| </basefont> | |||
| big_tag | ::= | <big> | |
| text | |||
| </big> | |||
| block | ::= | {block_content }_0 | |
| block_content | ::= | <isindex> | |
| | | basefont_tag | ||
| | | blockquote_tag | ||
| | | center_tag | ||
| | | dir_tag | ||
| | | div_tag | ||
| | | dl_tag | ||
| | | form_tag | ||
| | | listing_tag | ||
| | | menu_tag | ||
| | | nobr_tag | ||
| | | ol_tag | ||
| | | p_tag | ||
| | | pre_tag | ||
| | | table_tag | ||
| | | ul_tag | ||
| | | xmp_tag | ||
| blockquote_tag | ::= | <blockquote> | |
| body_content | |||
| </blockquote> | |||
| body_content | ::= | <bgsound> | |
| | | <hr> | ||
| | | address_tag | ||
| | | block | ||
| | | heading | ||
| | | map_tag | ||
| | | marquee_tag | ||
| | | text | ||
| body_tag | ::= | <body> | |
| {body_content }_0 | |||
| </body> | |||
| caption_tag | ::= | <caption> | |
| body_content | |||
| </caption> | |||
| center_tag | ::= | <center> | |
| body_content | |||
| </center> | |||
| cite_tag | ::= | <cite> text </cite> | |
| code_tag | ::= | <code> text </code> | |
| content_style | ::= | cite_tag | |
| | | code_tag | ||
| | | dfn_tag | ||
| | | em_tag | ||
| | | kbd_tag | ||
| | | strong_tag | ||
| | | var_tag | ||
| dd_tag | ::= | <dd> | |
| flow | |||
| </dd> | |||
| dir_tag[2] | ::= | <dir> | |
| { li_tag } | |||
| </dir> | |||
| dfn_tag | ::= | <dfn> text </dfn> | |
| div_tag | ::= | <div> | |
| body_content | |||
| </div> | |||
| dl_content | ::= | dt_tag dd_tag | |
| dl_tag | ::= | <dl> | |
| {dl_content } | |||
| </dl> | |||
| dt_tag | ::= | <dt> | |
| text | |||
| </dt> | |||
| em_tag | ::= | <em> text </em> | |
| flow | ::= | {flow_content }_0 | |
| flow_content | ::= | block | |
| | | text | ||
| font_tag | ::= | <font> style_text </font> | |
| form_content[3] | ::= | <input> | |
| | | body_content | ||
| | | select_tag | ||
| | | textarea_tag | ||
| form_tag | ::= | <form> | |
| {form_content }_0 | |||
| </form> | |||
| frameset_content | ::= | <frame> | |
| | | noframes_tag | ||
| frameset_tag | ::= | <frameset> | |
| {frameset_content }_0 | |||
| </frameset> | |||
| h1_tag | ::= | <h1> text </h1> | |
| h2_tag | ::= | <h2> text </h2> | |
| h3_tag | ::= | <h3> text </h3> | |
| h4_tag | ::= | <h4> text </h4> | |
| h5_tag | ::= | <h5> text </h5> | |
| h6_tag | ::= | <h6> text </h6> | |
| head_content | ::= | <base> | |
| | | <isindex> | ||
| | | <link> | ||
| | | <meta> | ||
| | | <nextid> | ||
| | | title_tag | ||
| head_tag | ::= | <head> | |
| {head_content }_0 | |||
| </head> | |||
| heading | ::= | h1_tag | |
| | | h2_tag | ||
| | | h3_tag | ||
| | | h4_tag | ||
| | | h5_tag | ||
| | | h6_tag | ||
| html_content | ::= | head_tag body_tag | |
| | | head_tag frameset_tag | ||
| html_document | ::= | html_tag | |
| html_tag | ::= | <html> | |
| html_content | |||
| </html> | |||
| i_tag | ::= | <i> text </i> | |
| kbd_tag | ::= | <kbd> text </kbd> | |
| li_tag | ::= | <li> | |
| flow | |||
| </li> | |||
| listing_tag | ::= | <listing> | |
| literal_text | |||
| </listing> | |||
| map_content | ::= | {<area>}_0 | |
| map_tag | ::= | <map> | |
| map_content | |||
| </map> | |||
| marquee_tag | ::= | <marquee> | |
| style_text | |||
| </marquee> | |||
| menu_tag[4] | ::= | <menu> | |
| {li_tag } | |||
| </menu> | |||
| nobr_tag | ::= | <nobr> text </nobr> | |
| noframes_tag | ::= | <noframes> | |
| {body_content }_0 | |||
| </noframes> | |||
| ol_tag | ::= | <ol> | |
| {li_tag }_1 | |||
| </ol> | |||
| option_tag | ::= | <option> | |
| plain_text | |||
| </option> | |||
| p_tag | ::= | <p> | |
| text | |||
| </p> | |||
| physical_style | ::= | b_tag | |
| | | big_tag | ||
| | | i_tag | ||
| | | font_tag | ||
| | | small_tag | ||
| | | s_tag | ||
| | | strike_tag | ||
| | | sub_tag | ||
| | | sup_tag | ||
| | | tt_tag | ||
| | | u_tag | ||
| pre_content | ::= | <br> | |
| | | <hr> | ||
| | | a_tag | ||
| | | style_text | ||
| pre_tag | ::= | <pre> | |
| {pre_content }_0 | |||
| </pre> | |||
| s_tag | ::= | <s> text </s> | |
| strike_tag | ::= | <strike> text </strike> | |
| select_tag | ::= | <select> | |
| {option_tag } | |||
| </select> | |||
| small_tag | ::= | <small> text </small> | |
| strong_tag | ::= | <strong> text </strong> | |
| sub_tag | ::= | <sub> text </sub> | |
| sup_tag | ::= | <sup> text </sup> | |
| table_cell | ::= | td_tag | |
| | | th_tag | ||
| table_tag | ::= | <table> | |
| [caption_tag] | |||
| {tr_tag }_0 | |||
| </table> | |||
| td_tag | ::= | <td> | |
| body_content | |||
| </td> | |||
| text | ::= | {text_content }_0 | |
| text_content | ::= | <br> | |
| | | <img> | ||
| | | <wbr> | ||
| | | a_tag | ||
| | | applet_tag | ||
| | | content_style | ||
| | | plain_text | ||
| | | physical_style | ||
| textarea_tag | ::= | <textarea> plain_text </textarea> | |
| th_tag | ::= | <th> | |
| body_content | |||
| </th> | |||
| title_tag | ::= | <title> plain_text </title> | |
| tr_tag | ::= | <tr> | |
| {table_cell}_0 | |||
| </tr> | |||
| tt_tag | ::= | <tt> text </tt> | |
| u_tag | ::= | <u> text </u> | |
| ul_tag | ::= | <ul> | |
| {li_tag } | |||
| </ul> | |||
| var_tag | ::= | <var> text </var> | |
| wbr_tag | ::= | <wbr> | |
| xmp_tag | ::= | <xmp> | |
| literal_text | |||
| </xmp> | |||
|
Footnotes:
[1] | |||