Eagle Legacy Modernization, LLC

HTML Grammar

Main program: HTML_Program

HTML syntax:

 Count  Terminals:
  HTML_CData: html cdata
638 HTML_Code: Preformmated code
795 HTML_Comment:
8 HTML_ExtraEndAnchor: html extra end anchor
  HTML_HexNumber: A hex number
190,003 HTML_Identifier: An identifier
109,516 HTML_Literal: Literal quotes:'" escape:none doubled:no multiline:yes
369 HTML_Number: Number exponent_chars:none suffix_chars:% trailing_period:yes ignore_char:none
86 HTML_Pre: Preformmated string
100,167 HTML_Text: html text
 Count  Statistics(*) Tokens:
18,103 (99% | 1%) HTML_Anchor: (HTML_AnchorHref | HTML_AnchorName)
17,969 all 1.00(100%) all |   HTML_AnchorHref: HTML_StartAnchor [PHP_Entry]* [HTML_EndAnchor]
17,969 all all all |   |   HTML_EndAnchor: "</" "a" '>'
17,969 all all 1.14(100%) all |   |   HTML_StartAnchor: '<' "a" [HTML_Attribute]* '>'
134 all all all all all all 31% |   HTML_AnchorName: '<' "a" "name" '=' HTML_Value ("/>"|">") [HTML_EndAnchorName]
42 all all all |   |   HTML_EndAnchorName: "</" "a" '>'
115,572 all 100% HTML_Attribute: HTML_IdentifierOrKeyword [HTML_AttributeValue]
115,029 all all |   HTML_AttributeValue: '=' HTML_Value
115,572 (0% | 99% | 1%) |   HTML_IdentifierOrKeyword: (HTML_Namespace | HTML_Identifier | "style")
12 all all all |   |   HTML_Namespace: HTML_Identifier ':' HTML_Identifier
116,348 (6% | 0% | none | none | 0% | 94%) |   HTML_Value: (HTML_Id_Value | HTML_Label | HTML_Strange_Number | HTML_HexNumber | HTML_Number | HTML_Literal)
6,442 1.00 0% |   |   HTML_Id_Value: HTML_Identifier* [HTML_Id_DotValue]
1 all all |   |   |   HTML_Id_DotValue: ("."|":") HTML_Identifier
21 all all |   |   HTML_Label: '#' HTML_Identifier
    |   |   HTML_Strange_Number: '+' '.' HTML_Number
2 all all 2.00(50%) all 2.00(all) all HTML_Caption: '<' "caption" [HTML_Attribute]* '>' [HTML_Element]* HTML_EndCaption
2 all all all |   HTML_EndCaption: "</" "caption" '>'
972 all all 1.22 all HTML_DocType: "<!" ("ATTLIST"|"DOCTYPE"|"ELEMENT"|"ENTITY"|"NOTATION") HTML_DocValue* '>'
1,185 (none | none | all | none | none) |   HTML_DocValue: (HTML_DocBrackets | HTML_DocParens | HTML_Value | HTML_DocType | HTML_Comment)
    |   |   HTML_DocBrackets: '[' HTML_DocValue* ']'
    |   |   HTML_DocParens: '(' HTML_DocValue [("+"|"?"|"*")] [HTML_DocMoreValues]* ')' ['+']
    |   |   |   HTML_DocMoreValues: (","|"|") HTML_DocValue [("+"|"?"|"*")]
    HTML_EndIfCondition: "<!" '[' "endif" ']' '>'
    HTML_IfCondition: "<!" '[' "if" HTML_Identifier ']' '>'
