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