Annotation of Amaya/amaya/HTML.S, revision 1.72
1.1 cvs 1: { I. Vatton November 1994 }
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 }
15: dir = ltr, rtl; { dir }
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;
29: Ghost_restruct = Text;
1.1 cvs 30:
31: CONST
1.59 cvs 32:
1.1 cvs 33: C_Empty = ' ';
34: C_Foot = ' ';
35: C_Head = ' ';
1.64 cvs 36: C_BR = '\12';
1.1 cvs 37:
38: STRUCT
1.59 cvs 39:
1.63 cvs 40: HTML { HTML }
1.65 cvs 41: (ATTR SectionNumbering = Yes_; ShowAreas = Yes_;
1.72 ! cvs 42: HtmlDTD = Transitional, Frameset;
1.65 cvs 43: Namespaces = Text) =
1.17 cvs 44: BEGIN
1.1 cvs 45: HEAD;
1.72 ! cvs 46: ? BODY; { only one of BODY, FRAMESET is allowed }
! 47: ? FRAMESET;
1.1 cvs 48: END + (Invalid_element, Comment\240);
49:
1.59 cvs 50: BODY { BODY }
1.63 cvs 51: (ATTR onload = Text; onunload = Text;
52: { onload onunload }
53: background_ = Text; BackgroundColor = Text;
54: { background bgcolor }
55: TextColor = Text; LinkColor = Text;
56: { text link }
57: VisitedLinkColor = Text; ActiveLinkColor = Text) =
58: { vlink alink }
59: LIST OF (Element) + (INS, DEL);
1.1 cvs 60:
1.11 cvs 61: Invalid_element (ATTR Error_type = UnknownTag, BadPosition) = TEXT;
1.1 cvs 62: Comment\240 = LIST OF (Comment_line = TEXT);
63:
1.63 cvs 64: HEAD { HEAD }
65: (ATTR profile = Text) =
66: AGGREGATE
67: Document_URL = TEXT;
68: TITLE = TEXT; { TITLE }
69: ? ISINDEX (ATTR Prompt = Text) = CONSTANT C_Empty; { ISINDEX }
70: { prompt }
71: ? BASE; { BASE }
1.64 cvs 72: ? Styles = LIST OF (STYLE_);
1.63 cvs 73: ? Scripts = LIST OF (SCRIPT);
74: ? Metas = LIST OF (META);
75: ? Links = LIST OF (LINK);
1.72 ! cvs 76: END + (Object);
1.63 cvs 77:
1.64 cvs 78: STYLE_ { STYLE }
79: (ATTR Notation = Text; media = Text) =
80: { type media }
81: TEXT;
82:
1.63 cvs 83: SCRIPT { SCRIPT }
84: (ATTR charset = Text; !content_type = Text;
85: { charset type }
86: script_language = Text; script_src = Text;
87: { language src }
88: defer = Yes_; event = Text; for_ = Text) =
89: { defer event for }
90: TEXT;
1.59 cvs 91:
92: META { META }
1.63 cvs 93: (ATTR http_equiv = Text;
94: { http-equiv }
95: !meta_name = Text; !meta_content = Text;
96: { name content }
97: scheme = Text) =
98: { scheme }
99: CONSTANT C_Empty;
1.1 cvs 100:
1.63 cvs 101: LINK { LINK }
102: (ATTR charset; HREF_ = Text; hreflang = Text;
103: { charset href hreflang }
104: Link_type = Text; REL = Text; REV = Text;
105: { type rel rev }
106: media; target_ = Text) =
107: { media target }
108: CONSTANT C_Empty;
109:
110: BASE { BASE }
111: (ATTR !HREF_; target_) =
112: { href target }
113: CONSTANT C_Empty;
1.1 cvs 114:
1.59 cvs 115: Element = CASE OF { block }
116: Paragraph; { P }
1.20 cvs 117: Pseudo_paragraph;
1.59 cvs 118: Heading; { heading }
119: List_; { list + DL }
120: Preformatted; { PRE preformatted }
121: Division; { DIV }
122: Center; { CENTER }
1.62 cvs 123: NOSCRIPT = LIST OF (Element); { NOSCRIPT }
1.63 cvs 124: Block_Quote; { BLOCKQUOTE }
1.59 cvs 125: Form; { FORM }
126: ISINDEX; { ISINDEX }
1.63 cvs 127: Horizontal_Rule; { HR }
1.59 cvs 128: Table; { TABLE }
129: Address = LIST OF (AddressContent); { ADDRESS }
130: PICTURE { IMG }
1.63 cvs 131: (ATTR SRC = Text; ALT = Text; longdesc = Text;
132: { src alt longdesc }
133: Height_ = Integer; Width__ = Text;
1.59 cvs 134: { height width }
1.63 cvs 135: IntWidthPercent = Integer; IntWidthPxl = Integer;
136: USEMAP = Text; ISMAP = Yes_;
137: { usemap ismap }
138: Alignment = Top_, Middle_, Bottom_, Left_, Right_;
139: { align top middle bottom left right }
140: Img_border = Integer;
141: { border }
142: hspace = Integer; vspace = Integer);
143: { hspace vspace }
1.59 cvs 144: Object; { OBJECT }
1.60 cvs 145: Applet; { APPLET }
1.31 cvs 146: #ifdef MATHML
1.65 cvs 147: Math { MATH }
148: (ATTR mode = display, inline_math) =
149: MathML;
1.31 cvs 150: #endif
1.52 cvs 151: #ifdef GRAPHML
1.55 cvs 152: XMLGraphics (ATTR Height_; Width__;
1.54 cvs 153: IntWidthPercent;
154: IntWidthPxl)
1.63 cvs 155: = GraphML with Height_ ?= 200, Width__ ?= '100%',
156: IntWidthPercent ?= 100;
1.52 cvs 157: #endif
1.59 cvs 158: MAP; { MAP }
1.1 cvs 159: END;
160:
1.52 cvs 161: #ifdef GRAPHML
162: HTMLfragment = LIST OF (Element);
163: #endif
164:
1.63 cvs 165: Block_Quote { BLOCKQUOTE }
166: (ATTR cite = Text;
167: { cite }
168: InternalLink = Reference(Any); ExternalLink = Yes_) =
169: LIST OF (Element);
170:
171: Horizontal_Rule { HR }
172: (ATTR Align = left_, center_, right_;
173: { align left center right }
174: NoShade = NoShade_; Size_ = Integer; Width__;
175: { noshade size width }
176: IntWidthPercent; IntWidthPxl) =
177: CONSTANT C_Empty;
178:
1.67 cvs 179: Basic_Set = LIST OF (Basic_Elem);
180:
1.1 cvs 181: AddressContent = CASE OF
182: Basic_Elem;
1.59 cvs 183: Paragraph; { P }
1.20 cvs 184: Pseudo_paragraph;
1.1 cvs 185: END;
186:
1.59 cvs 187: Paragraph { P }
1.63 cvs 188: (ATTR TextAlign = left_, center_, right_, justify_) =
189: { align left center right justify }
190: Basic_Set;
191:
1.59 cvs 192: Pseudo_paragraph = Basic_Set;
193:
194: Heading = CASE OF { heading }
195: H1 (ATTR TextAlign) = Basic_Set; { H1 }
196: { align }
197: H2 (ATTR TextAlign) = Basic_Set; { H2 }
198: H3 (ATTR TextAlign) = Basic_Set; { H3 }
199: H4 (ATTR TextAlign) = Basic_Set; { H4 }
200: H5 (ATTR TextAlign) = Basic_Set; { H5 }
201: H6 (ATTR TextAlign) = Basic_Set; { H6 }
1.1 cvs 202: END;
203:
1.63 cvs 204: Preformatted { PRE }
205: (ATTR Width__; IntWidthPercent; IntWidthPxl) =
206: { width }
207: Basic_Set
1.59 cvs 208: - (PICTURE, Object, Applet,
209: Big_text, Small_text, Subscript, Superscript,
210: Font_, BaseFont);
211:
1.63 cvs 212: Anchor { A }
213: (ATTR charset; Link_type; NAME = Text;
214: { charset type name }
215: HREF_; hreflang; target_;
216: { href hreflang target}
217: REL; REV; accesskey = Text;
218: { rel rev accesskey }
219: shape = rectangle, circle, polygon, default_;
220: { shape rect cirecle poly default }
221: coords = Text; tabindex = Integer;
222: { coords tabindex }
223: onfocus = Text; onblur = Text;
224: { onfocus onfocus }
225: InternalLink; ExternalLink) =
226: Basic_Set;
1.1 cvs 227:
1.63 cvs 228: Basic_Elem = CASE OF { special }
1.1 cvs 229: TEXT;
1.63 cvs 230: Font; { fontstyle }
231: Phrase; { phrase }
1.61 cvs 232: Anchor; { A }
233: PICTURE; { IMG }
234: Applet; { APPLET }
235: Object; { OBJECT }
236: Font_; { FONT }
237: BaseFont; { BASEFONT }
1.63 cvs 238: BR; { BR }
1.61 cvs 239: SCRIPT; { SCRIPT }
240: MAP; { MAP }
1.63 cvs 241: Quotation; { Q }
1.61 cvs 242: Subscript = Basic_Set; { SUB }
243: Superscript = Basic_Set; { SUP }
244: Span = Basic_Set; { SPAN }
245: BDO = Basic_Set; { BDO }
246: IFRAME; { IFRAME }
1.31 cvs 247: #ifdef MATHML
1.65 cvs 248: Math; { MATH }
1.1 cvs 249: #endif
1.59 cvs 250: END;
251:
1.60 cvs 252: BaseFont { BASEFONT }
1.63 cvs 253: (ATTR BaseFontSize = Integer; BaseFontColor = Text;
254: { size color }
255: BaseFontFace = Text) =
256: { face }
257: CONSTANT C_Empty;
258:
259: BR { BR }
260: (ATTR Clear = Left_, Right_, All_, None) =
261: { clear left right all none }
262: CONSTANT C_BR;
263:
264: Quotation { Q }
265: (ATTR cite; InternalLink; ExternalLink) =
266: { cite }
267: Basic_Set;
1.59 cvs 268:
1.60 cvs 269: Font = CASE OF { fontstyle }
270: Teletype_text = Basic_Set; { TT }
1.59 cvs 271: Italic_text = Basic_Set; { I }
272: Bold_text = Basic_Set; { B }
273: Underlined_text = Basic_Set; { U }
1.60 cvs 274: Struck_text = Basic_Set; { S or STRIKE }
1.59 cvs 275: Big_text = Basic_Set; { BIG }
276: Small_text = Basic_Set; { SMALL }
277: END;
278:
1.60 cvs 279: Phrase = CASE OF { phrase }
1.59 cvs 280: Emphasis = Basic_Set; { EM }
281: Strong = Basic_Set; { STRONG }
282: Def = Basic_Set; { DFN }
283: Code = Basic_Set; { CODE }
284: Sample = Basic_Set; { SAMP }
285: Keyboard = Basic_Set; { KBD }
286: Variable = Basic_Set; { VAR }
287: Cite = Basic_Set; { CITE }
1.60 cvs 288: ABBR = Basic_Set; { ABBR }
289: ACRONYM = Basic_Set; { ACRONYM }
1.59 cvs 290: END;
291:
1.63 cvs 292: Font_ { FONT }
293: (ATTR Font_size = Text; color = Text; face = Text;
294: { size color face }
295: IntSizeIncr = Integer; IntSizeDecr = Integer;
296: IntSizeRel = Integer) =
297: Basic_Set;
298:
299: Applet { APPLET }
300: (ATTR codebase = Text; archive = Text; code = Text;
301: { codebase archive code }
302: object = Text; alt = Text; applet_name = Text;
303: { object alt name }
304: Width__; Height_; IntWidthPercent; IntWidthPxl;
305: { width height }
306: Alignment; hspace; vspace) =
307: { align hspace vspace }
1.1 cvs 308: LIST OF (Applet_Content = CASE OF
1.59 cvs 309: Parameter; { PARAM }
1.1 cvs 310: Basic_Set;
311: END);
1.63 cvs 312: Parameter { PARAM }
313: (ATTR Param_name = Text; Param_value = Text;
314: { name value }
315: valuetype = data_, ref, object_;
316: { valuetype data ref object }
317: Param_type = Text) =
318: { type }
1.59 cvs 319: CONSTANT C_Empty;
320:
321: Object { OBJECT }
1.63 cvs 322: (ATTR declare = Yes_; classid = Text; codebase;
323: { declare classid codebase }
324: data = Text; Object_type = Text;
325: { data type }
326: codetype = Text; archive; standby = Text;
327: { codetype archive standby }
328: !Height_; !Width__; IntWidthPercent; IntWidthPxl;
329: { height width }
330: USEMAP; NAME; tabindex; Alignment; Img_border;
331: { usemap name tabindex align border }
332: hspace; vspace) =
333: { hspace vspace }
1.10 cvs 334: BEGIN
1.13 cvs 335: PICTURE;
1.10 cvs 336: Object_Content = LIST OF (CASE OF Element; Parameter; END);
1.59 cvs 337: { PARAM }
1.63 cvs 338: END with Height_ ?= 400, Width__ ?= '400',
339: IntWidthPxl ?= 400;
1.61 cvs 340:
1.63 cvs 341: INS { INS }
1.72 ! cvs 342: (ATTR cite; datetime = Text; InternalLink; ExternalLink) =
1.63 cvs 343: { cite datetime }
344: Basic_Set;
345:
346: DEL { DEL }
1.72 ! cvs 347: (ATTR cite; datetime; InternalLink; ExternalLink) =
1.63 cvs 348: { cite datetime }
349: Basic_Set;
1.1 cvs 350:
1.59 cvs 351: Block = CASE OF { block }
352: Paragraph; { P }
1.20 cvs 353: Pseudo_paragraph;
1.59 cvs 354: Heading; { heading }
355: List_; { list + DL }
356: Block_Quote; { BLOCKQUOTE }
357: Preformatted; { PRE }
358: Division; { DIV }
1.63 cvs 359: Center; { CENTER }
1.1 cvs 360: Form;
361: END;
362:
1.63 cvs 363: Division { DIV }
364: (ATTR TextAlign) =
365: { align }
366: LIST OF (Element);
367:
368: Center = { CENTER }
369: LIST OF (Element);
1.1 cvs 370:
1.59 cvs 371: List_ = CASE OF { list }
1.63 cvs 372: Unnumbered_List; { UL }
373: Numbered_List; { OL }
374: Directory; { DIR }
375: Menu; { MENU }
376: Definition_List; { DL }
377: END;
378:
379: Unnumbered_List { UL }
380: (ATTR BulletStyle = disc, circle, square;
381: { type disc circle square }
382: COMPACT = Yes_) =
383: { compact }
384: LIST OF (List_Item);
385:
386: Numbered_List { OL }
387: (ATTR NumberStyle = Arabic_, LowerAlpha, UpperAlpha,
388: { type 1 a A }
389: LowerRoman, UpperRoman;
390: { i I }
391: Start = Integer; COMPACT) =
392: { start compact }
393: LIST OF (List_Item) with Start ?= 1;
394:
395: Directory { DIR }
396: (ATTR COMPACT) =
397: { compact }
398: LIST OF (List_Item);
399:
400: Menu { MENU }
401: (ATTR COMPACT) =
402: { compact }
403: LIST OF (List_Item);
404:
405: Definition_List { DL }
406: (ATTR COMPACT) =
407: { compact }
408: LIST OF (Definition_Item);
409:
410: List_Item { LI }
411: (ATTR ItemStyle = disc, circle, square, Arabic_,
412: { type disc circle square 1 }
413: LowerAlpha, UpperAlpha, LowerRoman, UpperRoman;
414: { a A i I }
415: IntItemStyle = disc, circle, square, Arabic_,
416: LowerAlpha, UpperAlpha, LowerRoman, UpperRoman;
417: ItemValue = Integer) =
418: { value }
1.1 cvs 419: LIST OF (Block);
420:
1.59 cvs 421: Definition_Item = BEGIN
422: Term_List = LIST OF (Term = Basic_Set); { DT }
1.63 cvs 423: ? Definition = LIST OF (Block); { DD }
1.1 cvs 424: END;
425:
1.63 cvs 426: Form { FORM }
427: (ATTR !Script_URL = Text; METHOD = Get_, Post_;
428: { action method }
429: ENCTYPE = Text; onsubmit = Text; onreset = Text;
430: { enctype onsubmit onreset }
431: target_; accept_charset = Text) =
432: { target accept-charset }
1.1 cvs 433: LIST OF (Form_Element) + (Input) with METHOD ?= Get_;
434:
435: Form_Element = CASE OF
1.59 cvs 436: Paragraph; { P }
1.20 cvs 437: Pseudo_paragraph;
1.59 cvs 438: Option_Menu; { SELECT }
1.63 cvs 439: Text_Area; { TEXTAREA }
1.59 cvs 440: Heading; { heading }
441: List_; { list + DL }
442: Horizontal_Rule; { HR }
443: Block_Quote; { BLOCKQUOTE }
444: Preformatted; { PRE }
445: Division; { DIV }
446: Table; { TABLE }
447: Center; { CENTER }
448: ISINDEX; { ISINDEX }
1.1 cvs 449: END;
450:
1.63 cvs 451: Option_Menu { SELECT }
452: (ATTR !NAME; MenuSize = Integer; Multiple = Yes_;
453: { name size multiple }
454: disabled = Yes_; tabindex; onfocus; onblur;
455: { disabled tabindex onfocus onblur}
456: onchange = Text) =
457: { onchange }
1.1 cvs 458: LIST OF (Option) - (Input);
1.63 cvs 459:
460: Option { OPTION }
461: (ATTR Selected = Yes_; DefaultSelected = Yes_;
462: { selected }
463: disabled; label = Text; !Value_ = Text) =
464: { disabled label value }
1.1 cvs 465: TEXT;
466:
1.63 cvs 467: Text_Area { TEXTAREA }
468: (ATTR !NAME; Rows = Integer; Columns = Integer;
469: { name rows cols }
470: disabled; readonly = Yes_; tabindex; accesskey;
471: { disabled readonly tabindex accesskey }
472: onfocus; onblur; onselect = Text; onchange;
473: { onfocus onblur onselect onchange }
474: Default_Value = Text) =
1.68 cvs 475: Text_With_Frame - (Input) with Rows ?= 4, Columns ?= 20;
1.63 cvs 476:
1.62 cvs 477: Input = CASE OF { formctrl }
1.63 cvs 478: Text_Input { INPUT / TEXT }
479: (ATTR !NAME; Value_; disabled; readonly;
480: { name value disabled readonly }
481: Area_Size = Integer; MaxLength = Integer;
482: { size maxlength }
483: tabindex; accesskey;
484: { tabindex accesskey }
1.66 cvs 485: onfocus; onblur; onselect; onchange;
1.63 cvs 486: { onfocus onblur onselect onchange }
1.66 cvs 487: Default_Value) =
1.68 cvs 488: Text_With_Frame - (Input) with Area_Size ?= 20;
1.63 cvs 489: Password_Input { INPUT / PASSWORD }
1.66 cvs 490: (ATTR !NAME; Value_; disabled; readonly;
491: { name value disabled readonly }
1.63 cvs 492: Area_Size; MaxLength;
493: { size maxlength }
1.66 cvs 494: tabindex; accesskey;
495: { tabindex accesskey }
496: onfocus; onblur; onselect; onchange;
497: { onfocus onblur onselect onchange }
498: Default_Value) =
1.68 cvs 499: Text_With_Frame - (Input) with Area_Size ?= 20;
500: File_Input { INPUT / FILE }
501: (ATTR !NAME; Value_; disabled; readonly;
502: { name value disabled readonly }
503: Area_Size; MaxLength;
504: { size maxlength }
505: tabindex; accesskey;
506: { tabindex accesskey }
507: onfocus; onblur; accept = Text;
508: { onfocus onblur }
509: Default_Value) =
510: Text_With_Frame - (Input) with Area_Size ?= 20;
1.59 cvs 511: Checkbox_Input { INPUT / CHECKBOX }
1.63 cvs 512: (ATTR !NAME; Value_; Checked = Yes_, No_;
1.66 cvs 513: { name value checked }
1.63 cvs 514: disabled; readonly;
515: { disabled readonly }
516: tabindex; accesskey; onfocus; onblur;
517: { tabindex accesskey onfocus onblur }
518: DefaultChecked = Yes_, No_) =
1.1 cvs 519: CONSTANT C_Empty with Checked ?= No_;
1.59 cvs 520: Radio_Input { INPUT / RADIO }
1.63 cvs 521: (ATTR !NAME; !Value_; Checked; disabled;
522: { name value checked disabled }
523: readonly; tabindex; accesskey;
524: { readonly tabindex accesskey }
525: onfocus; onblur;
526: { onfocus onblur }
527: DefaultChecked) =
528: CONSTANT C_Empty with Checked ?= No_,
529: NAME ?= 'radio';
530: Submit_Input { INPUT / SUBMIT }
531: (ATTR NAME; Value_; disabled; readonly;
532: { name value disabled; readonly }
533: tabindex; accesskey;
534: { tabindex accesskey }
535: onfocus; onblur) =
536: { onfocus onblur }
537: BEGIN
1.56 cvs 538: Frame;
1.63 cvs 539: END with Value_ ?= 'Submit';
540: Reset_Input { INPUT / RESET }
541: (ATTR NAME; Value_; disabled; readonly;
542: { name value disabled readonly }
543: tabindex; accesskey;
544: { tabindex accesskey }
545: onfocus; onblur) =
546: { onfocus onblur }
547: BEGIN
1.56 cvs 548: Frame;
1.68 cvs 549: END - (Input) with NAME ?= 'Reset',
550: Value_ ?= 'Reset';
551: Button_Input { INPUT / BUTTON }
1.66 cvs 552: (ATTR !NAME; Value_; disabled; readonly;
553: { name value disabled readonly }
1.63 cvs 554: tabindex; accesskey;
555: { tabindex accesskey }
1.68 cvs 556: onfocus; onblur) =
1.63 cvs 557: { onfocus onblur }
1.68 cvs 558: BEGIN
559: Frame;
560: END;
561: BUTTON { BUTTON }
562: (ATTR !NAME; Value_;
563: { name value }
564: Button_type = button, submit, reset;
565: { type button submit reset }
566: disabled; tabindex; accesskey;
567: { disabled tabindex accesskey }
568: onfocus; onblur) =
569: { onfocus onblur }
1.69 cvs 570: Basic_Set - (Anchor, Form, Fieldset, Input);
1.68 cvs 571: LABEL { LABEL }
572: (ATTR Associated_control = TEXT;
573: { for }
574: accesskey; onfocus; onblur) =
575: { accesskey onfocus onblur }
1.71 cvs 576: Basic_Set;
1.63 cvs 577: Hidden_Input { INPUT / HIDDEN }
1.68 cvs 578: (ATTR !NAME; Value_; disabled;
579: { name value disabled }
1.63 cvs 580: tabindex; accesskey;
581: { tabindex accesskey }
582: onfocus; onblur) =
583: { onfocus onblur }
584: CONSTANT C_Empty;
1.59 cvs 585: Option_Menu; { SELECT }
586: Text_Area; { TEXTAREA }
1.8 cvs 587: END;
1.1 cvs 588:
589: Text_With_Frame = BEGIN
590: Inserted_Text = TEXT;
591: Frame = CONSTANT C_Empty;
592: END;
593:
1.63 cvs 594: Table_row { TR }
595: (ATTR Cell_align = Cell_left, Cell_center, Cell_right,
596: { align left center right }
597: Cell_justify, Cell_char;
598: { justify char }
599: char = Text; charoff = Text;
600: { char charoff }
601: Row_valign = Row_top, Row_middle, Row_bottom, Row_baseline;
602: { valign top middle bottom baseline }
1.71 cvs 603: BackgroundColor; height\240 = Integer) =
604: { bgcolor Special attribute to control row span }
1.63 cvs 605: LIST OF (Table_cell);
606:
607: Table { TABLE }
608: (ATTR summary = Text; Width__; Border = Integer;
609: { summary width border }
610: frame = void, above, below, hsides, lhs, rhs,
611: { frame void above below hsides lhs rhs }
612: vsides, box, border;
613: { vsides box border }
614: rules_ = none, groups, rows, cols, all;
615: { rules none groups rows cols all }
616: cellspacing = Integer; cellpadding = Integer;
617: { cellspacing cellpadding }
618: Align; BackgroundColor;
619: { align bgcolor }
620: datapagesize = Text; IntWidthPxl; IntWidthPercent) =
621: { datapagesize }
1.1 cvs 622: BEGIN
1.63 cvs 623: CAPTION ; { CAPTION }
1.1 cvs 624: Table_head = LIST OF (Column_head);
1.63 cvs 625: ? thead; { THEAD }
626: Table_body = LIST OF (tbody);
627: ? tfoot; { TFOOT }
1.1 cvs 628: Table_foot = CONSTANT C_Foot;
1.49 cvs 629: END;
1.63 cvs 630:
631: CAPTION { CAPTION }
632: (ATTR Position = Position_top, Position_bottom,
633: { align top bottom }
634: Position_left, Position_right) =
635: { left right }
636: Basic_Set;
637:
1.44 cvs 638: Column_head (ATTR IntWidthPercent; IntWidthPxl) =
639: CONSTANT C_Head;
1.63 cvs 640:
641: thead { THEAD }
642: (ATTR Cell_align; char; charoff; Row_valign) =
643: LIST OF (Table_row);
644:
645: tbody { TBODY }
646: (ATTR Cell_align; char; charoff; Row_valign) =
647: LIST OF (Table_row);
648:
649: tfoot { TFOOT }
650: (ATTR Cell_align; char; charoff; Row_valign) =
651: LIST OF (Table_row);
652:
1.1 cvs 653: Table_cell = CASE OF
1.63 cvs 654: Data_cell; { TD }
655: Heading_cell; { TH }
656: END;
657:
658: Data_cell { TD }
659: (ATTR Ref_column = REFERENCE(Column_head);
660: ColExt = REFERENCE(Column_head);
661: RowExt = REFERENCE(Table_row);
662: abbr = Text; axis = Text; headers = Text; scope = Text;
663: { abbr axis headers scope }
664: rowspan_ = INTEGER; colspan_ = INTEGER;
665: { rowspan colspan }
666: Cell_align; char; charoff;
667: { align char charoff }
668: Cell_valign = Cell_top, Cell_middle, Cell_bottom, Cell_baseline;
669: { valign top middle bottom baseline }
670: No_wrap = no_wrap; BackgroundColor;
671: { nowrap bgcolor }
672: Width__; Height_; IntWidthPxl; IntWidthPercent) =
673: { width height }
674: LIST OF (Element);
675:
676: Heading_cell { TH }
677: (ATTR Ref_column; ColExt; RowExt;
678: abbr; axis; headers; scope;
679: { abbr axis headers scope }
680: rowspan_; colspan_;
681: { rowspan colspan }
682: Cell_align; char; charoff; Cell_valign;
683: { align char charoff valign }
684: No_wrap; BackgroundColor;
685: { nowrap bgcolor }
686: Width__; Height_; IntWidthPxl; IntWidthPercent) =
687: { width height }
688: LIST OF (Element);
689:
690: MAP { MAP }
691: (ATTR NAME; Ref_IMG = REFERENCE(Any)) =
692: { name }
693: LIST OF (AREA);
694:
695: AREA { AREA }
696: (ATTR shape; coords; HREF_; target_; nohref = Yes_; ALT;
697: { shape coords href target nohref alt }
698: tabindex; accesskey; onfocus; onblur;
699: { tabindex accesskey onfocus onblur }
700: x_coord = Integer; y_coord = Integer; IntWidthPxl;
1.71 cvs 701: height\240; AreaRef_IMG = REFERENCE(Any)) =
1.63 cvs 702: GRAPHICS with x_coord ?= 0, y_coord ?= 0,
703: IntWidthPxl ?= 25, height\240 ?= 10;
1.1 cvs 704:
1.72 ! cvs 705: FRAMESET { FRAMESET }
! 706: (ATTR RowHeight = Text; ColWidth = Text;
! 707: { rows cols }
! 708: onload; onunload) =
! 709: { onload onunload }
1.59 cvs 710: AGGREGATE
1.72 ! cvs 711: Frames = LIST [1 .. *] OF (FrameElem = CASE OF
! 712: FRAME;
! 713: FRAMESET;
! 714: END - (NOFRAMES));
! 715: ? NOFRAMES = BODY + (INS, DEL); { NOFRAMES }
1.59 cvs 716: END;
717:
1.72 ! cvs 718: FRAME { FRAME }
! 719: (ATTR longdesc; FrameName = Text; FrameSrc = Text;
! 720: { longdesc name src }
! 721: frameborder = Border1, Border0;
! 722: { frameborder 1 0 }
! 723: marginwidth = Integer; marginheight = Integer;
! 724: { marginwidth marginheight }
! 725: no_resize = Yes_; scrolling = Yes_, No_, auto) =
! 726: { noresize scrolling yes no auto }
1.63 cvs 727: CONSTANT C_Empty;
1.59 cvs 728:
1.63 cvs 729: IFRAME { IFRAME }
1.72 ! cvs 730: (ATTR longdesc; FrameName; FrameSrc; frameborder;
! 731: { longdesc name src frameborder }
! 732: marginwidth; marginheight; scrolling;
! 733: { marginwidth marginheight scrolling }
! 734: Alignment; Width__; Height_) =
! 735: { align width height }
1.63 cvs 736: LIST OF (Element);
1.59 cvs 737:
1.72 ! cvs 738: { AnyLink is an alias for all elements with an attribute
! 739: of type URI. Only elements to be shown in the Links view
! 740: are taken into account }
! 741: AnyLink = CASE OF
! 742: Anchor; { HREF_ }
! 743: Block_Quote; { cite }
! 744: Quotation; { cite }
! 745: INS; { cite }
! 746: DEL; { cite }
! 747: END;
! 748:
1.1 cvs 749: EXCEPT
1.25 cvs 750: HTML: NoMove, NoResize;
1.1 cvs 751: BODY: NoCut;
752: HEAD: NoCut;
753: TITLE: NoCut;
754: Document_URL: Hidden, NoSpellCheck;
1.68 cvs 755: C_Empty: Hidden;
1.9 cvs 756: C_BR: NoSelect;
1.68 cvs 757: Styles: Hidden;
758: Scripts: Hidden;
759: Metas: Hidden;
760: Links: Hidden;
1.72 ! cvs 761: Frames: Hidden;
1.68 cvs 762: Frame: Hidden, NoCut;
763: Inserted_Text: Hidden, NoCut;
764: Basic_Set: Hidden;
765: Term_List: Hidden;
1.63 cvs 766: Definition_Item:Hidden;
1.1 cvs 767: Comment_line: Hidden;
768: GRAPHICS: NoMove, NoResize;
1.41 cvs 769: TEXT: NoMove, NoResize;
1.26 cvs 770: PICTURE: MoveResize;
1.63 cvs 771: Invalid_element:NoCreate;
772: Pseudo_paragraph: ParagraphBreak, Hidden;
1.1 cvs 773: Paragraph: ParagraphBreak;
774: H1: ParagraphBreak;
775: H2: ParagraphBreak;
776: H3: ParagraphBreak;
777: H4: ParagraphBreak;
778: H5: ParagraphBreak;
779: H6: ParagraphBreak;
780: Address: ParagraphBreak;
781: Term: ParagraphBreak;
782: MAP: IsDraw;
783: AREA: MoveResize;
1.70 cvs 784: Password_Input: Shadow;
1.19 cvs 785: Preformatted: ReturnCreateNL;
1.64 cvs 786: STYLE_: ReturnCreateNL;
787: SCRIPT: ReturnCreateNL;
1.68 cvs 788: Text_Area: ReturnCreateNL;
1.52 cvs 789: #ifdef GRAPHML
1.68 cvs 790: HTMLfragment: NoMove, NoResize, Hidden;
1.53 cvs 791: XMLGraphics: MoveResize, NoMove;
1.52 cvs 792: #endif
1.1 cvs 793:
1.29 cvs 794: ExternalLink: Invisible;
1.15 cvs 795: InternalLink: Invisible;
1.44 cvs 796: IntWidthPercent:NewPercentWidth, Invisible;
797: IntWidthPxl: NewWidth, Invisible;
1.1 cvs 798: SRC: Invisible;
799: IntItemStyle: Invisible;
800: IntSizeIncr: Invisible;
801: IntSizeDecr: Invisible;
802: IntSizeRel: Invisible;
803: x_coord: Invisible, NewHPos;
804: y_coord: Invisible, NewVPos;
805: height\240: Invisible, NewHeight;
806: Ref_IMG: Invisible;
807: AreaRef_IMG: Invisible;
808: Invalid_attribute: Invisible;
809: PseudoClass: Invisible;
810: Default_Value: Invisible;
1.63 cvs 811: DefaultSelected:Invisible;
1.1 cvs 812: DefaultChecked: Invisible;
1.17 cvs 813: SectionNumbering:Invisible;
1.22 cvs 814: ShowAreas: Invisible;
1.65 cvs 815: Namespaces: Invisible;
1.72 ! cvs 816: HtmlDTD: Invisible;
1.50 cvs 817: shape: Invisible;
1.44 cvs 818: Data_cell: IsCell, NoMove, NoResize;
819: Heading_cell: IsCell, NoMove, NoResize;
820: Table: IsTable, PageBreak;
1.68 cvs 821: Column_head: IsColHead, NoCut, Hidden;
822: Table_head: NoCut, Hidden;
823: C_Head: Hidden;
1.25 cvs 824: Table_foot: NoCut, Hidden, PageBreakRepBefore;
1.68 cvs 825: C_Foot: Hidden;
1.38 cvs 826: Table_body: PageBreakAllowed, Hidden;
1.44 cvs 827: Table_row: IsRow, PageBreakPlace;
1.1 cvs 828: ColExt: Invisible;
1.2 cvs 829: RowExt: Invisible;
1.44 cvs 830: Ref_column: ColRef, Invisible;
831: colspan_: ColSpan;
832: rowspan_: RowSpan;
1.68 cvs 833: Object_Content: Hidden, NoCreate, NoCut;
1.1 cvs 834: Ghost_restruct: Invisible;
1.63 cvs 835:
1.1 cvs 836: END
Webmaster