Eagle Legacy Modernization, LLC

HTML Grammar

Main program: HTML_Program

HTML syntax:

 Count  Terminals:
  HTML_CData: html cdata
688 HTML_Code: Preformmated code
829 HTML_Comment:
10 HTML_ExtraEndAnchor: html extra end anchor
  HTML_HexNumber: A hex number
196,083 HTML_Identifier: An identifier
111,972 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
136 HTML_Pre: Preformmated string
104,743 HTML_Text: html text
 Count  Statistics(*) Tokens:
18,947 (99% | 1%) HTML_Anchor: (HTML_AnchorHref | HTML_AnchorName)
18,813 all 1.00(100%) 100% |   HTML_AnchorHref: HTML_StartAnchor [PHP_Entry]* [HTML_EndAnchor]
18,811 all all all |   |   HTML_EndAnchor: "</" "a" '>'
18,813 all all 1.13(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" '>'
118,305 all 100% HTML_Attribute: HTML_IdentifierOrKeyword [HTML_AttributeValue]
117,751 all all |   HTML_AttributeValue: '=' HTML_Value
118,305 (0% | 99% | 1%) |   HTML_IdentifierOrKeyword: (HTML_Namespace | HTML_Identifier | "style")
12 all all all |   |   HTML_Namespace: HTML_Identifier ':' HTML_Identifier
119,099 (6% | 0% | none | none | 0% | 94%) |   HTML_Value: (HTML_Id_Value | HTML_Label | HTML_Strange_Number | HTML_HexNumber | HTML_Number | HTML_Literal)
6,737 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" '>'
1,001 all all 1.21 all HTML_DocType: "<!" ("ATTLIST"|"DOCTYPE"|"ELEMENT"|"ENTITY"|"NOTATION") HTML_DocValue* '>'
1,214 (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 ']' '>'
21,390 4.15 HTML_Program: HTML_Element*
203,862 (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)
10 all |   |   HTML_BogusEndAnchor: HTML_ExtraEndAnchor
104,641 all |   |   HTML_JustText: HTML_Text
171 all all 1.55(62%) all HTML_Script: '<' "script" [HTML_Attribute]* HTML_ScriptContents
171 (99% | 1%) |   HTML_ScriptContents: (HTML_ScriptWithBody | "/>")
170 all all all |   |   HTML_ScriptWithBody: '>' HTML_ScriptBody HTML_EndScript
170 all all all |   |   |   HTML_EndScript: "</" "script" '>'
170 (none | all) |   |   |   HTML_ScriptBody: (Django_Control | Javascript_Program)
4,698 all all 1.09(98%) all 1.12(95%) all HTML_Span: '<' "span" [HTML_Attribute]* '>' [HTML_Element]* HTML_EndSpan
4,698 all all all |   HTML_EndSpan: "</" "span" '>'
226 all all all HTML_Style: HTML_StartStyle HTML_StyleBody HTML_EndStyle
226 all all all |   HTML_EndStyle: "</" "style" '>'
226 all all 1.10(51%) all |   HTML_StartStyle: '<' "style" [HTML_Attribute]* '>'
226 (none | all | none) |   HTML_StyleBody: (HTML_StyleInclude | CSS_Program | HTML_CData)
    |   |   HTML_StyleInclude: "{%" "include" HTML_Literal "%}"
2,160 all 6.40(all) all HTML_Table: HTML_StartTable [HTML_TableBodyElement]* [HTML_EndTable]
2,160 all all all |   HTML_EndTable: "</" "table" '>'
2,160 all all 1.22(41%) all |   HTML_StartTable: '<' "table" [HTML_Attribute]* '>'
13,817 (0% | none | 100%) |   HTML_TableBodyElement: (PHP_Section | Django_Control | HTML_TablePiece)
6 all all 2.00(all) all |   HTML_TableCol: '<' "col" [HTML_Attribute]* (">"|"/>")
13,812 (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*
49,272 all 2.34(96%) 36% HTML_TableData: HTML_StartData [HTML_Element]* [HTML_EndData]
17,700 all all all |   HTML_EndData: "</" ("td"|"th") '>'
49,272 all all 1.16(78%) all |   HTML_StartData: '<' ("td"|"th") [HTML_Attribute]* HTML_EndStartDate
49,272 (0% | 100%) |   |   HTML_EndStartDate: (("/>") | '>')
13,836 all none 3.56(100%) none 54% HTML_TableRow: HTML_StartRow [HTML_Comment]* [HTML_TableData]* [HTML_Comment]* [HTML_EndRow]
7,432 all all all |   HTML_EndRow: "</" "tr" '>'
13,836 all all 1.57(1%) all |   HTML_StartRow: '<' "tr" [HTML_Attribute]* '>'
40,608 all none all 1.97(24%) all HTML_Tag: '<' [HTML_Tag_Namespace] HTML_Identifier [HTML_TagElement]* (">"|"/>")
22,547 all none all all |   HTML_EndTag: "</" [HTML_Tag_Namespace] HTML_Identifier '>'
46,034 (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=414,830)
Tokens = 62 (instances=1,243,478)

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