Приведение грамматик. Устранение недостижимых символов, устранение бесполезных символов, страница 14

45.  img_attr -> img_attr 'HEIGHT' '=' number  

46.  img_attr -> img_attr 'WIDTH' '=' number  

47.  fonttag  -> '<' 'FONT' font_attr '>' font_cont '<' '/' 'FONT' '>'  

48.  font_attr -> 'SIZE' '=' 'SIZE_VALUE'  

49.  font_attr -> 'COLOR' '=' color  

50.  font_attr -> 'COLOR' '=' color 'SIZE' '=' 'SIZE_VALUE'

51.  font_attr -> 'SIZE' '=' 'SIZE_VALUE' 'COLOR' '=' color  

52.  font_cont -> font_cont text  

53.  br -> '<' 'BR' '>'  

54.  input  -> '<' 'INPUT' input_attr '>'

55.  input_attr -> input_attr 'TYPE' '=' type_input_val

56.  input_attr -> input_attr 'NAME' '=' string

57.  input_attr -> input_attr 'VALUE' '=' string  

58.  input_attr -> input_attr 'SIZE' '=' number  

59.  input_attr -> input_attr 'SRC' '=' string  

60.  input_attr -> input_attr 'ALIGN' '=' align_special_val  

61.  block -> '<' 'P' '>' p_cont '<' '/' 'P' '>'

62.  block -> ‘<' 'UL' '>' ul_cont '<' '/' 'UL' '>'

63.  block -> '<' 'OL' '>' ol_cont '<' '/' 'OL' '>'

64.  block -> '<' 'DL' '>' dl_cont '<' '/' 'DL' '>'

65.  block -> ‘<’’DIV' 'ALIGN' '=' align_val '>' body_cont '</DIV' '>'

66.  block -> ‘<’’DIV' '>' body_cont '</DIV' '>'

67.  block -> '<' 'CENTER' '>' body_cont '<' '/' 'CENTER' '>'

68.  block -> '<' 'FORM' form_attr '>' form_cont '<' '/' 'FORM' '>'

69.  block -> '<' 'HR' hr_attr '>'

70.  block -> <' 'TABLE' table_attr '>' table_cont '<' '/' 'TABLE' '>'

71.  p_cont -> text

72.  p_cont -> p_cont text  

73.  ul_cont -> ul_cont ul_li  

74.  ul_li -> '<' 'LI' '>' flow  

75.  flow -> flow text

76.  flow -> flow block

77.  ol_cont -> ol_cont ol_li  

78.  ol_li  -> '<' 'LI' '>' flow  

79.  dl_cont -> dl_cont dt  

80.  dl_cont -> dl_cont dd  

81.  dt -> '<' 'DT' '>' dt_cont  

82.  dt_cont -> dt_cont text  

83.  dd -> '<' 'DD' '>' flow   

84.  form_attr -> form_attr 'ACTION' '=' string

85.  form_attr -> form_attr 'METHOD' '=' httpmethod  

86.  form_attr -> form_attr 'ENCTYPE' '=' string  

87.  form_cont -> body_cont  

88.  hr_attr -> hr_attr 'ALIGN' '=' align_val  

89.  hr_attr -> hr_attr 'SIZE' '=' number  

90.  hr_attr -> hr_attr 'WIDTH' '=' number  

91.  hr_attr -> hr_attr 'WIDTH' '=' 'PERCENT'  

92.  table_attr -> table_attr 'WIDTH' '=' number  

93.  table_attr -> table_attr 'WIDTH' '=' 'PERCENT'  

94.  table_attr -> table_attr 'BORDER' '=' number  

95.  table_cont -> tr  

96.  table_cont -> table_cont tr  

97.  tr -> '<' 'TR' '>' tr_cont '<' '/' 'TR' '>'  

98.  tr -> '<' 'TR' '>' tr_cont  

99.  tr_cont -> tr_cont td  

100.  tr_cont -> tr_cont th  

101.  th -> '<' 'TH' th_td_attr '>' body_cont '<' '/' 'TH' '>'  

102.  th -> '<' 'TH' th_td_attr '>' body_cont  

103.  th_td_attr -> th_td_attr 'WIDTH' '=' number  

104.  th_td_attr -> th_td_attr 'HEIGHT' '=' number  

105.  td -> '<' 'TD' th_td_attr '>' body_cont '<' '/' 'TD' '>'  

106.  td -> '<' 'TD' th_td_attr '>' body_cont

Цепные правила

head_cont -> head_cont title

head_cont -> head_cont script

head_cont -> head_cont style

head_cont -> head_cont '<' 'TITLE' '>' data '<' '/' 'TITLE' '>'

            | head_cont '<' 'SCRIPT' '>' data '<' '/' 'SCRIPT' '>'

            | head_cont '<' 'STYLE' '>' data '<' '/' 'STYLE' '>'