Eagle Legacy Modernization, LLC

HTML Grammar

Main program: HTML_Program

HTML syntax:

 Count  Terminals:
  HTML_CData: html cdata
171 HTML_Comment:
8 HTML_ExtraEndAnchor: html extra end anchor
1 HTML_HexNumber: A hex number
344,081 HTML_Identifier: An identifier
118,231 HTML_Literal: quotes:'" escape:none doubled:no multiline:yes
24,911 HTML_Number: exponent_chars:none suffix_chars:% trailing_period:yes ignore_char:none
51 HTML_Pre: Preformmated string
212,002 HTML_Text: html text
 Count  Statistics(*) Tokens:
56,514 (78% | 22%) HTML_Anchor: (HTML_AnchorHref | HTML_AnchorName)
44,004 all 1.00(100%) all |   HTML_AnchorHref: HTML_StartAnchor [PHP_Entry]* [HTML_EndAnchor]
44,004 all all all |   |   HTML_EndAnchor: "</" "a" '>'
44,004 all all 1.03(100%) all |   |   HTML_StartAnchor: '<' "a" [HTML_Attribute]* '>'
12,510 all all all all all all 0% |   HTML_AnchorName: '<' "a" "name" '=' HTML_Value ("/>"|">") [HTML_EndAnchorName]
42 all all all |   |   HTML_EndAnchorName: "</" "a" '>'
130,377 all 100% HTML_Attribute: HTML_IdentifierOrKeyword [HTML_AttributeValue]
129,925 all all |   HTML_AttributeValue: '=' HTML_Value
130,377 (0% | 99% | 1%) |   HTML_IdentifierOrKeyword: (HTML_Namespace | HTML_Identifier | "style")
12 all all all |   |   HTML_Namespace: HTML_Identifier ':' HTML_Identifier
145,891 (2% | 0% | none | 0% | 17% | 81%) |   HTML_Value: (HTML_Id_Value | HTML_Label | HTML_Strange_Number | HTML_HexNumber | HTML_Number | HTML_Literal)
2,727 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" '>'
907 all all 3.81 all HTML_DocType: "<!" ("ATTLIST"|"DOCTYPE"|"ELEMENT"|"ENTITY"|"NOTATION") HTML_DocValue* '>'
3,456 (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 ']' '>'
46,440 4.05 HTML_Program: HTML_Element*
494,216 (0% | 43% | 0% | 23% | 18% | 0% | none | none | 0% | 0% | 0% | 11% | 3% | none | 0% | 2% | none | none | none) |   HTML_Element: (HTML_BogusEndAnchor | HTML_JustText | HTML_DocType | HTML_Tag | HTML_EndTag | HTML_Comment | HTML_IfCondition | HTML_EndIfCondition | HTML_Pre | 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
211,900 all |   |   HTML_JustText: HTML_Text
100 all all 1.64(83%) all HTML_Script: '<' "script" [HTML_Attribute]* HTML_ScriptContents
100 (99% | 1%) |   HTML_ScriptContents: (HTML_ScriptWithBody | "/>")
99 all all all |   |   HTML_ScriptWithBody: '>' HTML_ScriptBody HTML_EndScript
99 all all all |   |   |   HTML_EndScript: "</" "script" '>'
99 (none | all) |   |   |   HTML_ScriptBody: (Django_Control | Javascript_Program)
432 all all 1.55(84%) all 1.72(83%) all HTML_Span: '<' "span" [HTML_Attribute]* '>' [HTML_Element]* HTML_EndSpan
432 all all all |   HTML_EndSpan: "</" "span" '>'
219 all all all HTML_Style: HTML_StartStyle HTML_StyleBody HTML_EndStyle
219 all all all |   HTML_EndStyle: "</" "style" '>'
219 all all 1.02(90%) all |   HTML_StartStyle: '<' "style" [HTML_Attribute]* '>'
219 (none | all | none) |   HTML_StyleBody: (HTML_StyleInclude | CSS_Program | HTML_CData)
    |   |   HTML_StyleInclude: "{%" "include" HTML_Literal "%}"
14,102 all 6.27(all) all HTML_Table: HTML_StartTable [HTML_TableBodyElement]* [HTML_EndTable]
14,102 all all all |   HTML_EndTable: "</" "table" '>'
14,102 all all 1.01(92%) all |   HTML_StartTable: '<' "table" [HTML_Attribute]* '>'
88,479 (0% | none | 100%) |   HTML_TableBodyElement: (PHP_Section | Django_Control | HTML_TablePiece)
6 all all 2.00(all) all |   HTML_TableCol: '<' "col" [HTML_Attribute]* (">"|"/>")
88,474 (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" '>'
9 all all none all all all |   |   HTML_TableSection: '<' ("thead"|"tbody"|"tfoot") [HTML_Attribute]* '>' [HTML_TableSectionBody] [HTML_EndTableSection]
9 all all all |   |   |   HTML_EndTableSection: "</" ("thead"|"tbody"|"tfoot") '>'
9 (all | none) |   |   |   HTML_TableSectionBody: (HTML_Table_NormalBody | Django_Control)
9 1.78 |   |   |   |   HTML_Table_NormalBody: HTML_TableRow*
106,692 all 2.92(98%) 25% HTML_TableData: HTML_StartData [HTML_Element]* [HTML_EndData]
26,431 all all all |   HTML_EndData: "</" ("td"|"th") '>'
106,692 all all 1.02(32%) all |   HTML_StartData: '<' ("td"|"th") [HTML_Attribute]* HTML_EndStartDate
106,692 (0% | 100%) |   |   HTML_EndStartDate: (("/>") | '>')
88,473 all none 1.32(92%) none 71% HTML_TableRow: HTML_StartRow [HTML_Comment]* [HTML_TableData]* [HTML_Comment]* [HTML_EndRow]
62,699 all all all |   HTML_EndRow: "</" "tr" '>'
88,473 all all 1.54(0%) all |   HTML_StartRow: '<' "tr" [HTML_Attribute]* '>'
114,218 all none all 1.60(5%) all HTML_Tag: '<' [HTML_Tag_Namespace] HTML_Identifier [HTML_TagElement]* (">"|"/>")
88,553 all none all all |   HTML_EndTag: "</" [HTML_Tag_Namespace] HTML_Identifier '>'
36,047 (all | none | none | none) |   HTML_TagElement: (HTML_Attribute | Django_Control | Django_Insert | Django_Comment)
445 all all |   HTML_Tag_Namespace: HTML_Identifier ':'

Terminals = 9 (instances=699,456)
Tokens = 62 (instances=2,544,295)

(*) 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.