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