20,511 4.06 HTML_Program: HTML_Element*
195,028 (0% | 51% | 0% | 20% | 11% | 0% | none | none | 0% | 0% | 0% | 0% | 9% | 1% | none | 2% | 4% | none | none | none) |   HTML_Element: (HTML_BogusEndAnchor | HTML_JustText | HTML_DocType | HTML_Tag | HTML_EndTag | HTML_Comment | HTML_IfCondition | HTML_EndIfCondition | HTML_Pre | HTML_Code | HTML_Style | HTML_Script | HTML_Anchor | HTML_Table | HTML_Caption | HTML_Span | PHP_Section | Django_Control | Django_Insert | XML_Header)
8 all |   |   HTML_BogusEndAnchor: HTML_ExtraEndAnchor
100,065 all |   |   HTML_JustText: HTML_Text
136 all all 1.66(63%) all HTML_Script: '<' "script" [HTML_Attribute]* HTML_ScriptContents
136 (99% | 1%) |   HTML_ScriptContents: (HTML_ScriptWithBody | "/>")
135 all all all |   |   HTML_ScriptWithBody: '>' HTML_ScriptBody HTML_EndScript
135 all all all |   |   |   HTML_EndScript: "</" "script" '>'
135 (none | all) |   |   |   HTML_ScriptBody: (Django_Control | Javascript_Program)
4,670 all all 1.09(98%) all 1.11(95%) all HTML_Span: '<' "span" [HTML_Attribute]* '>' [HTML_Element]* HTML_EndSpan
4,670 all all all |   HTML_EndSpan: "</" "span" '>'
204 all all all HTML_Style: HTML_StartStyle HTML_StyleBody HTML_EndStyle
204 all all all |   HTML_EndStyle: "</" "style" '>'
204 all all 1.10(56%) all |   HTML_StartStyle: '<' "style" [HTML_Attribute]* '>'
204 (none | all | none) |   HTML_StyleBody: (HTML_StyleInclude | CSS_Program | HTML_CData)
    |   |   HTML_StyleInclude: "{%" "include" HTML_Literal "%}"
2,134 all 6.33(all) all HTML_Table: HTML_StartTable [HTML_TableBodyElement]* [HTML_EndTable]
2,134 all all all |   HTML_EndTable: "</" "table" '>'
2,134 all all 1.22(41%) all |   HTML_StartTable: '<' "table" [HTML_Attribute]* '>'
13,506 (0% | none | 100%) |   HTML_TableBodyElement: (PHP_Section | Django_Control | HTML_TablePiece)
6 all all 2.00(all) all |   HTML_TableCol: '<' "col" [HTML_Attribute]* (">"|"/>")
13,501 (0% | 0% | 0% | 100% | 0% | none | 0%) |   HTML_TablePiece: (HTML_TableColGroup | HTML_TableSection | HTML_Comment | HTML_TableRow | HTML_Caption | HTML_TableCol | HTML_TableData)
2 all all none all 3.00(all) all all all |   |   HTML_TableColGroup: '<' "colgroup" [HTML_Attribute]* '>' [HTML_TableCol]* "</" "colgroup" '>'
11 all all none all all 82% |   |   HTML_TableSection: '<' ("thead"|"tbody"|"tfoot") [HTML_Attribute]* '>' [HTML_TableSectionBody] [HTML_EndTableSection]
9 all all all |   |   |   HTML_EndTableSection: "</" ("thead"|"tbody"|"tfoot") '>'
11 (all | none) |   |   |   HTML_TableSectionBody: (HTML_Table_NormalBody | Django_Control)
11 3.91 |   |   |   |   HTML_Table_NormalBody: HTML_TableRow*
48,366 all 2.31(96%) 35% HTML_TableData: HTML_StartData [HTML_Element]* [HTML_EndData]
16,855 all all all |   HTML_EndData: "</" ("td"|"th") '>'
48,366 all all 1.15(78%) all |   HTML_StartData: '<' ("td"|"th") [HTML_Attribute]* HTML_EndStartDate
48,366 (0% | 100%) |   |   HTML_EndStartDate: (("/>") | '>')
13,525 all none 3.58(100%) none 53% HTML_TableRow: HTML_StartRow [HTML_Comment]* [HTML_TableData]* [HTML_Comment]* [HTML_EndRow]
7,144 all all all |   HTML_EndRow: "</" "tr" '>'
13,525 all all 1.57(1%) all |   HTML_StartRow: '<' "tr" [HTML_Attribute]* '>'
38,782 all none all 1.98(24%) all HTML_Tag: '<' [HTML_Tag_Namespace] HTML_Identifier [HTML_TagElement]* (">"|"/>")
21,320 all none all all |   HTML_EndTag: "</" [HTML_Tag_Namespace] HTML_Identifier '>'
45,371 (all | none | none | none) |   HTML_TagElement: (HTML_Attribute | Django_Control | Django_Insert | Django_Comment)
445 all all |   HTML_Tag_Namespace: HTML_Identifier ':'

Terminals = 10 (instances=401,582)
Tokens = 62 (instances=1,205,313)

(*) Statistics are shown in the same order as the Tokens.
Percentages are rounded; 'all' and 'none' mean 100% and 0% before rounding.
For lists, it shows the average number of occurrences, excluding empty lists.