Annotation of Amaya/amaya/HTML.S, revision 1.192
1.139 quint 1: { I. Vatton November 1994-2002 }
1.68 cvs 2:
1.1 cvs 3: STRUCTURE HTML;
4:
5: DEFPRES HTMLP;
1.44 cvs 6:
1.1 cvs 7: ATTR
1.59 cvs 8: { coreattrs }
1.63 cvs 9: ID = Text; { id }
10: Class = Text; { class }
11: PseudoClass = Text;
12: Style\240 = Text; { style }
13: Title = Text; { title }
1.59 cvs 14: { i18n }
1.137 quint 15: dir = ltr_, rtl_; { dir }
1.59 cvs 16: { events }
1.63 cvs 17: onclick = Text; { onclick }
18: ondblclick = Text; { ondblclick }
19: onmousedown = Text; { onmousedown }
20: onmouseup = Text; { onmouseup }
21: onmouseover = Text; { onmouseover }
22: onmousemove = Text; { onmousemove }
23: onmouseout = Text; { onmouseout }
24: onkeypress = Text; { onkeypress }
25: onkeydown = Text; { onkeydown }
26: onkeyup = Text; { onkeyup }
1.59 cvs 27:
1.63 cvs 28: Invalid_attribute = Text;
1.127 cvs 29: Unknown_attribute = Text;
1.63 cvs 30: Ghost_restruct = Text;
1.114 cvs 31: Highlight = Yes_; { to show the HTML element corresponding to the
32: current selection in the source view }
1.100 cvs 33: IntEntity = Yes_; { do not translate & into & in output file }
34: EntityName = Text; { the content of the element is the name of an entity }
1.110 cvs 35: xml_space = xml_space_default, xml_space_preserve; { xml:space }
1.167 gully 36: NoImages = Yes_;
37: NoObjects = Yes_;
1.1 cvs 38:
39: CONST
1.59 cvs 40:
1.1 cvs 41: C_Empty = ' ';
42: C_Foot = ' ';
43: C_Head = ' ';
1.64 cvs 44: C_BR = '\12';
1.1 cvs 45:
46: STRUCT
1.59 cvs 47:
1.63 cvs 48: HTML { HTML }
1.191 vatton 49: (ATTR ShowAreas = Yes_;
1.143 cvs 50: PrintURL = Yes_; PI = Text;
1.101 cvs 51: Namespaces = Text; RealLang = Yes_; Charset = Text) =
1.17 cvs 52: BEGIN
1.1 cvs 53: HEAD;
1.109 cvs 54: ? BODY; { only one of BODY, document type }
1.72 cvs 55: ? FRAMESET;
1.164 cvs 56: END + (Invalid_element, Unknown_namespace, XHTML_Unknown_namespace, Comment\240, XMLPI, CDATA);
1.136 cvs 57:
1.189 quint 58: DOCTYPE = LIST OF (DOCTYPE_line = TEXT);
59:
1.163 vatton 60: Invalid_element = TEXT;
1.113 cvs 61:
1.127 cvs 62: Unknown_namespace = TEXT;
63:
1.164 cvs 64: XHTML_Unknown_namespace = TEXT;
65:
1.186 vatton 66: Comment\240 = LIST OF (Comment_line = TEXT) - (Comment\240);
1.1 cvs 67:
1.161 cvs 68: XMLPI (ATTR is_css = Text) = LIST OF (PI_line = TEXT);
1.140 cvs 69:
70: CDATA = LIST OF (CDATA_line = TEXT);
1.136 cvs 71:
1.63 cvs 72: HEAD { HEAD }
73: (ATTR profile = Text) =
74: AGGREGATE
1.180 quint 75: Document_URL = TEXT - (STYLE_, SCRIPT_, META, LINK);
76: TITLE = TEXT - (STYLE_, SCRIPT_, META, LINK); { TITLE }
1.63 cvs 77: ? ISINDEX (ATTR Prompt = Text) = CONSTANT C_Empty; { ISINDEX }
78: { prompt }
79: ? BASE; { BASE }
1.180 quint 80: END + (Object, STYLE_, SCRIPT_, META, LINK);
1.63 cvs 81:
1.64 cvs 82: STYLE_ { STYLE }
83: (ATTR Notation = Text; media = Text) =
84: { type media }
1.185 vatton 85: TEXT - (STYLE_, SCRIPT_, META, LINK);
1.64 cvs 86:
1.138 vatton 87: SCRIPT_ { SCRIPT }
1.184 vatton 88: (ATTR charset = Text; content_type = Text;
1.63 cvs 89: { charset type }
1.160 cvs 90: script_language = Text; script_src = Text;
91: { language src }
1.63 cvs 92: defer = Yes_; event = Text; for_ = Text) =
93: { defer event for }
1.185 vatton 94: TEXT - (STYLE_, SCRIPT_, META, LINK) with content_type ?= 'text/javascript';
1.59 cvs 95:
96: META { META }
1.63 cvs 97: (ATTR http_equiv = Text;
98: { http-equiv }
1.96 cvs 99: meta_name = Text; meta_content = Text;
100: { name content }
1.63 cvs 101: scheme = Text) =
102: { scheme }
103: CONSTANT C_Empty;
1.1 cvs 104:
1.63 cvs 105: LINK { LINK }
106: (ATTR charset; HREF_ = Text; hreflang = Text;
107: { charset href hreflang }
108: Link_type = Text; REL = Text; REV = Text;
109: { type rel rev }
110: media; target_ = Text) =
111: { media target }
112: CONSTANT C_Empty;
113:
114: BASE { BASE }
115: (ATTR !HREF_; target_) =
116: { href target }
117: CONSTANT C_Empty;
1.1 cvs 118:
1.189 quint 119: BODY { BODY }
120: (ATTR onload = Text; onunload = Text;
121: { onload onunload }
122: background_ = Text; BackgroundColor = Text;
123: { background bgcolor }
124: TextColor = Text; LinkColor = Text;
125: { text link }
126: VisitedLinkColor = Text; ActiveLinkColor = Text) =
127: { vlink alink }
128: LIST OF (Element) + (INS, DEL);
129:
1.59 cvs 130: Element = CASE OF { block }
131: Paragraph; { P }
1.20 cvs 132: Pseudo_paragraph;
1.59 cvs 133: Heading; { heading }
134: List_; { list + DL }
135: Preformatted; { PRE preformatted }
136: Division; { DIV }
137: Center; { CENTER }
1.184 vatton 138: SCRIPT_; { SCRIPT }
139: NOSCRIPT = LIST OF (Element) - (SCRIPT_); { NOSCRIPT }
1.63 cvs 140: Block_Quote; { BLOCKQUOTE }
1.59 cvs 141: Form; { FORM }
142: ISINDEX; { ISINDEX }
1.63 cvs 143: Horizontal_Rule; { HR }
1.59 cvs 144: Table; { TABLE }
1.166 quint 145: FIELDSET; { FIELDSET }
1.179 quint 146: Address; { ADDRESS }
1.59 cvs 147: PICTURE { IMG }
1.63 cvs 148: (ATTR SRC = Text; ALT = Text; longdesc = Text;
149: { src alt longdesc }
1.129 vatton 150: Height_ = Text; Width__ = Text;
1.162 quint 151: { height width }
1.63 cvs 152: IntWidthPercent = Integer; IntWidthPxl = Integer;
1.129 vatton 153: IntHeightPercent = Integer; IntHeightPxl = Integer;
1.94 cvs 154: USEMAP = Text; ISMAP = Yes_;
1.63 cvs 155: { usemap ismap }
1.94 cvs 156: IsInput = Yes_; NAME = Text;
157: { input type=IMAGE name }
1.63 cvs 158: Alignment = Top_, Middle_, Bottom_, Left_, Right_;
159: { align top middle bottom left right }
160: Img_border = Integer;
161: { border }
162: hspace = Integer; vspace = Integer);
163: { hspace vspace }
1.59 cvs 164: Object; { OBJECT }
1.60 cvs 165: Applet; { APPLET }
1.108 cvs 166: MathML; { MATH }
1.126 vatton 167: SVG; { SVG }
1.125 vatton 168: map; MAP; { MAP }
1.111 kahan 169: XLink; { Annotations }
1.183 quint 170: External_Object { IMG type=svg}
1.123 cvs 171: (ATTR SRC; ALT; longdesc;
172: { src alt longdesc }
173: Height_; Width__;
174: { height width }
175: IntWidthPercent; IntWidthPxl;
1.129 vatton 176: IntHeightPercent; IntHeightPxl;
1.123 cvs 177: USEMAP; ISMAP;
178: { usemap ismap }
179: IsInput; NAME;
180: { input type=IMAGE name }
181: Alignment;
182: { align top middle bottom left right }
183: Img_border;
184: { border }
185: hspace; vspace) =
186: { hspace vspace }
1.183 quint 187: BEGIN
1.181 cvs 188: External_Object_Content;
1.183 quint 189: END;
1.141 quint 190: Embed_ { EMBED }
1.128 cvs 191: (ATTR SRC;
192: Alignment;
193: { align top bottom left right }
194: Height_; Width__;
195: { height width }
196: EmbedHidden = Yes_, No_;
1.154 quint 197: { hidden yes no }
1.148 cvs 198: EmbedName = Text;
1.154 quint 199: { name }
1.148 cvs 200: hspace; vspace;
1.128 cvs 201: { hspace vspace }
1.148 cvs 202: Embed_type = Text;
1.154 quint 203: { type }
1.175 quint 204: pluginspage = Text;
205: pluginurl = Text;
1.148 cvs 206: ) =
1.145 quint 207: BEGIN
208: Embed_Content;
209: END;
1.1 cvs 210: END;
211:
1.52 cvs 212: HTMLfragment = LIST OF (Element);
1.181 cvs 213: External_Object_Content = NATURE;
1.145 quint 214: Embed_Content = NATURE;
1.52 cvs 215:
1.63 cvs 216: Block_Quote { BLOCKQUOTE }
217: (ATTR cite = Text;
218: { cite }
219: InternalLink = Reference(Any); ExternalLink = Yes_) =
220: LIST OF (Element);
221:
222: Horizontal_Rule { HR }
223: (ATTR Align = left_, center_, right_;
224: { align left center right }
225: NoShade = NoShade_; Size_ = Integer; Width__;
226: { noshade size width }
227: IntWidthPercent; IntWidthPxl) =
228: CONSTANT C_Empty;
229:
1.67 cvs 230: Basic_Set = LIST OF (Basic_Elem);
231:
1.179 quint 232: { Paragraph must be the first element defined as a Basic_Set, to make
233: sure that the editor will create a Paragraph when the user wants to
234: create a Basic_Elem }
1.59 cvs 235: Paragraph { P }
1.63 cvs 236: (ATTR TextAlign = left_, center_, right_, justify_) =
237: { align left center right justify }
238: Basic_Set;
239:
1.179 quint 240: Address = Basic_Set;
241:
1.59 cvs 242: Pseudo_paragraph = Basic_Set;
243:
244: Heading = CASE OF { heading }
245: H1 (ATTR TextAlign) = Basic_Set; { H1 }
246: { align }
247: H2 (ATTR TextAlign) = Basic_Set; { H2 }
248: H3 (ATTR TextAlign) = Basic_Set; { H3 }
249: H4 (ATTR TextAlign) = Basic_Set; { H4 }
250: H5 (ATTR TextAlign) = Basic_Set; { H5 }
251: H6 (ATTR TextAlign) = Basic_Set; { H6 }
1.1 cvs 252: END;
253:
1.63 cvs 254: Preformatted { PRE }
255: (ATTR Width__; IntWidthPercent; IntWidthPxl) =
256: { width }
257: Basic_Set
1.59 cvs 258: - (PICTURE, Object, Applet,
259: Big_text, Small_text, Subscript, Superscript,
1.181 cvs 260: Font_, BaseFont, External_Object);
1.59 cvs 261:
1.63 cvs 262: Anchor { A }
1.94 cvs 263: (ATTR charset; Link_type; NAME;
1.63 cvs 264: { charset type name }
265: HREF_; hreflang; target_;
266: { href hreflang target}
267: REL; REV; accesskey = Text;
268: { rel rev accesskey }
269: shape = rectangle, circle, polygon, default_;
270: { shape rect cirecle poly default }
271: coords = Text; tabindex = Integer;
272: { coords tabindex }
273: onfocus = Text; onblur = Text;
1.76 cvs 274: { onfocus onblur }
1.89 cvs 275: InternalLink; ExternalLink;
1.112 kahan 276: { InternalLink ExternalLink }) =
1.63 cvs 277: Basic_Set;
1.1 cvs 278:
1.63 cvs 279: Basic_Elem = CASE OF { special }
1.1 cvs 280: TEXT;
1.63 cvs 281: Font; { fontstyle }
282: Phrase; { phrase }
1.166 quint 283: Form_Element; { formctrl }
1.61 cvs 284: Anchor; { A }
285: PICTURE; { IMG }
286: Applet; { APPLET }
287: Font_; { FONT }
288: BaseFont; { BASEFONT }
1.63 cvs 289: BR; { BR }
1.138 vatton 290: SCRIPT_; { SCRIPT }
1.63 cvs 291: Quotation; { Q }
1.61 cvs 292: Subscript = Basic_Set; { SUB }
293: Superscript = Basic_Set; { SUP }
294: Span = Basic_Set; { SPAN }
295: BDO = Basic_Set; { BDO }
1.77 cvs 296: Object; { OBJECT }
1.141 quint 297: Embed_; { EMBED }
1.61 cvs 298: IFRAME; { IFRAME }
1.121 cvs 299: ruby; { ruby }
1.108 cvs 300: MathML; { MATH }
1.111 kahan 301: XLink; { Annotations }
1.181 cvs 302: External_Object; { External Object }
1.59 cvs 303: END;
304:
1.60 cvs 305: BaseFont { BASEFONT }
1.63 cvs 306: (ATTR BaseFontSize = Integer; BaseFontColor = Text;
307: { size color }
308: BaseFontFace = Text) =
309: { face }
310: CONSTANT C_Empty;
311:
312: BR { BR }
1.159 quint 313: (ATTR Clear_ = Left_, Right_, All_, None_) =
314: { clear left right all none }
1.63 cvs 315: CONSTANT C_BR;
316:
317: Quotation { Q }
318: (ATTR cite; InternalLink; ExternalLink) =
319: { cite }
320: Basic_Set;
1.59 cvs 321:
1.60 cvs 322: Font = CASE OF { fontstyle }
323: Teletype_text = Basic_Set; { TT }
1.59 cvs 324: Italic_text = Basic_Set; { I }
325: Bold_text = Basic_Set; { B }
326: Underlined_text = Basic_Set; { U }
1.60 cvs 327: Struck_text = Basic_Set; { S or STRIKE }
1.59 cvs 328: Big_text = Basic_Set; { BIG }
329: Small_text = Basic_Set; { SMALL }
330: END;
331:
1.60 cvs 332: Phrase = CASE OF { phrase }
1.59 cvs 333: Emphasis = Basic_Set; { EM }
334: Strong = Basic_Set; { STRONG }
335: Def = Basic_Set; { DFN }
336: Code = Basic_Set; { CODE }
337: Sample = Basic_Set; { SAMP }
338: Keyboard = Basic_Set; { KBD }
1.152 quint 339: Variable_ = Basic_Set; { VAR }
1.59 cvs 340: Cite = Basic_Set; { CITE }
1.60 cvs 341: ABBR = Basic_Set; { ABBR }
342: ACRONYM = Basic_Set; { ACRONYM }
1.59 cvs 343: END;
344:
1.63 cvs 345: Font_ { FONT }
346: (ATTR Font_size = Text; color = Text; face = Text;
347: { size color face }
348: IntSizeIncr = Integer; IntSizeDecr = Integer;
349: IntSizeRel = Integer) =
350: Basic_Set;
351:
352: Applet { APPLET }
353: (ATTR codebase = Text; archive = Text; code = Text;
354: { codebase archive code }
355: object = Text; alt = Text; applet_name = Text;
356: { object alt name }
1.129 vatton 357: Width__; IntWidthPercent; IntWidthPxl;
358: Height_; IntHeightPercent; IntHeightPxl;
1.63 cvs 359: { width height }
360: Alignment; hspace; vspace) =
361: { align hspace vspace }
1.1 cvs 362: LIST OF (Applet_Content = CASE OF
1.59 cvs 363: Parameter; { PARAM }
1.1 cvs 364: Basic_Set;
365: END);
1.63 cvs 366: Parameter { PARAM }
367: (ATTR Param_name = Text; Param_value = Text;
368: { name value }
369: valuetype = data_, ref, object_;
370: { valuetype data ref object }
371: Param_type = Text) =
372: { type }
1.59 cvs 373: CONSTANT C_Empty;
374:
375: Object { OBJECT }
1.145 quint 376: (ATTR declare = declare_; classid = Text; codebase;
377: { declare classid codebase }
1.63 cvs 378: data = Text; Object_type = Text;
379: { data type }
380: codetype = Text; archive; standby = Text;
381: { codetype archive standby }
1.157 quint 382: Height_; Width__;
1.129 vatton 383: IntWidthPercent; IntWidthPxl;
384: IntHeightPercent; IntHeightPxl;
1.63 cvs 385: { height width }
386: USEMAP; NAME; tabindex; Alignment; Img_border;
387: { usemap name tabindex align border }
388: hspace; vspace) =
389: { hspace vspace }
1.10 cvs 390: BEGIN
1.13 cvs 391: PICTURE;
1.145 quint 392: Object_Content = LIST OF (ElemOrParam = CASE OF
393: Element; Parameter; END); { PARAM }
1.157 quint 394: END;
1.61 cvs 395:
1.63 cvs 396: INS { INS }
1.72 cvs 397: (ATTR cite; datetime = Text; InternalLink; ExternalLink) =
1.63 cvs 398: { cite datetime }
399: Basic_Set;
400:
401: DEL { DEL }
1.72 cvs 402: (ATTR cite; datetime; InternalLink; ExternalLink) =
1.63 cvs 403: { cite datetime }
404: Basic_Set;
1.1 cvs 405:
1.59 cvs 406: Block = CASE OF { block }
407: Paragraph; { P }
1.20 cvs 408: Pseudo_paragraph;
1.59 cvs 409: Heading; { heading }
410: List_; { list + DL }
411: Block_Quote; { BLOCKQUOTE }
412: Preformatted; { PRE }
413: Division; { DIV }
1.63 cvs 414: Center; { CENTER }
1.1 cvs 415: Form;
1.73 cvs 416: Horizontal_Rule; { HR }
417: Table; { TABLE }
418: Address; { ADDRESS }
1.1 cvs 419: END;
420:
1.63 cvs 421: Division { DIV }
422: (ATTR TextAlign) =
423: { align }
424: LIST OF (Element);
425:
426: Center = { CENTER }
427: LIST OF (Element);
1.1 cvs 428:
1.59 cvs 429: List_ = CASE OF { list }
1.63 cvs 430: Unnumbered_List; { UL }
431: Numbered_List; { OL }
432: Directory; { DIR }
433: Menu; { MENU }
434: Definition_List; { DL }
435: END;
436:
437: Unnumbered_List { UL }
438: (ATTR BulletStyle = disc, circle, square;
439: { type disc circle square }
440: COMPACT = Yes_) =
441: { compact }
442: LIST OF (List_Item);
443:
444: Numbered_List { OL }
445: (ATTR NumberStyle = Arabic_, LowerAlpha, UpperAlpha,
446: { type 1 a A }
447: LowerRoman, UpperRoman;
448: { i I }
449: Start = Integer; COMPACT) =
450: { start compact }
451: LIST OF (List_Item) with Start ?= 1;
452:
453: Directory { DIR }
454: (ATTR COMPACT) =
455: { compact }
456: LIST OF (List_Item);
457:
458: Menu { MENU }
459: (ATTR COMPACT) =
460: { compact }
461: LIST OF (List_Item);
462:
463: List_Item { LI }
464: (ATTR ItemStyle = disc, circle, square, Arabic_,
465: { type disc circle square 1 }
466: LowerAlpha, UpperAlpha, LowerRoman, UpperRoman;
467: { a A i I }
468: IntItemStyle = disc, circle, square, Arabic_,
469: LowerAlpha, UpperAlpha, LowerRoman, UpperRoman;
470: ItemValue = Integer) =
471: { value }
1.1 cvs 472: LIST OF (Block);
473:
1.189 quint 474: Definition_List { DL }
475: (ATTR COMPACT) =
476: { compact }
477: LIST OF (Definition_Item);
478:
1.59 cvs 479: Definition_Item = BEGIN
480: Term_List = LIST OF (Term = Basic_Set); { DT }
1.132 cvs 481: ? Definitions = LIST OF (Definition = LIST OF (Block)); { DD }
1.1 cvs 482: END;
483:
1.63 cvs 484: Form { FORM }
485: (ATTR !Script_URL = Text; METHOD = Get_, Post_;
486: { action method }
487: ENCTYPE = Text; onsubmit = Text; onreset = Text;
488: { enctype onsubmit onreset }
489: target_; accept_charset = Text) =
490: { target accept-charset }
1.166 quint 491: LIST OF (Element) + (Input) - (Form);
1.1 cvs 492:
493: Form_Element = CASE OF
1.166 quint 494: Input; { INPUT }
1.59 cvs 495: Option_Menu; { SELECT }
1.63 cvs 496: Text_Area; { TEXTAREA }
1.166 quint 497: LABEL; { LABEL }
498: BUTTON_; { BUTTON }
1.1 cvs 499: END;
500:
1.63 cvs 501: Option_Menu { SELECT }
502: (ATTR !NAME; MenuSize = Integer; Multiple = Yes_;
503: { name size multiple }
504: disabled = Yes_; tabindex; onfocus; onblur;
505: { disabled tabindex onfocus onblur}
506: onchange = Text) =
507: { onchange }
1.91 cvs 508: LIST OF (Option_item = CASE OF Option; OptGroup; END) - (Input);
1.63 cvs 509:
510: Option { OPTION }
1.182 quint 511: (ATTR Selected = Yes_; DefaultSelected = Yes_; ShowMe = Yes_;
1.63 cvs 512: { selected }
513: disabled; label = Text; !Value_ = Text) =
514: { disabled label value }
1.1 cvs 515: TEXT;
1.76 cvs 516:
517: OptGroup { OPTGROUP }
1.78 cvs 518: (ATTR disabled; !label) =
519: { disabled label }
1.76 cvs 520: LIST OF (Option);
1.1 cvs 521:
1.63 cvs 522: Text_Area { TEXTAREA }
523: (ATTR !NAME; Rows = Integer; Columns = Integer;
524: { name rows cols }
525: disabled; readonly = Yes_; tabindex; accesskey;
526: { disabled readonly tabindex accesskey }
527: onfocus; onblur; onselect = Text; onchange;
528: { onfocus onblur onselect onchange }
529: Default_Value = Text) =
1.177 quint 530: Input_Text - (Input) with Rows ?= 4, Columns ?= 20;
1.63 cvs 531:
1.79 cvs 532: FIELDSET = { FIELDSET }
533: BEGIN
534: LEGEND;
535: Basic_Set;
536: END;
537:
538: LEGEND { LEGEND }
539: (ATTR accesskey; LAlign = Top_, Bottom_, Left_, Right_) =
540: { accesskey align top bottom left right }
541: Basic_Set;
542:
1.62 cvs 543: Input = CASE OF { formctrl }
1.63 cvs 544: Text_Input { INPUT / TEXT }
545: (ATTR !NAME; Value_; disabled; readonly;
546: { name value disabled readonly }
547: Area_Size = Integer; MaxLength = Integer;
548: { size maxlength }
1.162 quint 549: IntAreaSize = Integer;
1.63 cvs 550: tabindex; accesskey;
551: { tabindex accesskey }
1.66 cvs 552: onfocus; onblur; onselect; onchange;
1.63 cvs 553: { onfocus onblur onselect onchange }
1.66 cvs 554: Default_Value) =
1.177 quint 555: Input_Text - (Input);
1.63 cvs 556: Password_Input { INPUT / PASSWORD }
1.66 cvs 557: (ATTR !NAME; Value_; disabled; readonly;
558: { name value disabled readonly }
1.162 quint 559: Area_Size; IntAreaSize; MaxLength;
560: { size maxlength }
1.66 cvs 561: tabindex; accesskey;
562: { tabindex accesskey }
563: onfocus; onblur; onselect; onchange;
564: { onfocus onblur onselect onchange }
565: Default_Value) =
1.177 quint 566: Input_Text - (Input);
1.68 cvs 567: File_Input { INPUT / FILE }
568: (ATTR !NAME; Value_; disabled; readonly;
569: { name value disabled readonly }
1.162 quint 570: Area_Size; IntAreaSize; MaxLength;
571: { size maxlength }
1.68 cvs 572: tabindex; accesskey;
573: { tabindex accesskey }
574: onfocus; onblur; accept = Text;
575: { onfocus onblur }
576: Default_Value) =
1.177 quint 577: Input_Text - (Input);
1.59 cvs 578: Checkbox_Input { INPUT / CHECKBOX }
1.63 cvs 579: (ATTR !NAME; Value_; Checked = Yes_, No_;
1.66 cvs 580: { name value checked }
1.63 cvs 581: disabled; readonly;
582: { disabled readonly }
583: tabindex; accesskey; onfocus; onblur;
584: { tabindex accesskey onfocus onblur }
585: DefaultChecked = Yes_, No_) =
1.1 cvs 586: CONSTANT C_Empty with Checked ?= No_;
1.59 cvs 587: Radio_Input { INPUT / RADIO }
1.63 cvs 588: (ATTR !NAME; !Value_; Checked; disabled;
589: { name value checked disabled }
590: readonly; tabindex; accesskey;
591: { readonly tabindex accesskey }
592: onfocus; onblur;
593: { onfocus onblur }
594: DefaultChecked) =
595: CONSTANT C_Empty with Checked ?= No_,
596: NAME ?= 'radio';
597: Submit_Input { INPUT / SUBMIT }
598: (ATTR NAME; Value_; disabled; readonly;
599: { name value disabled; readonly }
600: tabindex; accesskey;
601: { tabindex accesskey }
602: onfocus; onblur) =
603: { onfocus onblur }
604: BEGIN
1.99 cvs 605: CONSTANT C_Empty;
1.63 cvs 606: END with Value_ ?= 'Submit';
607: Reset_Input { INPUT / RESET }
608: (ATTR NAME; Value_; disabled; readonly;
609: { name value disabled readonly }
610: tabindex; accesskey;
611: { tabindex accesskey }
612: onfocus; onblur) =
613: { onfocus onblur }
614: BEGIN
1.99 cvs 615: CONSTANT C_Empty;
1.68 cvs 616: END - (Input) with NAME ?= 'Reset',
617: Value_ ?= 'Reset';
618: Button_Input { INPUT / BUTTON }
1.66 cvs 619: (ATTR !NAME; Value_; disabled; readonly;
620: { name value disabled readonly }
1.63 cvs 621: tabindex; accesskey;
622: { tabindex accesskey }
1.68 cvs 623: onfocus; onblur) =
1.63 cvs 624: { onfocus onblur }
1.68 cvs 625: BEGIN
1.99 cvs 626: CONSTANT C_Empty;
1.68 cvs 627: END;
1.79 cvs 628:
1.189 quint 629: Hidden_Input { INPUT / HIDDEN }
630: (ATTR !NAME; Value_; disabled;
631: { name value disabled }
632: tabindex; accesskey;
633: { tabindex accesskey }
634: onfocus; onblur) =
635: { onfocus onblur }
636: CONSTANT C_Empty;
637:
1.120 cvs 638: BUTTON_ { BUTTON }
1.68 cvs 639: (ATTR !NAME; Value_;
640: { name value }
641: Button_type = button, submit, reset;
642: { type button submit reset }
643: disabled; tabindex; accesskey;
644: { disabled tabindex accesskey }
645: onfocus; onblur) =
646: { onfocus onblur }
1.79 cvs 647: Basic_Set - (Anchor, Input, Form, FIELDSET, IFRAME);
1.68 cvs 648: LABEL { LABEL }
649: (ATTR Associated_control = TEXT;
650: { for }
651: accesskey; onfocus; onblur) =
652: { accesskey onfocus onblur }
1.71 cvs 653: Basic_Set;
1.59 cvs 654: Option_Menu; { SELECT }
655: Text_Area; { TEXTAREA }
1.8 cvs 656: END;
1.1 cvs 657:
1.177 quint 658: Input_Text = BEGIN
1.1 cvs 659: Inserted_Text = TEXT;
660: END;
661:
1.63 cvs 662: Table { TABLE }
663: (ATTR summary = Text; Width__; Border = Integer;
664: { summary width border }
665: frame = void, above, below, hsides, lhs, rhs,
666: { frame void above below hsides lhs rhs }
667: vsides, box, border;
668: { vsides box border }
1.97 cvs 669: rules_ = none_, groups, rows, cols, all;
670: { rules none groups rows cols all }
1.63 cvs 671: cellspacing = Integer; cellpadding = Integer;
672: { cellspacing cellpadding }
673: Align; BackgroundColor;
674: { align bgcolor }
675: datapagesize = Text; IntWidthPxl; IntWidthPercent) =
676: { datapagesize }
1.1 cvs 677: BEGIN
1.84 cvs 678: CAPTION; { CAPTION }
1.115 cvs 679: ? Cols = LIST OF (Col_elem = CASE OF
1.85 cvs 680: COL; { COL }
681: COLGROUP; { COLGROUP }
682: END);
1.1 cvs 683: Table_head = LIST OF (Column_head);
1.63 cvs 684: ? thead; { THEAD }
685: Table_body = LIST OF (tbody);
686: ? tfoot; { TFOOT }
1.1 cvs 687: Table_foot = CONSTANT C_Foot;
1.49 cvs 688: END;
1.63 cvs 689:
690: CAPTION { CAPTION }
691: (ATTR Position = Position_top, Position_bottom,
692: { align top bottom }
693: Position_left, Position_right) =
694: { left right }
695: Basic_Set;
696:
1.189 quint 697: COLGROUP { COLGROUP }
698: (ATTR Cell_align = Cell_left, Cell_center, Cell_right,
699: { align left center right }
700: Cell_justify, Cell_char;
701: { justify char }
702: Cell_valign = Cell_top, Cell_middle, Cell_bottom, Cell_baseline;
703: { valign top middle bottom baseline }
704: Width__; span_ = Integer)
705: { width span }
706: = LIST OF (COL);
707:
708: COL { COL }
709: (ATTR Cell_align; Cell_valign; Width__; span_)
710: { align valign width span }
711: = CONSTANT C_Empty;
712:
1.44 cvs 713: Column_head (ATTR IntWidthPercent; IntWidthPxl) =
714: CONSTANT C_Head;
1.63 cvs 715:
716: thead { THEAD }
1.189 quint 717: (ATTR Cell_align; char = Text; charoff = Text;
718: Row_valign = Row_top, Row_middle, Row_bottom, Row_baseline) =
719: { valign top middle bottom baseline }
1.63 cvs 720: LIST OF (Table_row);
721:
722: tbody { TBODY }
723: (ATTR Cell_align; char; charoff; Row_valign) =
724: LIST OF (Table_row);
725:
726: tfoot { TFOOT }
727: (ATTR Cell_align; char; charoff; Row_valign) =
728: LIST OF (Table_row);
729:
1.189 quint 730: Table_row { TR }
731: (ATTR Cell_align; char; charoff; Row_valign;
732: { align char charoff valign }
733: BackgroundColor; IntHeightPxl) =
734: { bgcolor Special attribute to control row span }
735: LIST OF (Table_cell);
736:
1.1 cvs 737: Table_cell = CASE OF
1.63 cvs 738: Data_cell; { TD }
739: Heading_cell; { TH }
740: END;
741:
742: Data_cell { TD }
743: (ATTR Ref_column = REFERENCE(Column_head);
744: ColExt = REFERENCE(Column_head);
745: RowExt = REFERENCE(Table_row);
746: abbr = Text; axis = Text; headers = Text; scope = Text;
747: { abbr axis headers scope }
748: rowspan_ = INTEGER; colspan_ = INTEGER;
749: { rowspan colspan }
1.189 quint 750: Cell_align; char; charoff; Cell_valign;
751: { align char charoff valign }
1.63 cvs 752: No_wrap = no_wrap; BackgroundColor;
753: { nowrap bgcolor }
1.129 vatton 754: Width__; IntWidthPxl; IntWidthPercent;
755: Height_; IntHeightPercent; IntHeightPxl;) =
1.63 cvs 756: { width height }
757: LIST OF (Element);
758:
759: Heading_cell { TH }
760: (ATTR Ref_column; ColExt; RowExt;
761: abbr; axis; headers; scope;
762: { abbr axis headers scope }
763: rowspan_; colspan_;
764: { rowspan colspan }
765: Cell_align; char; charoff; Cell_valign;
766: { align char charoff valign }
767: No_wrap; BackgroundColor;
768: { nowrap bgcolor }
1.129 vatton 769: Width__; IntWidthPxl; IntWidthPercent;
770: Height_; IntHeightPercent; IntHeightPxl) =
1.63 cvs 771: { width height }
772: LIST OF (Element);
773:
774: MAP { MAP }
775: (ATTR NAME; Ref_IMG = REFERENCE(Any)) =
1.125 vatton 776: { name linked to an image}
1.145 quint 777: LIST OF (ElemOrArea = CASE OF Element; AREA; END);
1.125 vatton 778:
779: map { MAP }
780: (ATTR NAME) =
1.63 cvs 781: { name }
1.176 vatton 782: LIST OF (Element);
1.63 cvs 783:
784: AREA { AREA }
785: (ATTR shape; coords; HREF_; target_; nohref = Yes_; ALT;
786: { shape coords href target nohref alt }
787: tabindex; accesskey; onfocus; onblur;
788: { tabindex accesskey onfocus onblur }
789: x_coord = Integer; y_coord = Integer; IntWidthPxl;
1.130 vatton 790: IntHeightPxl; AreaRef_IMG = REFERENCE(Any)) =
1.63 cvs 791: GRAPHICS with x_coord ?= 0, y_coord ?= 0,
1.130 vatton 792: IntWidthPxl ?= 25, IntHeightPxl ?= 10;
1.1 cvs 793:
1.72 cvs 794: FRAMESET { FRAMESET }
795: (ATTR RowHeight = Text; ColWidth = Text;
796: { rows cols }
797: onload; onunload) =
798: { onload onunload }
1.59 cvs 799: AGGREGATE
1.72 cvs 800: Frames = LIST [1 .. *] OF (FrameElem = CASE OF
801: FRAME;
802: FRAMESET;
803: END - (NOFRAMES));
804: ? NOFRAMES = BODY + (INS, DEL); { NOFRAMES }
1.59 cvs 805: END;
806:
1.72 cvs 807: FRAME { FRAME }
1.188 quint 808: (ATTR longdesc; NAME; FrameSrc = Text;
809: { longdesc name src }
1.72 cvs 810: frameborder = Border1, Border0;
811: { frameborder 1 0 }
812: marginwidth = Integer; marginheight = Integer;
813: { marginwidth marginheight }
1.98 cvs 814: no_resize = Yes_; scrolling = Yes_, No_, auto_) =
1.72 cvs 815: { noresize scrolling yes no auto }
1.63 cvs 816: CONSTANT C_Empty;
1.59 cvs 817:
1.63 cvs 818: IFRAME { IFRAME }
1.188 quint 819: (ATTR longdesc; NAME; FrameSrc; frameborder;
820: { longdesc name src frameborder }
1.72 cvs 821: marginwidth; marginheight; scrolling;
822: { marginwidth marginheight scrolling }
823: Alignment; Width__; Height_) =
824: { align width height }
1.181 cvs 825: BEGIN
826: Iframe_Src_Content= NATURE;
1.188 quint 827: Iframe_Content = LIST OF (Element); { flow }
1.181 cvs 828: END;
1.59 cvs 829:
1.121 cvs 830: ruby = { ruby }
831: CASE OF
832: simple_ruby;
833: complex_ruby;
834: END;
835:
1.124 cvs 836: simple_ruby = { ruby }
1.121 cvs 837: BEGIN
1.122 cvs 838: rb = Basic_Set - (simple_ruby, complex_ruby);
1.145 quint 839: RtOrRtWithPar = CASE OF
1.124 cvs 840: rt (ATTR rbspan = Integer) =
841: Basic_Set - (simple_ruby, complex_ruby);
1.145 quint 842: RtWithPar = BEGIN
1.121 cvs 843: rp = TEXT;
844: rt;
845: rp;
846: END;
847: END;
848: END;
849:
1.124 cvs 850: complex_ruby = { ruby }
1.121 cvs 851: BEGIN
852: rbc = LIST OF (rb);
853: rtc1 = LIST OF (rt);
854: ? rtc2 = LIST OF (rt);
855: END;
856:
1.72 cvs 857: { AnyLink is an alias for all elements with an attribute
858: of type URI. Only elements to be shown in the Links view
859: are taken into account }
860: AnyLink = CASE OF
861: Anchor; { HREF_ }
862: Block_Quote; { cite }
863: Quotation; { cite }
864: INS; { cite }
865: DEL; { cite }
866: END;
867:
1.1 cvs 868: EXCEPT
1.25 cvs 869: HTML: NoMove, NoResize;
1.156 quint 870: BODY: NoCut, CssBackground, NoMove, NoResize,
1.170 quint 871: SetWindowBackground, NoBreakByReturn;
1.1 cvs 872: HEAD: NoCut;
873: TITLE: NoCut;
1.142 quint 874: Document_URL: Hidden, NoSpellCheck, NoCut;
1.153 quint 875: C_Empty: Hidden, NoSpellCheck, NoSelect;
1.118 cvs 876: C_BR: SelectParent;
1.72 cvs 877: Frames: Hidden;
1.74 cvs 878: FRAMESET: NoCreate; { prevent a Return at the end of the
879: document from creating a FRAMESET }
1.68 cvs 880: Inserted_Text: Hidden, NoCut;
881: Basic_Set: Hidden;
1.132 cvs 882: Definition_Item:Hidden;
1.68 cvs 883: Term_List: Hidden;
1.132 cvs 884: Definitions: Hidden;
1.155 cvs 885: XMLPI: ReturnCreateNL, NoReplicate;
886: Comment\240: ReturnCreateNL, NoReplicate;
1.192 ! vatton 887: Comment_line: Hidden;
! 888: PI_line: Hidden;
1.144 cvs 889: DOCTYPE: NoCut;
1.192 ! vatton 890: DOCTYPE_line: Hidden, NoCut;
1.140 cvs 891: CDATA_line: Hidden;
1.1 cvs 892: GRAPHICS: NoMove, NoResize;
1.41 cvs 893: TEXT: NoMove, NoResize;
1.26 cvs 894: PICTURE: MoveResize;
1.63 cvs 895: Invalid_element:NoCreate;
1.127 cvs 896: Unknown_namespace:NoCreate;
1.164 cvs 897: XHTML_Unknown_namespace:NoCreate;
1.178 quint 898: BR: IsBreak;
1.63 cvs 899: Pseudo_paragraph: ParagraphBreak, Hidden;
1.117 kahan 900: Basic_Elem: Hidden;
1.1 cvs 901: Paragraph: ParagraphBreak;
902: H1: ParagraphBreak;
903: H2: ParagraphBreak;
904: H3: ParagraphBreak;
905: H4: ParagraphBreak;
906: H5: ParagraphBreak;
907: H6: ParagraphBreak;
908: Address: ParagraphBreak;
909: Term: ParagraphBreak;
910: MAP: IsDraw;
1.158 quint 911: AREA: MoveResize, ClickableSurface, HighlightChildren;
1.70 cvs 912: Password_Input: Shadow;
1.146 vatton 913: Preformatted: ReturnCreateNL, NoReplicate;
914: STYLE_: ReturnCreateNL, NoReplicate;
915: SCRIPT_: ReturnCreateNL, NoReplicate;
916: Text_Area: ReturnCreateNL, NoReplicate;
1.170 quint 917: HTMLfragment: NoMove, NoResize, Hidden, NoBreakByReturn;
1.147 vatton 918: Division: NoMove, NoResize;
1.169 vatton 919: Form: NoReplicate;
1.1 cvs 920:
1.29 cvs 921: ExternalLink: Invisible;
1.15 cvs 922: InternalLink: Invisible;
1.44 cvs 923: IntWidthPercent:NewPercentWidth, Invisible;
924: IntWidthPxl: NewWidth, Invisible;
1.129 vatton 925: IntHeightPercent: Invisible;
926: IntHeightPxl: NewHeight, Invisible;
1.162 quint 927: IntAreaSize: Invisible;
1.1 cvs 928: IntItemStyle: Invisible;
929: IntSizeIncr: Invisible;
930: IntSizeDecr: Invisible;
931: IntSizeRel: Invisible;
1.93 cvs 932: IsInput: Invisible;
1.1 cvs 933: x_coord: Invisible, NewHPos;
934: y_coord: Invisible, NewVPos;
935: Ref_IMG: Invisible;
936: AreaRef_IMG: Invisible;
937: Invalid_attribute: Invisible;
1.127 cvs 938: Unknown_attribute: Invisible;
1.90 cvs 939: Highlight: Invisible;
1.87 cvs 940: PseudoClass: Invisible, CssPseudoClass;
1.1 cvs 941: Default_Value: Invisible;
1.63 cvs 942: DefaultSelected:Invisible;
1.182 quint 943: ShowMe: Invisible;
1.1 cvs 944: DefaultChecked: Invisible;
1.22 cvs 945: ShowAreas: Invisible;
1.83 cvs 946: PrintURL: Invisible;
1.151 vatton 947: NoImages: Invisible;
1.167 gully 948: NoObjects: Invisible;
1.65 cvs 949: Namespaces: Invisible;
1.92 cvs 950: RealLang: Invisible;
1.101 cvs 951: Charset: Invisible;
1.143 cvs 952: PI: Invisible;
1.50 cvs 953: shape: Invisible;
1.170 quint 954: Data_cell: IsCell, NoMove, NoResize, NoBreakByReturn;
955: Heading_cell: IsCell, NoMove, NoResize, NoBreakByReturn;
1.190 vatton 956: Table_cell: IsCell, NoMove, NoResize, NoBreakByReturn;
1.174 quint 957: Table: IsTable, PageBreak, NoReplicate, NoBreakByReturn;
958: Column_head: IsColHead, NoCut, Hidden, NoBreakByReturn;
959: Table_head: NoCut, Hidden, NoSelect, NoBreakByReturn;
1.75 cvs 960: C_Head: Hidden, NoSelect;
961: Table_foot: NoCut, Hidden, NoSelect, PageBreakRepBefore;
962: C_Foot: Hidden, NoSelect;
1.187 quint 963: Cols: Hidden, NoSelect, NoCreate;
1.173 quint 964: Table_body: PageBreakAllowed, Hidden, NoBreakByReturn;
1.174 quint 965: thead: NoBreakByReturn;
1.172 quint 966: tbody: NoBreakByReturn;
1.174 quint 967: tfoot: NoBreakByReturn;
1.171 quint 968: Table_row: IsRow, PageBreakPlace, NoBreakByReturn;
1.170 quint 969: IFRAME: NoBreakByReturn;
1.181 cvs 970: Iframe_Content: Hidden, NoCreate, NoCut, NoBreakByReturn;
971: Iframe_Src_Content: Hidden;
1.189 quint 972: rbc: Hidden;
973: rtc1: Hidden;
974: rtc2: Hidden;
1.1 cvs 975: ColExt: Invisible;
1.2 cvs 976: RowExt: Invisible;
1.44 cvs 977: Ref_column: ColRef, Invisible;
978: colspan_: ColSpan;
979: rowspan_: RowSpan;
1.1 cvs 980: Ghost_restruct: Invisible;
1.100 cvs 981: IntEntity: Invisible;
982: EntityName: Invisible;
1.82 cvs 983: onclick: EventAttr;
984: ondblclick: EventAttr;
985: onmousedown: EventAttr;
986: onmouseup: EventAttr;
987: onmouseover: EventAttr;
988: onmousemove: EventAttr;
989: onmouseout: EventAttr;
990: onkeypress: EventAttr;
991: onkeydown: EventAttr;
992: onkeyup: EventAttr;
1.134 cvs 993: onload: EventAttr;
994: onunload: EventAttr;
995: onfocus: EventAttr;
996: onblur: EventAttr;
997: onsubmit: EventAttr;
998: onreset: EventAttr;
999: onchange: EventAttr;
1000: onselect: EventAttr;
1.87 cvs 1001: ID : CssId;
1002: Class: CssClass;
1.181 cvs 1003: External_Object_Content: Hidden;
1.145 quint 1004: Embed_Content: Hidden, NoSelect;
1.181 cvs 1005: Object_Content: Hidden, NoCreate, NoCut, NoBreakByReturn;
1.189 quint 1006: Applet_Content: Hidden, NoCreate, NoCut, NoBreakByReturn;
1.161 cvs 1007: is_css: Invisible;
1.168 vatton 1008: xml_space: SpacePreserve;
1.1 cvs 1009: END
Webmaster