Annotation of Amaya/amaya/HTML.S, revision 1.222
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.59 cvs 411: Block = CASE OF { block }
412: Paragraph; { P }
1.20 cvs 413: Pseudo_paragraph;
1.59 cvs 414: Heading; { heading }
415: List_; { list + DL }
416: Block_Quote; { BLOCKQUOTE }
417: Preformatted; { PRE }
418: Division; { DIV }
1.63 cvs 419: Center; { CENTER }
1.1 cvs 420: Form;
1.73 cvs 421: Horizontal_Rule; { HR }
1.193 quint 422: Table_; { TABLE }
1.73 cvs 423: Address; { ADDRESS }
1.1 cvs 424: END;
425:
1.63 cvs 426: Division { DIV }
427: (ATTR TextAlign) =
428: { align }
429: LIST OF (Element);
430:
431: Center = { CENTER }
432: LIST OF (Element);
1.1 cvs 433:
1.59 cvs 434: List_ = CASE OF { list }
1.63 cvs 435: Unnumbered_List; { UL }
436: Numbered_List; { OL }
437: Directory; { DIR }
438: Menu; { MENU }
439: Definition_List; { DL }
440: END;
441:
442: Unnumbered_List { UL }
1.193 quint 443: (ATTR BulletStyle = disc_, circle_, square_;
444: { type disc circle square }
1.63 cvs 445: COMPACT = Yes_) =
446: { compact }
447: LIST OF (List_Item);
448:
449: Numbered_List { OL }
450: (ATTR NumberStyle = Arabic_, LowerAlpha, UpperAlpha,
451: { type 1 a A }
1.193 quint 452: LowerRoman_, UpperRoman_;
453: { i I }
1.63 cvs 454: Start = Integer; COMPACT) =
455: { start compact }
1.193 quint 456: LIST OF (List_Item);
1.63 cvs 457:
458: Directory { DIR }
459: (ATTR COMPACT) =
460: { compact }
461: LIST OF (List_Item);
462:
463: Menu { MENU }
464: (ATTR COMPACT) =
465: { compact }
466: LIST OF (List_Item);
467:
468: List_Item { LI }
1.193 quint 469: (ATTR ItemStyle = disc_, circle_, square_, Arabic_,
470: { type disc circle square 1 }
471: LowerAlpha, UpperAlpha, LowerRoman_, UpperRoman_;
472: { a A i I }
1.63 cvs 473: ItemValue = Integer) =
474: { value }
1.1 cvs 475: LIST OF (Block);
476:
1.189 quint 477: Definition_List { DL }
478: (ATTR COMPACT) =
479: { compact }
480: LIST OF (Definition_Item);
481:
1.59 cvs 482: Definition_Item = BEGIN
483: Term_List = LIST OF (Term = Basic_Set); { DT }
1.132 cvs 484: ? Definitions = LIST OF (Definition = LIST OF (Block)); { DD }
1.1 cvs 485: END;
486:
1.63 cvs 487: Form { FORM }
488: (ATTR !Script_URL = Text; METHOD = Get_, Post_;
489: { action method }
490: ENCTYPE = Text; onsubmit = Text; onreset = Text;
491: { enctype onsubmit onreset }
492: target_; accept_charset = Text) =
493: { target accept-charset }
1.166 quint 494: LIST OF (Element) + (Input) - (Form);
1.1 cvs 495:
496: Form_Element = CASE OF
1.166 quint 497: Input; { INPUT }
1.59 cvs 498: Option_Menu; { SELECT }
1.63 cvs 499: Text_Area; { TEXTAREA }
1.166 quint 500: LABEL; { LABEL }
501: BUTTON_; { BUTTON }
1.1 cvs 502: END;
503:
1.63 cvs 504: Option_Menu { SELECT }
1.202 quint 505: (ATTR NAME; MenuSize = Integer; Multiple = Yes_;
1.63 cvs 506: { name size multiple }
507: disabled = Yes_; tabindex; onfocus; onblur;
508: { disabled tabindex onfocus onblur}
509: onchange = Text) =
510: { onchange }
1.91 cvs 511: LIST OF (Option_item = CASE OF Option; OptGroup; END) - (Input);
1.63 cvs 512:
513: Option { OPTION }
1.182 quint 514: (ATTR Selected = Yes_; DefaultSelected = Yes_; ShowMe = Yes_;
1.63 cvs 515: { selected }
1.202 quint 516: disabled; label = Text; Value_ = Text) =
517: { disabled label value }
1.1 cvs 518: TEXT;
1.76 cvs 519:
520: OptGroup { OPTGROUP }
1.78 cvs 521: (ATTR disabled; !label) =
522: { disabled label }
1.76 cvs 523: LIST OF (Option);
1.1 cvs 524:
1.63 cvs 525: Text_Area { TEXTAREA }
1.197 quint 526: (ATTR NAME; !Rows = Integer; !Columns = Integer;
527: { name rows cols }
1.63 cvs 528: disabled; readonly = Yes_; tabindex; accesskey;
529: { disabled readonly tabindex accesskey }
530: onfocus; onblur; onselect = Text; onchange;
531: { onfocus onblur onselect onchange }
532: Default_Value = Text) =
1.203 vatton 533: Input_Text - (Input) {with Rows ?= 4, Columns ?= 20};
1.63 cvs 534:
1.79 cvs 535: FIELDSET = { FIELDSET }
536: BEGIN
537: LEGEND;
538: Basic_Set;
539: END;
540:
541: LEGEND { LEGEND }
542: (ATTR accesskey; LAlign = Top_, Bottom_, Left_, Right_) =
543: { accesskey align top bottom left right }
544: Basic_Set;
545:
1.62 cvs 546: Input = CASE OF { formctrl }
1.212 vatton 547: Text_Input { INPUT / TEXT }
1.222 ! vatton 548: (ATTR type = Text;
! 549: NAME; Value_; disabled; readonly;
! 550: { type name value disabled readonly }
1.63 cvs 551: Area_Size = Integer; MaxLength = Integer;
552: { size maxlength }
1.162 quint 553: IntAreaSize = Integer;
1.63 cvs 554: tabindex; accesskey;
555: { tabindex accesskey }
1.66 cvs 556: onfocus; onblur; onselect; onchange;
1.63 cvs 557: { onfocus onblur onselect onchange }
1.66 cvs 558: Default_Value) =
1.222 ! vatton 559: Input_Text - (Input) with type = 'text';
1.212 vatton 560:
561: Password_Input { INPUT / PASSWORD }
1.222 ! vatton 562: (ATTR type; NAME; Value_; disabled; readonly; ALT;
! 563: { type name value disabled readonly alt}
1.162 quint 564: Area_Size; IntAreaSize; MaxLength;
565: { size maxlength }
1.66 cvs 566: tabindex; accesskey;
567: { tabindex accesskey }
568: onfocus; onblur; onselect; onchange;
569: { onfocus onblur onselect onchange }
570: Default_Value) =
1.222 ! vatton 571: Input_Text - (Input) with type = 'password';
1.212 vatton 572:
573: File_Input { INPUT / FILE }
1.222 ! vatton 574: (ATTR type; NAME; Value_; disabled; readonly; ALT;
! 575: { type name value disabled readonly alt }
1.162 quint 576: Area_Size; IntAreaSize; MaxLength;
577: { size maxlength }
1.68 cvs 578: tabindex; accesskey;
579: { tabindex accesskey }
580: onfocus; onblur; accept = Text;
581: { onfocus onblur }
582: Default_Value) =
1.222 ! vatton 583: Input_Text - (Input) with type = 'file';
1.212 vatton 584:
585: Checkbox_Input { INPUT / CHECKBOX }
1.222 ! vatton 586: (ATTR type; NAME; Value_; Checked = Yes_, No_; ALT;
! 587: { type name value checked alt }
1.63 cvs 588: disabled; readonly;
589: { disabled readonly }
590: tabindex; accesskey; onfocus; onblur;
591: { tabindex accesskey onfocus onblur }
592: DefaultChecked = Yes_, No_) =
1.222 ! vatton 593: CONSTANT C_Empty with Checked ?= No_, type = 'checkbox';
! 594:
! 595: Image_Input { INPUT / IMAGE }
! 596: (ATTR type; NAME; Value_; !SRC; ALT;
! 597: { type name value src alt }
! 598: Area_Size; IntWidthPxl;
! 599: { size }
! 600: USEMAP; ISAMAP;
! 601: { usemap ismap }
! 602: disabled; readonly; tabindex; accesskey;
! 603: { disabled readonly tabindex accesskey }
! 604: onfocus; onblur;) =
! 605: { onfocus onblur }
! 606: BEGIN
! 607: PICTURE;
! 608: END with NAME ?= 'radio', type = 'image';
1.212 vatton 609:
610: Radio_Input { INPUT / RADIO }
1.222 ! vatton 611: (ATTR type; NAME; Value_; Checked; ALT;
! 612: { type name value checked disabled alt }
! 613: disabled; readonly; tabindex; accesskey;
! 614: { disabled readonly tabindex accesskey }
1.63 cvs 615: onfocus; onblur;
616: { onfocus onblur }
617: DefaultChecked) =
1.222 ! vatton 618: CONSTANT C_Empty with Checked ?= No_, NAME ?= 'radio', type = 'radio';
1.212 vatton 619:
620: Submit_Input { INPUT / SUBMIT }
1.222 ! vatton 621: (ATTR type; NAME; Value_; disabled; readonly; ALT;
! 622: { type name value disabled; readonly alt }
1.63 cvs 623: tabindex; accesskey;
624: { tabindex accesskey }
625: onfocus; onblur) =
626: { onfocus onblur }
1.212 vatton 627: BEGIN
628: CONSTANT C_Empty;
1.222 ! vatton 629: END with Value_ ?= 'Submit', type = 'submit';
1.212 vatton 630:
631: Reset_Input { INPUT / RESET }
1.222 ! vatton 632: (ATTR type; NAME; Value_; disabled; readonly; ALT;
! 633: { type name value disabled readonly alt }
1.63 cvs 634: tabindex; accesskey;
635: { tabindex accesskey }
636: onfocus; onblur) =
637: { onfocus onblur }
638: BEGIN
1.99 cvs 639: CONSTANT C_Empty;
1.222 ! vatton 640: END - (Input) with NAME ?= 'Reset', Value_ ?= 'Reset', type = 'reset';
1.212 vatton 641:
642: Button_Input { INPUT / BUTTON }
1.222 ! vatton 643: (ATTR type; NAME; Value_; disabled; readonly; ALT;
! 644: { type name value disabled readonly alt }
1.63 cvs 645: tabindex; accesskey;
646: { tabindex accesskey }
1.68 cvs 647: onfocus; onblur) =
1.63 cvs 648: { onfocus onblur }
1.68 cvs 649: BEGIN
1.99 cvs 650: CONSTANT C_Empty;
1.222 ! vatton 651: END with type = 'button';
1.79 cvs 652:
1.212 vatton 653: Hidden_Input { INPUT / HIDDEN }
1.222 ! vatton 654: (ATTR type; NAME; Value_; disabled; ALT;
! 655: { type name value disabled alt }
1.189 quint 656: tabindex; accesskey;
657: { tabindex accesskey }
658: onfocus; onblur) =
659: { onfocus onblur }
1.222 ! vatton 660: CONSTANT C_Empty with type = 'hidden';
1.189 quint 661:
1.212 vatton 662: BUTTON_ { BUTTON }
1.202 quint 663: (ATTR NAME; Value_;
1.68 cvs 664: { name value }
665: Button_type = button, submit, reset;
1.222 ! vatton 666: { button submit reset }
1.68 cvs 667: disabled; tabindex; accesskey;
668: { disabled tabindex accesskey }
669: onfocus; onblur) =
670: { onfocus onblur }
1.79 cvs 671: Basic_Set - (Anchor, Input, Form, FIELDSET, IFRAME);
1.68 cvs 672: LABEL { LABEL }
673: (ATTR Associated_control = TEXT;
674: { for }
675: accesskey; onfocus; onblur) =
676: { accesskey onfocus onblur }
1.71 cvs 677: Basic_Set;
1.212 vatton 678:
679: Option_Menu; { SELECT }
680: Text_Area; { TEXTAREA }
1.8 cvs 681: END;
1.1 cvs 682:
1.177 quint 683: Input_Text = BEGIN
1.212 vatton 684: Inserted_Text = TEXT;
1.1 cvs 685: END;
686:
1.197 quint 687: Table_ { TABLE }
1.63 cvs 688: (ATTR summary = Text; Width__; Border = Integer;
689: { summary width border }
690: frame = void, above, below, hsides, lhs, rhs,
691: { frame void above below hsides lhs rhs }
692: vsides, box, border;
693: { vsides box border }
1.97 cvs 694: rules_ = none_, groups, rows, cols, all;
695: { rules none groups rows cols all }
1.63 cvs 696: cellspacing = Integer; cellpadding = Integer;
697: { cellspacing cellpadding }
698: Align; BackgroundColor;
699: { align bgcolor }
700: datapagesize = Text; IntWidthPxl; IntWidthPercent) =
701: { datapagesize }
1.1 cvs 702: BEGIN
1.204 quint 703: ? CAPTION; { CAPTION }
1.115 cvs 704: ? Cols = LIST OF (Col_elem = CASE OF
1.85 cvs 705: COL; { COL }
706: COLGROUP; { COLGROUP }
707: END);
1.1 cvs 708: Table_head = LIST OF (Column_head);
1.63 cvs 709: ? thead; { THEAD }
710: Table_body = LIST OF (tbody);
711: ? tfoot; { TFOOT }
1.49 cvs 712: END;
1.63 cvs 713:
714: CAPTION { CAPTION }
715: (ATTR Position = Position_top, Position_bottom,
716: { align top bottom }
717: Position_left, Position_right) =
718: { left right }
719: Basic_Set;
720:
1.189 quint 721: COLGROUP { COLGROUP }
722: (ATTR Cell_align = Cell_left, Cell_center, Cell_right,
723: { align left center right }
724: Cell_justify, Cell_char;
725: { justify char }
726: Cell_valign = Cell_top, Cell_middle, Cell_bottom, Cell_baseline;
727: { valign top middle bottom baseline }
728: Width__; span_ = Integer)
729: { width span }
730: = LIST OF (COL);
731:
732: COL { COL }
733: (ATTR Cell_align; Cell_valign; Width__; span_)
734: { align valign width span }
735: = CONSTANT C_Empty;
736:
1.44 cvs 737: Column_head (ATTR IntWidthPercent; IntWidthPxl) =
738: CONSTANT C_Head;
1.63 cvs 739:
740: thead { THEAD }
1.189 quint 741: (ATTR Cell_align; char = Text; charoff = Text;
742: Row_valign = Row_top, Row_middle, Row_bottom, Row_baseline) =
743: { valign top middle bottom baseline }
1.63 cvs 744: LIST OF (Table_row);
745:
746: tbody { TBODY }
747: (ATTR Cell_align; char; charoff; Row_valign) =
748: LIST OF (Table_row);
749:
750: tfoot { TFOOT }
751: (ATTR Cell_align; char; charoff; Row_valign) =
752: LIST OF (Table_row);
753:
1.189 quint 754: Table_row { TR }
755: (ATTR Cell_align; char; charoff; Row_valign;
756: { align char charoff valign }
757: BackgroundColor; IntHeightPxl) =
758: { bgcolor Special attribute to control row span }
759: LIST OF (Table_cell);
760:
1.1 cvs 761: Table_cell = CASE OF
1.63 cvs 762: Data_cell; { TD }
763: Heading_cell; { TH }
764: END;
765:
766: Data_cell { TD }
767: (ATTR Ref_column = REFERENCE(Column_head);
768: ColExt = REFERENCE(Column_head);
769: RowExt = REFERENCE(Table_row);
770: abbr = Text; axis = Text; headers = Text; scope = Text;
771: { abbr axis headers scope }
772: rowspan_ = INTEGER; colspan_ = INTEGER;
773: { rowspan colspan }
1.189 quint 774: Cell_align; char; charoff; Cell_valign;
775: { align char charoff valign }
1.63 cvs 776: No_wrap = no_wrap; BackgroundColor;
777: { nowrap bgcolor }
1.129 vatton 778: Width__; IntWidthPxl; IntWidthPercent;
779: Height_; IntHeightPercent; IntHeightPxl;) =
1.63 cvs 780: { width height }
781: LIST OF (Element);
782:
783: Heading_cell { TH }
784: (ATTR Ref_column; ColExt; RowExt;
785: abbr; axis; headers; scope;
786: { abbr axis headers scope }
787: rowspan_; colspan_;
788: { rowspan colspan }
789: Cell_align; char; charoff; Cell_valign;
790: { align char charoff valign }
791: No_wrap; BackgroundColor;
792: { nowrap bgcolor }
1.129 vatton 793: Width__; IntWidthPxl; IntWidthPercent;
794: Height_; IntHeightPercent; IntHeightPxl) =
1.63 cvs 795: { width height }
796: LIST OF (Element);
797:
798: MAP { MAP }
1.215 vatton 799: (ATTR NAME; Ref_IMG = REFERENCE(Any)) =
1.125 vatton 800: { name linked to an image}
1.145 quint 801: LIST OF (ElemOrArea = CASE OF Element; AREA; END);
1.125 vatton 802:
803: map { MAP }
1.215 vatton 804: (ATTR NAME) =
1.63 cvs 805: { name }
1.176 vatton 806: LIST OF (Element);
1.63 cvs 807:
808: AREA { AREA }
1.197 quint 809: (ATTR shape; coords; HREF_; target_; nohref = Yes_; !ALT;
810: { shape coords href target nohref alt }
1.63 cvs 811: tabindex; accesskey; onfocus; onblur;
812: { tabindex accesskey onfocus onblur }
813: x_coord = Integer; y_coord = Integer; IntWidthPxl;
1.130 vatton 814: IntHeightPxl; AreaRef_IMG = REFERENCE(Any)) =
1.63 cvs 815: GRAPHICS with x_coord ?= 0, y_coord ?= 0,
1.130 vatton 816: IntWidthPxl ?= 25, IntHeightPxl ?= 10;
1.1 cvs 817:
1.72 cvs 818: FRAMESET { FRAMESET }
819: (ATTR RowHeight = Text; ColWidth = Text;
820: { rows cols }
821: onload; onunload) =
822: { onload onunload }
1.59 cvs 823: AGGREGATE
1.72 cvs 824: Frames = LIST [1 .. *] OF (FrameElem = CASE OF
825: FRAME;
826: FRAMESET;
827: END - (NOFRAMES));
828: ? NOFRAMES = BODY + (INS, DEL); { NOFRAMES }
1.59 cvs 829: END;
830:
1.72 cvs 831: FRAME { FRAME }
1.188 quint 832: (ATTR longdesc; NAME; FrameSrc = Text;
833: { longdesc name src }
1.72 cvs 834: frameborder = Border1, Border0;
835: { frameborder 1 0 }
836: marginwidth = Integer; marginheight = Integer;
837: { marginwidth marginheight }
1.98 cvs 838: no_resize = Yes_; scrolling = Yes_, No_, auto_) =
1.72 cvs 839: { noresize scrolling yes no auto }
1.63 cvs 840: CONSTANT C_Empty;
1.59 cvs 841:
1.63 cvs 842: IFRAME { IFRAME }
1.188 quint 843: (ATTR longdesc; NAME; FrameSrc; frameborder;
844: { longdesc name src frameborder }
1.72 cvs 845: marginwidth; marginheight; scrolling;
846: { marginwidth marginheight scrolling }
847: Alignment; Width__; Height_) =
848: { align width height }
1.181 cvs 849: BEGIN
850: Iframe_Src_Content= NATURE;
1.188 quint 851: Iframe_Content = LIST OF (Element); { flow }
1.181 cvs 852: END;
1.59 cvs 853:
1.121 cvs 854: ruby = { ruby }
855: CASE OF
856: simple_ruby;
857: complex_ruby;
858: END;
859:
1.124 cvs 860: simple_ruby = { ruby }
1.121 cvs 861: BEGIN
1.122 cvs 862: rb = Basic_Set - (simple_ruby, complex_ruby);
1.145 quint 863: RtOrRtWithPar = CASE OF
1.124 cvs 864: rt (ATTR rbspan = Integer) =
865: Basic_Set - (simple_ruby, complex_ruby);
1.145 quint 866: RtWithPar = BEGIN
1.121 cvs 867: rp = TEXT;
868: rt;
869: rp;
870: END;
871: END;
872: END;
873:
1.124 cvs 874: complex_ruby = { ruby }
1.121 cvs 875: BEGIN
876: rbc = LIST OF (rb);
877: rtc1 = LIST OF (rt);
878: ? rtc2 = LIST OF (rt);
879: END;
880:
1.72 cvs 881: { AnyLink is an alias for all elements with an attribute
882: of type URI. Only elements to be shown in the Links view
883: are taken into account }
884: AnyLink = CASE OF
885: Anchor; { HREF_ }
886: Block_Quote; { cite }
887: Quotation; { cite }
888: INS; { cite }
889: DEL; { cite }
890: END;
891:
1.1 cvs 892: EXCEPT
1.25 cvs 893: HTML: NoMove, NoResize;
1.156 quint 894: BODY: NoCut, CssBackground, NoMove, NoResize,
1.170 quint 895: SetWindowBackground, NoBreakByReturn;
1.1 cvs 896: HEAD: NoCut;
1.216 vatton 897: TITLE: NoCut, NoSpellCheck;
1.142 quint 898: Document_URL: Hidden, NoSpellCheck, NoCut;
1.153 quint 899: C_Empty: Hidden, NoSpellCheck, NoSelect;
1.118 cvs 900: C_BR: SelectParent;
1.72 cvs 901: Frames: Hidden;
1.74 cvs 902: FRAMESET: NoCreate; { prevent a Return at the end of the
903: document from creating a FRAMESET }
1.220 vatton 904: Inserted_Text: Hidden, NoCut, NoSpellCheck, CheckAllChars;
1.68 cvs 905: Basic_Set: Hidden;
1.132 cvs 906: Definition_Item:Hidden;
1.205 quint 907: Term_List: Hidden, CanCut;
1.132 cvs 908: Definitions: Hidden;
1.217 quint 909: XMLPI: ReturnCreateNL, NoSpellCheck, NoReplicate, NotAnElementNode;
910: Comment\240: ReturnCreateNL, NoSpellCheck, NoReplicate, NotAnElementNode;
1.208 vatton 911: Comment_line: Hidden, MarkupPreserve;
912: PI_line: Hidden, MarkupPreserve;
1.217 quint 913: DOCTYPE: NoCut, NoSpellCheck, NotAnElementNode;
1.192 vatton 914: DOCTYPE_line: Hidden, NoCut;
1.209 vatton 915: CDATA_line: Hidden, MarkupPreserve;
916: GRAPHICS: NoMove, NoResize, SelectParent;
1.41 cvs 917: TEXT: NoMove, NoResize;
1.26 cvs 918: PICTURE: MoveResize;
1.63 cvs 919: Invalid_element:NoCreate;
1.127 cvs 920: Unknown_namespace:NoCreate;
1.164 cvs 921: XHTML_Unknown_namespace:NoCreate;
1.209 vatton 922: BR: IsBreak;
1.63 cvs 923: Pseudo_paragraph: ParagraphBreak, Hidden;
1.117 kahan 924: Basic_Elem: Hidden;
1.1 cvs 925: Paragraph: ParagraphBreak;
926: H1: ParagraphBreak;
927: H2: ParagraphBreak;
928: H3: ParagraphBreak;
929: H4: ParagraphBreak;
930: H5: ParagraphBreak;
931: H6: ParagraphBreak;
932: Address: ParagraphBreak;
933: Term: ParagraphBreak;
1.221 vatton 934: MAP: IsDraw, IsMap;
935: IMG: IsImg;
1.222 ! vatton 936: Image_Input: IsImg;
1.158 quint 937: AREA: MoveResize, ClickableSurface, HighlightChildren;
1.209 vatton 938: Anchor: ClickableSurface;
1.70 cvs 939: Password_Input: Shadow;
1.146 vatton 940: Preformatted: ReturnCreateNL, NoReplicate;
1.201 quint 941: STYLE_: ReturnCreateNL, NoSpellCheck, NoReplicate;
1.146 vatton 942: SCRIPT_: ReturnCreateNL, NoReplicate;
943: Text_Area: ReturnCreateNL, NoReplicate;
1.170 quint 944: HTMLfragment: NoMove, NoResize, Hidden, NoBreakByReturn;
1.147 vatton 945: Division: NoMove, NoResize;
1.169 vatton 946: Form: NoReplicate;
1.1 cvs 947:
1.29 cvs 948: ExternalLink: Invisible;
1.15 cvs 949: InternalLink: Invisible;
1.44 cvs 950: IntWidthPercent:NewPercentWidth, Invisible;
951: IntWidthPxl: NewWidth, Invisible;
1.129 vatton 952: IntHeightPercent: Invisible;
953: IntHeightPxl: NewHeight, Invisible;
1.162 quint 954: IntAreaSize: Invisible;
1.1 cvs 955: IntSizeIncr: Invisible;
956: IntSizeDecr: Invisible;
957: IntSizeRel: Invisible;
958: x_coord: Invisible, NewHPos;
959: y_coord: Invisible, NewVPos;
960: Ref_IMG: Invisible;
961: AreaRef_IMG: Invisible;
962: Invalid_attribute: Invisible;
1.127 cvs 963: Unknown_attribute: Invisible;
1.90 cvs 964: Highlight: Invisible;
1.87 cvs 965: PseudoClass: Invisible, CssPseudoClass;
1.1 cvs 966: Default_Value: Invisible;
1.63 cvs 967: DefaultSelected:Invisible;
1.182 quint 968: ShowMe: Invisible;
1.1 cvs 969: DefaultChecked: Invisible;
1.22 cvs 970: ShowAreas: Invisible;
1.83 cvs 971: PrintURL: Invisible;
1.151 vatton 972: NoImages: Invisible;
1.167 gully 973: NoObjects: Invisible;
1.65 cvs 974: Namespaces: Invisible;
1.92 cvs 975: RealLang: Invisible;
1.101 cvs 976: Charset: Invisible;
1.143 cvs 977: PI: Invisible;
1.50 cvs 978: shape: Invisible;
1.170 quint 979: Data_cell: IsCell, NoMove, NoResize, NoBreakByReturn;
980: Heading_cell: IsCell, NoMove, NoResize, NoBreakByReturn;
1.190 vatton 981: Table_cell: IsCell, NoMove, NoResize, NoBreakByReturn;
1.193 quint 982: Table_: IsTable, PageBreak, NoReplicate, NoBreakByReturn;
1.214 vatton 983: CAPTION: IsCaption;
1.174 quint 984: Column_head: IsColHead, NoCut, Hidden, NoBreakByReturn;
985: Table_head: NoCut, Hidden, NoSelect, NoBreakByReturn;
1.75 cvs 986: C_Head: Hidden, NoSelect;
1.187 quint 987: Cols: Hidden, NoSelect, NoCreate;
1.173 quint 988: Table_body: PageBreakAllowed, Hidden, NoBreakByReturn;
1.209 vatton 989: thead: NoBreakByReturn;
990: tbody: NoBreakByReturn;
991: tfoot: NoBreakByReturn;
1.171 quint 992: Table_row: IsRow, PageBreakPlace, NoBreakByReturn;
1.209 vatton 993: rbc: Hidden;
994: rtc1: Hidden;
995: rtc2: Hidden;
1.1 cvs 996: ColExt: Invisible;
1.2 cvs 997: RowExt: Invisible;
1.44 cvs 998: Ref_column: ColRef, Invisible;
999: colspan_: ColSpan;
1000: rowspan_: RowSpan;
1.1 cvs 1001: Ghost_restruct: Invisible;
1.209 vatton 1002: IntEntity: Invisible;
1003: EntityName: Invisible;
1.82 cvs 1004: onclick: EventAttr;
1005: ondblclick: EventAttr;
1006: onmousedown: EventAttr;
1007: onmouseup: EventAttr;
1008: onmouseover: EventAttr;
1009: onmousemove: EventAttr;
1010: onmouseout: EventAttr;
1011: onkeypress: EventAttr;
1012: onkeydown: EventAttr;
1013: onkeyup: EventAttr;
1.134 cvs 1014: onload: EventAttr;
1015: onunload: EventAttr;
1016: onfocus: EventAttr;
1017: onblur: EventAttr;
1018: onsubmit: EventAttr;
1019: onreset: EventAttr;
1020: onchange: EventAttr;
1021: onselect: EventAttr;
1.206 vatton 1022: ID : CssId; {Default id attribute}
1.87 cvs 1023: Class: CssClass;
1.218 vatton 1024: External_Object_Content: Hidden, NoSpellCheck;
1025: Embed_: NoBreakByReturn, NoReplicate, NoSpellCheck;
1.145 quint 1026: Embed_Content: Hidden, NoSelect;
1.210 cvs 1027: Object: NoBreakByReturn, NoReplicate;
1028: Object_Content: Hidden, NoSelect, NoCreate, NoCut, NoBreakByReturn;
1029: Applet: NoBreakByReturn, NoReplicate;
1030: Applet_Content: Hidden, NoSelect, NoCreate, NoCut, NoBreakByReturn;
1.218 vatton 1031: IFRAME: NoBreakByReturn, NoReplicate, NoSpellCheck;
1.210 cvs 1032: Iframe_Content: Hidden, NoSelect, NoCut, NoBreakByReturn;
1033: Iframe_Src_Content: Hidden, NoCut, NoSelect;
1.194 quint 1034: is_css: Invisible;
1.209 vatton 1035: Start: StartCounter;
1036: ItemValue: SetCounter;
1.168 vatton 1037: xml_space: SpacePreserve;
1.1 cvs 1038: END
Webmaster