Annotation of Amaya/amaya/HTML.S, revision 1.30

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

Webmaster