Нормальная форма Бэкуса-Наура, страница 8


area_attr -> area_attr 'SHAPE' '=' shape_val area_attr -> area_attr 'COORDS' '=' string area_attr -> area_attr 'NOHREF'   area_attr -> area_attr 'NOHREF' '=' 'NOHREF'   area_attr -> area_attr 'HREF' '=' string area_attr -> area_attr 'ALT' '=' string area_attr ->  l


 


shape_val -> 'RECT' shape_val -> 'CIRCLE' shape_val -> 'POLY' shape_val -> 'DEFAULT’


input  -> '<INPUT' input_attrs '>' input_attrs -> input_attr  


input_attr -> input_attr 'TYPE' '=' type_input_val input_attr -> input_attr 'NAME' '=' string input_attr -> input_attr 'VALUE' '=' string   input_attr -> input_attr 'CHECKED' '=' 'CHECKED'   input_attr -> input_attr 'CHECKED'   input_attr -> input_attr 'SIZE' '=' number   input_attr -> input_attr 'MAXLENGTH' '=' number   input_attr -> input_attr 'SRC' '=' string   input_attr -> input_attr 'ALIGN' '=' align_special_val   input_attr ->  l



type_input_val -> 'TEXT' type_input_val -> 'PASSWORD' type_input_val -> 'CHECKBOX' type_input_val -> 'RADIO' type_input_val -> 'SUBMIT' type_input_val -> 'RESET' type_input_val -> 'FILE' type_input_val -> 'HIDDEN' type_input_val -> 'IMAGE'


 

select  -> '<SELECT' select_attrs '>' select_cont '</SELECT' '>' select_attrs -> select_attr   select_attr -> select_attr 'NAME' '=' string select_attr -> select_attr 'SIZE' '=' number select_attr -> select_attr 'MULTIPLE' '=' 'MULTIPLE'   select_attr -> select_attr 'MULTIPLE'   select_attr ->  l

select_cont -> select_cont option select_cont -> option

option -> '<OPTION' option_attr '>' data '</OPTION' '>'   option -> '<OPTION' option_attr '>' data  

option_attr -> 'VALUE' '=' string option_attr_selected option_attr -> option_attr_selected 'VALUE' '=' string option_attr -> option_attr_selected  

option_attr_selected -> 'SELECTED' option_attr_selected -> 'SELECTED' '=' 'SELECTED'

textarea -> '<TEXTAREA' textarea_attr '>' data '</TEXTAREA' '>' textarea_attr -> 'NAME' '=' string 'ROWS' '=' number 'COLS' '=' number textarea_attr -> 'NAME' '=' string 'COLS' '=' number 'ROWS' '=' number textarea_attr -> 'ROWS' '=' number 'NAME' '=' string 'COLS' '=' number textarea_attr -> 'ROWS' '=' number 'COLS' '=' number 'NAME' '=' string textarea_attr -> 'COLS' '=' number 'NAME' '=' string 'ROWS' '=' number textarea_attr -> 'COLS' '=' number 'ROWS' '=' number 'NAME' '=' string


block -> p block -> list block -> preformatted block -> dl block -> div block -> center block -> blockquote block -> form block -> isindex block -> hr block -> table  


 

p -> '<P' p_attr '>' p_cont '</P' '>'

p_attr -> 'ALIGN' '=' align_val p_attr ->  l

p_cont -> text p_cont -> p_cont text  


list -> ul list -> ol list -> dir list -> menu


ul -> '<UL' ul_attr '>' ul_cont '</UL' '>'


ul_attr -> ul_attr_compact ul_attr_type ul_attr -> ul_attr_type ul_attr_compact ul_attr -> ul_attr_compact ul_attr -> ul_attr_type ul_attr ->  l


ul_attr_type -> 'TYPE' '=' ulstyle ul_attr_compact -> 'COMPACT' '=' 'COMPACT' ul_attr_compact -> 'COMPACT'

ulstyle -> 'DISC' ulstyle -> 'SQUARE' ulstyle -> 'CIRCLE'

ul_cont -> ul_cont ul_li   ul_cont ->  l

ul_li -> '<LI' ul_li_attr '>' flow '</LI' '>' ul_li -> '<LI' ul_li_attr '>' flow  

ul_li_attr -> 'TYPE' '=' ulstyle ul_li_attr -> 'VALUE' '=' number   ul_li_attr -> 'VALUE' '=' number 'TYPE' '=' ulstyle ul_li_attr -> 'TYPE' '=' ulstyle 'VALUE' '=' number ul_li_attr ->  

flow -> flow text flow -> flow block flow ->  l

ol  -> '<OL' ol_attrs '>' ol_cont '</OL' '>'   ol_attrs -> ol_attr