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