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