Annotation of Amaya/amaya/HTML.S, revision 1.20
1.1 cvs 1: { I. Vatton November 1994 }
2: STRUCTURE HTML;
3:
4: DEFPRES HTMLP;
5:
6: ATTR
7: Class = text;
8: PseudoClass = text;
9: Style\240 = TEXT;
10: Invalid_attribute = TEXT;
11: Ghost_restruct = TEXT;
12:
13: CONST
14: C_Empty = ' ';
15: C_Foot = ' ';
16: C_Head = ' ';
1.9 cvs 17: C_BR = '\212';
1.1 cvs 18:
19: STRUCT
1.18 cvs 20: HTML (ATTR SectionNumbering = Yes_; LinkNumbering = Yes_) =
1.17 cvs 21: BEGIN
1.1 cvs 22: HEAD;
23: BODY;
1.14 cvs 24: #ifdef R_HTML
25: END + (Invalid_element, Comment\240, Entity);
26: #else
1.1 cvs 27: END + (Invalid_element, Comment\240);
1.14 cvs 28: #endif
1.1 cvs 29:
30: BODY (ATTR background_ = Text; BackgroundColor = Text; TextColor = Text;
31: LinkColor = Text; VisitedLinkColor = Text; ActiveLinkColor = Text)
32: = LIST OF (Element);
33:
1.11 cvs 34: Invalid_element (ATTR Error_type = UnknownTag, BadPosition) = TEXT;
1.1 cvs 35: Comment\240 = LIST OF (Comment_line = TEXT);
36:
37: HEAD = AGGREGATE
38: Document_URL = TEXT;
39: TITLE = TEXT;
40: ? ISINDEX (ATTR Prompt = TEXT) = CONSTANT C_Empty;
41: ? BASE;
42: ? Styles (ATTR Notation = TEXT) = LIST OF (StyleRule);
43: ? Scripts = LIST OF (SCRIPT = TEXT);
44: ? Metas = LIST OF (META);
45: ? Links = LIST OF (LINK);
46: END;
47: META (ATTR http_equiv = Text; !meta_name = Text; !meta_content = Text)
48: = CONSTANT C_Empty;
1.11 cvs 49: LINK (ATTR !HREF_ = Text; REL = Text; REV = Text; Title = Text)
1.1 cvs 50: = CONSTANT C_Empty;
51:
52: StyleRule (ATTR Selector = TEXT) = TEXT;
53:
54: BASE (ATTR !HREF_) = CONSTANT C_Empty;
55:
1.14 cvs 56: #ifdef R_HTML
57: Entity (ATTR entity_name = TEXT; HREF_) = CONSTANT C_Empty;
58: #endif
59:
1.1 cvs 60: Element = CASE OF
61: Paragraph;
1.20 ! cvs 62: Pseudo_paragraph;
1.1 cvs 63: Heading;
64: List_;
65: Horizontal_Rule;
66: Block_Quote = LIST OF (Element);
67: Preformatted;
68: Address = LIST OF (AddressContent);
69: Division;
70: Center;
71: Applet;
72: #ifdef COUGAR
73: Object;
74: #endif
75: Form;
76: Table;
77: PICTURE;
78: MAP;
79: ISINDEX;
80: END;
81:
82: Horizontal_Rule (ATTR Align = left_, center_, right_;
83: NoShade = NoShade_; Size_ = Integer;
84: Width__ = Text; IntWidthPercent = Integer;
85: IntWidthPxl = Integer) =
86: CONSTANT C_Empty;
87:
88: AddressContent = CASE OF
89: Basic_Elem;
90: Paragraph;
1.20 ! cvs 91: Pseudo_paragraph;
1.1 cvs 92: END;
93:
94: Basic_Set = LIST OF (Basic_Elem);
95:
96: Heading = CASE OF
97: H1 (ATTR Align) = Basic_Set;
98: H2 (ATTR Align) = Basic_Set;
99: H3 (ATTR Align) = Basic_Set;
100: H4 (ATTR Align) = Basic_Set;
101: H5 (ATTR Align) = Basic_Set;
102: H6 (ATTR Align) = Basic_Set;
103: END;
104:
105: Paragraph (ATTR Align) = Basic_Set;
1.20 ! cvs 106: Pseudo_paragraph = Basic_Set;
1.19 cvs 107: Preformatted (ATTR WidthElement = integer) = Basic_Set
1.16 cvs 108: - (PICTURE, Big_text, Small_text, Subscript, Superscript, Font_);
1.1 cvs 109:
1.15 cvs 110: Anchor (ATTR HREF_; NAME = Text; REL; REV; Title;
111: InternalLink = Reference(Anchor))
1.1 cvs 112: = Basic_Set;
113:
114: Basic_Elem = CASE OF
115: TEXT;
116: PICTURE (ATTR Alignment = Top_, Middle_, Bottom_, Left_, Right_;
117: Height_ = Integer; Width_ = Integer; hspace = Integer;
118: vspace = Integer; Img_border = Integer;
119: ISMAP = Yes_; USEMAP = Text; SRC = Text; ALT = Text);
120: Anchor;
121: Font;
122: Phrase;
123: Font_;
124: BaseFont;
125: Applet;
126: #ifdef COUGAR
127: Object;
128: #endif
129: SCRIPT;
130: MAP;
1.12 cvs 131: BR (ATTR Clear = Left_, Right_, All_, None) = CONSTANT C_BR;
1.1 cvs 132: END;
133:
134: BaseFont (ATTR BaseFontSize = Integer) = CONSTANT C_Empty;
135:
136: Font = CASE OF
137: Italic_text = Basic_Set;
138: Bold_text = Basic_Set;
139: Teletype_text = Basic_Set;
1.11 cvs 140: Underlined_text = Basic_Set;
1.1 cvs 141: Struck_text = Basic_Set;
142: Big_text = Basic_Set;
143: Small_text = Basic_Set;
144: Subscript = Basic_Set;
145: Superscript = Basic_Set;
146: END;
147:
148: Phrase = CASE OF
149: Emphasis = Basic_Set;
150: Strong = Basic_Set;
151: Def = Basic_Set;
152: Code = Basic_Set;
153: Sample = Basic_Set;
154: Keyboard = Basic_Set;
155: Variable = Basic_Set;
156: Cite = Basic_Set;
157: END;
158:
159: Font_ (ATTR Font_size = Text; IntSizeIncr = Integer; IntSizeDecr = Integer;
160: IntSizeRel = Integer; color = Text) = Basic_Set;
161:
162: Applet (ATTR codebase = TEXT; !code = TEXT; applet_name = TEXT;
163: alt = TEXT; Alignment; Height_; Width_; hspace; vspace) =
164: LIST OF (Applet_Content = CASE OF
165: Parameter;
166: Basic_Set;
167: END);
168: Parameter (ATTR Param_name = TEXT; Param_value = TEXT) = CONSTANT C_Empty;
169:
170: #ifdef COUGAR
171: Object (ATTR classid = TEXT; codebase; data = TEXT; Object_type = TEXT;
1.13 cvs 172: codetype = TEXT; Alignment; !Height_; !Width_; hspace; vspace) =
1.10 cvs 173: BEGIN
1.13 cvs 174: PICTURE;
1.10 cvs 175: Object_Content = LIST OF (CASE OF Element; Parameter; END);
1.13 cvs 176: END with Height_ ?= 400, Width_ ?= 400;
1.1 cvs 177: #endif
178:
179: Block = CASE OF
180: Paragraph;
1.20 ! cvs 181: Pseudo_paragraph;
1.1 cvs 182: List_;
183: Block_Quote;
184: Preformatted;
185: Division;
186: Center = LIST OF (Element);
187: Form;
188: END;
189:
190: Division (ATTR Align) = LIST OF (Element);
191:
192: List_ = CASE OF
193: Unnumbered_List (ATTR BulletStyle = disc, circle, square;
194: COMPACT = Yes_) =
195: LIST OF (List_Item);
196: Numbered_List (ATTR NumberStyle = Arabic_, LowerAlpha, UpperAlpha,
197: LowerRoman, UpperRoman; Start = Integer; COMPACT) =
198: LIST OF (List_Item) with Start ?= 1;
199: Directory (ATTR COMPACT) =
200: LIST OF (List_Item);
201: Menu (ATTR COMPACT) =
202: LIST OF (List_Item);
203: Definition_List = LIST OF (Definition_Item);
204: END;
205:
206: List_Item (ATTR ItemStyle = disc, circle, square, Arabic_, LowerAlpha,
207: UpperAlpha, LowerRoman, UpperRoman;
208: IntItemStyle = disc, circle, square, Arabic_, LowerAlpha,
209: UpperAlpha, LowerRoman, UpperRoman;
210: ItemValue = Integer) =
211: LIST OF (Block);
212:
213: Definition_Item (ATTR COMPACT) = BEGIN
214: Term_List = LIST OF (Term = Basic_Set);
1.6 cvs 215: ? Definition = LIST OF (Block);
1.1 cvs 216: END;
217:
218: Form (ATTR !Script_URL = Text; METHOD = Get_, Post_; ENCTYPE = Text) =
219: LIST OF (Form_Element) + (Input) with METHOD ?= Get_;
220:
221: Form_Element = CASE OF
222: Paragraph;
1.20 ! cvs 223: Pseudo_paragraph;
1.1 cvs 224: Toggle_Menu;
225: Radio_Menu;
226: Option_Menu;
227: Text_Input_Line;
228: Command_Line;
229: Text_Area (ATTR !NAME; Rows = Integer; Columns = Integer;
1.12 cvs 230: Default_Value = Text) =
1.1 cvs 231: Text_With_Frame with Rows ?= 4, Columns ?= 20;
232: Heading;
233: List_;
234: Horizontal_Rule;
235: Block_Quote;
236: Preformatted;
237: Division;
238: Center;
239: ISINDEX;
240: END;
241:
1.7 cvs 242: Option_Menu (ATTR !NAME; Multiple = Yes_; MenuSize = Integer) =
1.1 cvs 243: LIST OF (Option) - (Input);
1.12 cvs 244: Option (ATTR Selected = Yes_; DefaultSelected = Yes_; !Value_ = Text) =
1.1 cvs 245: TEXT;
246:
247: Toggle_Menu = LIST OF (Toggle_Item) - (Input);
248: Toggle_Item = BEGIN
249: Checkbox_Input (ATTR !NAME;
250: Checked = Yes_, No_; DefaultChecked = Yes_, No_;
1.12 cvs 251: Value_) =
1.1 cvs 252: CONSTANT C_Empty with Checked ?= No_;
253: TEXT;
254: END;
255:
256: Radio_Menu (ATTR !NAME) = LIST OF (Radio_Item) - (Input);
257: Radio_Item = BEGIN
1.12 cvs 258: Radio_Input (ATTR !NAME; Checked; DefaultChecked; !Value_) =
1.1 cvs 259: CONSTANT C_Empty with Checked ?= No_, NAME ?= 'radio';
260: TEXT;
261: END;
262:
263: Text_Input_Line = BEGIN
264: TEXT;
1.12 cvs 265: Text_Input (ATTR !NAME; Area_Size = Integer; MaxLength = Integer; Value_) =
1.1 cvs 266: Text_With_Frame with Area_Size ?= 20;
267: END - (Input);
268:
269: Command_Line = BEGIN
1.12 cvs 270: Reset_Input (ATTR NAME; Value_) = BEGIN
1.1 cvs 271: Frame;
1.12 cvs 272: END with NAME ?= 'Reset', Value_ ?= 'Reset';
1.1 cvs 273: Space = CONSTANT C_Empty;
1.12 cvs 274: Submit_Input (ATTR NAME; Value_) = BEGIN
1.1 cvs 275: Frame;
1.12 cvs 276: END with Value_ ?= 'Submit';
1.1 cvs 277: END - (Input);
278:
279: Input = CASE OF
280: Checkbox_Input;
281: Radio_Input;
282: Text_Input;
1.12 cvs 283: Hidden_Input (ATTR !NAME; Value_) = CONSTANT C_Empty;
1.1 cvs 284: Password_Input (ATTR !NAME; Area_Size; MaxLength) = Text_With_Frame;
285: File_Input (ATTR !NAME) = CONSTANT C_Empty;
286: Reset_Input;
287: Submit_Input;
1.8 cvs 288: END;
1.1 cvs 289:
290: Text_With_Frame = BEGIN
291: Inserted_Text = TEXT;
292: Frame = CONSTANT C_Empty;
293: END;
294:
295: Table (ATTR Border = Integer;
296: Table_align = Align_left, Center_, Align_right;
297: Width__; IntWidthPercent; IntWidthPxl;
298: cellspacing = Integer; cellpadding = Integer) =
299: BEGIN
300: CAPTION (ATTR Position = Position_top, Position_bottom) = Basic_Set;
301: Table_head = LIST OF (Column_head);
302: ? thead = LIST OF (Table_row);
303: Table_body = LIST OF (tbody = LIST OF (Table_row));
304: ? tfoot = LIST OF (Table_row);
305: Table_foot = CONSTANT C_Foot;
306: END;
1.3 cvs 307: Column_head (ATTR Col_width_percent = INTEGER; Col_width_pxl = INTEGER;
1.18 cvs 308: Col_width_delta = INTEGER; IntMaxVol = Integer) =
1.3 cvs 309: CONSTANT C_Head with Col_width_percent ?= 100;
1.1 cvs 310: Table_row (ATTR Row_align = Row_left, Row_center, Row_right;
311: Row_valign = Row_top, Row_middle, Row_bottom, Row_baseline) =
312: LIST OF (Table_cell);
313: Table_cell = CASE OF
314: Data_cell(ATTR Ref_column = REFERENCE(Column_head);
315: ColExt = REFERENCE(Column_head);
316: RowExt = REFERENCE(Table_row);
317: colspan = INTEGER;
318: rowspan = INTEGER;
319: Cell_align = Cell_left, Cell_center, Cell_right;
1.11 cvs 320: Cell_valign = Cell_top, Cell_middle, Cell_bottom;
1.4 cvs 321: Cell_width = Text;
1.1 cvs 322: Cell_height = Integer;
323: Word_wrap = Wrap, No_wrap) = LIST OF (Element);
324: Heading_cell(ATTR Ref_column; ColExt; RowExt; colspan; rowspan;
325: Cell_align; Cell_valign; Cell_width; Cell_height; Word_wrap) =
326: LIST OF (Element);
327: END;
328: Table_cell_ghost = CONSTANT C_Empty;
329:
330: MAP (ATTR NAME; Ref_IMG = REFERENCE(Any)) = LIST OF (AREA);
331: AREA (ATTR shape = rectangle, circle, polygon, default_;
332: coords = Text; HREF_; nohref = Yes_; ALT;
333: x_coord = Integer; y_coord = Integer; width\240 = Integer;
334: height\240 = Integer; AreaRef_IMG = REFERENCE(Any)) = GRAPHICS
335: with x_coord ?= 0, y_coord ?= 0, width\240 ?= 25, height\240 ?= 10;
336:
337: EXCEPT
338: BODY: NoCut;
339: HEAD: NoCut;
340: TITLE: NoCut;
341: Document_URL: Hidden, NoSpellCheck;
342: C_Empty: Hidden, NoSelect;
1.9 cvs 343: C_BR: NoSelect;
1.1 cvs 344: Scripts: Hidden, NoSelect;
345: Metas: Hidden, NoSelect;
346: Links: Hidden, NoSelect;
347: Frame: Hidden;
348: Inserted_Text: Hidden, NoSelect;
349: Basic_Set: Hidden, NoSelect;
350: Term_List: Hidden, NoSelect;
351: Definition_Item: Hidden;
352: Comment_line: Hidden;
353: GRAPHICS: NoMove, NoResize;
354: PICTURE: NoMove;
355: Invalid_element: NoCreate;
1.20 ! cvs 356: Pseudo_paragraph: ParagraphBreak, Hidden;
1.1 cvs 357: Paragraph: ParagraphBreak;
358: H1: ParagraphBreak;
359: H2: ParagraphBreak;
360: H3: ParagraphBreak;
361: H4: ParagraphBreak;
362: H5: ParagraphBreak;
363: H6: ParagraphBreak;
364: Address: ParagraphBreak;
365: Term: ParagraphBreak;
366: MAP: IsDraw;
367: AREA: MoveResize;
1.19 cvs 368: Preformatted: ReturnCreateNL;
1.1 cvs 369:
370: Langue: Invisible;
371: Style\240: Invisible;
1.15 cvs 372: InternalLink: Invisible;
1.1 cvs 373: WidthElement: NewWidth;
374: IntWidthPercent:Invisible;
375: IntWidthPxl: Invisible;
376: SRC: Invisible;
377: IntItemStyle: Invisible;
378: IntSizeIncr: Invisible;
379: IntSizeDecr: Invisible;
380: IntSizeRel: Invisible;
381: IntMaxVol: Invisible;
382: x_coord: Invisible, NewHPos;
383: y_coord: Invisible, NewVPos;
384: width\240: Invisible, NewWidth;
385: height\240: Invisible, NewHeight;
386: Ref_IMG: Invisible;
387: AreaRef_IMG: Invisible;
388: Invalid_attribute: Invisible;
389: PseudoClass: Invisible;
390: Default_Value: Invisible;
391: DefaultSelected: Invisible;
392: DefaultChecked: Invisible;
1.17 cvs 393: SectionNumbering:Invisible;
1.18 cvs 394: LinkNumbering: Invisible;
1.1 cvs 395:
396: Table: PageBreak;
1.18 cvs 397: Column_head: NoHMove, NoVMove, NoCut, Hidden, NoSelect;
398: Table_head: NoHMove, NoVMove, NoCut, Hidden, NoSelect,
399: PageBreakRepetition;
1.1 cvs 400: C_Head: Hidden, NoSelect;
401: Table_foot: NoMove, NoResize, NoCut, Hidden, PageBreakRepBefore;
402: C_Foot: Hidden, NoSelect;
403: Table_body: PageBreakAllowed, Hidden;
1.2 cvs 404: Table_row: NoHMove, NoVMove, PageBreakPlace;
405: Table_cell: NoHMove, NoHResize;
406: Data_cell: NoHMove, NoHResize;
407: Heading_cell: NoHMove, NoHResize;
1.3 cvs 408: Col_width_percent: Invisible;
409: Col_width_pxl: Invisible;
1.18 cvs 410: Col_width_delta: Invisible;
1.1 cvs 411: ColExt: Invisible;
1.2 cvs 412: RowExt: Invisible;
1.1 cvs 413: Ref_column: Invisible;
414: Table_cell_ghost: Hidden, NoCreate, NoCut, NoMove, NoResize, NoSelect;
1.10 cvs 415: #ifdef COUGAR
416: Object_Content: Hidden, NoCreate, NoCut, NoMove, NoResize, NoSelect;
1.14 cvs 417: #endif
418: #ifdef R_HTML
419: Entity: Hidden, NoCreate, NoCut, NoMove, NoResize;
1.10 cvs 420: #endif
1.1 cvs 421: Ghost_restruct: Invisible;
422: END
Webmaster