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