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

1.1       cvs         1:                { I. Vatton      November 1994  }
                      2: STRUCTURE HTML;
                      3: 
                      4: DEFPRES HTMLP;
1.44      cvs         5: 
1.1       cvs         6: ATTR
1.59      cvs         7:                        { coreattrs }
                      8:    ID = TEXT;                  { id }
                      9:    Class = TEXT;               { class }
                     10:    PseudoClass = TEXT;
                     11:    Style\240 = TEXT;           { style }
                     12:    Title = TEXT;               { title }
                     13:                        { i18n }
                     14:    dir = ltr, rtl;             { dir }
                     15:                        { events }
                     16:    onclick = TEXT;             { onclick }
                     17:    ondblclick = TEXT;          { ondblclick }
                     18:    onmousedown = TEXT;         { onmousedown }
                     19:    onmouseup = TEXT;           { onmouseup }
                     20:    onmouseover = TEXT;         { onmouseover }
                     21:    onmousemove = TEXT;         { onmousemove }
                     22:    onmouseout = TEXT;          { onmouseout }
                     23:    onkeypress = TEXT;          { onkeypress }
                     24:    onkeydown = TEXT;           { onkeydown }
                     25:    onkeyup = TEXT;             { onkeyup }
                     26: 
1.1       cvs        27:    Invalid_attribute = TEXT;
                     28:    Ghost_restruct = TEXT;
                     29: 
                     30: CONST
1.59      cvs        31: 
1.1       cvs        32:    C_Empty = ' ';
                     33:    C_Foot = ' ';
                     34:    C_Head = ' ';
1.9       cvs        35:    C_BR   = '\212';
1.1       cvs        36: 
                     37: STRUCT
1.59      cvs        38: 
                     39:   HTML (ATTR SectionNumbering = Yes_; ShowAreas = Yes_) =      { HTML }
1.17      cvs        40:        BEGIN
1.1       cvs        41:        HEAD;
                     42:        BODY;
                     43:        END + (Invalid_element, Comment\240);
                     44: 
1.59      cvs        45:   BODY                                                         { BODY }
                     46:        (ATTR background_ = Text; BackgroundColor = Text; TextColor = Text;
                     47:           { background          bgcolor                 text }
                     48:             LinkColor = Text; VisitedLinkColor = Text; ActiveLinkColor = Text)
                     49:            { link              vlink                    alink }
1.61    ! cvs        50:        = LIST OF (Element) + (INS, DEL);
1.1       cvs        51: 
1.11      cvs        52:   Invalid_element (ATTR Error_type = UnknownTag, BadPosition) = TEXT;
1.1       cvs        53:   Comment\240 = LIST OF (Comment_line = TEXT);
                     54: 
1.59      cvs        55:   HEAD = AGGREGATE                                             { HEAD }
1.1       cvs        56:          Document_URL = TEXT;
1.59      cvs        57:          TITLE = TEXT;                                         { TITLE }
                     58:        ? ISINDEX (ATTR Prompt = TEXT) = CONSTANT C_Empty;      { ISINDEX }
                     59:                      { prompt }
                     60:        ? BASE;                                                 { BASE }
                     61:        ? Styles                                                { STYLE }
                     62:                (ATTR Notation = TEXT) = TEXT;
                     63:                    { type }
                     64:        ? Scripts = LIST OF (SCRIPT);
1.1       cvs        65:        ? Metas = LIST OF (META);
                     66:        ? Links = LIST OF (LINK);
                     67:        END;
1.59      cvs        68: 
                     69:   SCRIPT = TEXT;                                               { SCRIPT }
                     70: 
                     71:   META                                                         { META }
                     72:        (ATTR http_equiv = Text; !meta_name = Text; !meta_content = Text)
                     73:            { http-equic          name               content }
1.1       cvs        74:         = CONSTANT C_Empty;
1.59      cvs        75: 
                     76:   LINK (ATTR HREF_ = Text;                                     { LINK }
                     77:           { href }
1.43      cvs        78:             Link_type = TEXT;
1.59      cvs        79:           { type }
                     80:             REL = Text; REV = Text)
                     81:           { rel         rev }
1.1       cvs        82:         = CONSTANT C_Empty;
                     83: 
1.59      cvs        84:   BASE (ATTR !HREF_) = CONSTANT C_Empty;                       { BASE }
                     85:            { href }
1.1       cvs        86: 
1.59      cvs        87:   Element = CASE OF                                            { block }
                     88:        Paragraph;                                              { P }
1.20      cvs        89:        Pseudo_paragraph;
1.59      cvs        90:        Heading;                                                { heading }
                     91:        List_;                                                  { list + DL }
                     92:        Preformatted;                                           { PRE preformatted }
                     93:        Division;                                               { DIV }
                     94:        Center;                                                 { CENTER }
1.61    ! cvs        95:        Block_Quote (ATTR cite = TEXT;                          { BLOCKQUOTE }
        !            96:                        { cite }
        !            97:                InternalLink = Reference(Any); ExternalLink = Yes_) =
1.59      cvs        98:                LIST OF (Element);
                     99:        Form;                                                   { FORM }
                    100:        ISINDEX;                                                { ISINDEX }
                    101:        Horizontal_Rule (ATTR Align = left_, center_, right_;   { HR }
                    102:                            { align   left   center   right }
1.54      cvs       103:                        NoShade = NoShade_; Size_ = Integer;
1.59      cvs       104:                      { noshade             size }
                    105:                        Width__ = Text;
                    106:                      { width }
                    107:                        IntWidthPercent = Integer;
1.54      cvs       108:                        IntWidthPxl = Integer) =
                    109:                CONSTANT C_Empty;
1.59      cvs       110:        Table;                                                  { TABLE }
                    111:        Address = LIST OF (AddressContent);                     { ADDRESS }
                    112:        PICTURE                                                 { IMG }
                    113:                (ATTR Alignment = Top_, Middle_, Bottom_, Left_, Right_;
                    114:                {     align       top   middle   bottom   left   right }
                    115:                  Height_ = Integer; Width__; IntWidthPercent; IntWidthPxl;
                    116:                { height             width }
                    117:                  hspace = Integer; vspace = Integer; Img_border = Integer;
                    118:                { hspace            vspace            border }
                    119:                  ISMAP = Yes_; USEMAP = Text; SRC = Text; ALT = Text);
                    120:                { ismap        usemap         src         alt }
                    121:        Object;                                                 { OBJECT }
1.60      cvs       122:        Applet;                                                 { APPLET }
1.31      cvs       123: #ifdef MATHML
1.45      cvs       124:        MathDisp (ATTR mode = display, inline_math) = MathML;
1.31      cvs       125: #endif
1.52      cvs       126: #ifdef GRAPHML
1.55      cvs       127:         XMLGraphics (ATTR Height_; Width__;
1.54      cvs       128:                        IntWidthPercent;
                    129:                        IntWidthPxl)
1.53      cvs       130:         = GraphML
                    131:           with Height_ ?= 200, Width__ ?= '100%', IntWidthPercent ?= 100;
1.52      cvs       132: #endif
1.59      cvs       133:        MAP;                                                    { MAP }
1.1       cvs       134:        END;
                    135: 
1.52      cvs       136: #ifdef GRAPHML
                    137:        HTMLfragment = LIST OF (Element);
                    138: #endif
                    139: 
1.1       cvs       140:   AddressContent = CASE OF
                    141:        Basic_Elem;
1.59      cvs       142:        Paragraph;              { P }
1.20      cvs       143:        Pseudo_paragraph;
1.1       cvs       144:        END;
                    145: 
                    146:   Basic_Set = LIST OF (Basic_Elem);
                    147: 
1.59      cvs       148:   Paragraph                                                    { P }
                    149:        (ATTR TextAlign = left_, center_, right_, justify_) = Basic_Set;
                    150:            { align       left   center   right   justify }
                    151:   Pseudo_paragraph = Basic_Set;
                    152: 
                    153:   Heading = CASE OF                                            { heading }
                    154:        H1 (ATTR TextAlign) = Basic_Set;                        { H1 }
                    155:               { align }
                    156:        H2 (ATTR TextAlign) = Basic_Set;                        { H2 }
                    157:        H3 (ATTR TextAlign) = Basic_Set;                        { H3 }
                    158:        H4 (ATTR TextAlign) = Basic_Set;                        { H4 }
                    159:        H5 (ATTR TextAlign) = Basic_Set;                        { H5 }
                    160:        H6 (ATTR TextAlign) = Basic_Set;                        { H6 }
1.1       cvs       161:        END;
                    162: 
1.59      cvs       163:   Preformatted (ATTR Width__; IntWidthPercent; IntWidthPxl)    { PRE }
                    164:                   { width }
1.44      cvs       165:                = Basic_Set
1.59      cvs       166:             - (PICTURE, Object, Applet,
                    167:                Big_text, Small_text, Subscript, Superscript,
                    168:                Font_, BaseFont);
                    169: 
                    170:   { A }
                    171:   Anchor (ATTR HREF_; NAME = Text; REL; REV;
                    172:             { href   name         rel  rev }
1.61    ! cvs       173:               InternalLink; ExternalLink)
1.1       cvs       174:        = Basic_Set;
                    175: 
1.61    ! cvs       176:   Basic_Elem = CASE OF                                 { special }
1.1       cvs       177:         TEXT;
                    178:        Font;
                    179:        Phrase;
1.61    ! cvs       180:        Anchor;                                                 { A }
        !           181:        PICTURE;                                                { IMG }
        !           182:        Applet;                                                 { APPLET }
        !           183:        Object;                                                 { OBJECT }
        !           184:        Font_;                                                  { FONT }
        !           185:        BaseFont;                                               { BASEFONT }
        !           186:        BR (ATTR Clear = Left_, Right_, All_, None) =           { BR }
1.59      cvs       187:               { clear   left   right   all   none }
1.61    ! cvs       188:                 CONSTANT C_BR;
        !           189:        SCRIPT;                                                 { SCRIPT }
        !           190:        MAP;                                                    { MAP }
        !           191:        Quotation (ATTR cite; InternalLink; ExternalLink) =     { Q }
        !           192:                      { cite }
        !           193:                 Basic_Set;
        !           194: 
        !           195:        Subscript = Basic_Set;                                  { SUB }
        !           196:        Superscript = Basic_Set;                                { SUP }
        !           197:        Span = Basic_Set;                                       { SPAN }
        !           198:        BDO = Basic_Set;                                        { BDO }
        !           199:        IFRAME;                                                 { IFRAME }
1.31      cvs       200: #ifdef MATHML
1.45      cvs       201:        Math (ATTR mode) = MathML;
1.1       cvs       202: #endif
1.59      cvs       203:        END;
                    204: 
1.60      cvs       205:   BaseFont                                                     { BASEFONT }
                    206:        (ATTR BaseFontSize = Integer; BaseFontColor = Text;
                    207:            { size                    color }
                    208:              BaseFontFace = Text) =
                    209:             { face }
                    210:                CONSTANT C_Empty;
1.59      cvs       211: 
1.60      cvs       212:   Font = CASE OF               { fontstyle }
                    213:        Teletype_text = Basic_Set;      { TT }
1.59      cvs       214:        Italic_text = Basic_Set;        { I }
                    215:        Bold_text = Basic_Set;          { B }
                    216:        Underlined_text = Basic_Set;    { U }
1.60      cvs       217:        Struck_text = Basic_Set;        { S or STRIKE }
1.59      cvs       218:        Big_text = Basic_Set;           { BIG }
                    219:        Small_text = Basic_Set;         { SMALL }
                    220:        END;
                    221: 
1.60      cvs       222:   Phrase = CASE OF             { phrase }
1.59      cvs       223:        Emphasis = Basic_Set;           { EM }
                    224:        Strong = Basic_Set;             { STRONG }
                    225:        Def = Basic_Set;                { DFN }
                    226:        Code = Basic_Set;               { CODE }
                    227:        Sample = Basic_Set;             { SAMP }
                    228:        Keyboard = Basic_Set;           { KBD }
                    229:        Variable = Basic_Set;           { VAR }
                    230:        Cite = Basic_Set;               { CITE }
1.60      cvs       231:        ABBR = Basic_Set;               { ABBR }
                    232:         ACRONYM = Basic_Set;           { ACRONYM }
1.59      cvs       233:        END;
                    234: 
1.60      cvs       235:   Font_ (ATTR Font_size = Text; color = Text; face = Text;     { FONT }
                    236:            { size              color         face }
1.59      cvs       237:              IntSizeIncr = Integer; IntSizeDecr = Integer;
                    238:              IntSizeRel = Integer) = Basic_Set;
                    239: 
                    240:   Applet (ATTR codebase = TEXT; !code = TEXT;                  { APPLET }
                    241:             { codebase          code }
                    242:               alt = TEXT; applet_name = TEXT;
                    243:             { alt         name }
                    244:               Width__; Height_;
                    245:             { width    height }
                    246:               IntWidthPercent; IntWidthPxl;
                    247:               Alignment; hspace; vspace) =
                    248:             { align      hspace  vspace }
1.1       cvs       249:        LIST OF (Applet_Content = CASE OF
1.59      cvs       250:                                  Parameter;                    { PARAM }
1.1       cvs       251:                                  Basic_Set;
                    252:                                  END);
1.59      cvs       253:   Parameter (ATTR Param_name = TEXT; Param_value = TEXT) =     { PARAM }
                    254:                { name               value }
                    255:        CONSTANT C_Empty;
                    256: 
                    257:   Object                                                       { OBJECT }
                    258:        (ATTR classid = TEXT; codebase; data = TEXT; Object_type = TEXT;
                    259:            { classid         codebase  data         type }
1.44      cvs       260:          codetype = TEXT; Alignment; !Height_; !Width__; IntWidthPercent;
1.59      cvs       261:         { codetype         align       height    width }
1.44      cvs       262:          IntWidthPxl; hspace; vspace;
1.59      cvs       263:         {              hspace  vspace }
1.30      cvs       264:          Img_border; USEMAP; ALT) =
1.59      cvs       265:        { border      usemap  alt }
1.10      cvs       266:        BEGIN
1.13      cvs       267:        PICTURE;
1.10      cvs       268:        Object_Content = LIST OF (CASE OF Element; Parameter; END);
1.59      cvs       269:                                                 { PARAM }
1.44      cvs       270:        END with Height_ ?= 400, Width__ ?= '400', IntWidthPxl ?= 400;
1.61    ! cvs       271: 
        !           272:   INS (ATTR cite; datetime = TEXT) = Basic_Set;                        { INS }
        !           273:   DEL (ATTR cite; datetime) = Basic_Set;                       { DEL }
1.1       cvs       274: 
1.59      cvs       275:   Block = CASE OF                                              { block }
                    276:        Paragraph;                                              { P }
1.20      cvs       277:        Pseudo_paragraph;
1.59      cvs       278:        Heading;                                                { heading }
                    279:        List_;                                                  { list + DL }
                    280:        Block_Quote;                                            { BLOCKQUOTE }
                    281:        Preformatted;                                           { PRE }
                    282:        Division;                                               { DIV }
                    283:        Center = LIST OF (Element);                             { CENTER }
1.1       cvs       284:        Form;
                    285:        END;
                    286: 
1.59      cvs       287:   Division (ATTR TextAlign) = LIST OF (Element);               { DIV }
1.1       cvs       288: 
1.59      cvs       289:   List_ = CASE OF                                              { list }
                    290:        Unnumbered_List                                         { UL }
                    291:                (ATTR BulletStyle = disc, circle, square;
                    292:                    { type          disc  circle  square }
                    293:                      COMPACT = Yes_) =
                    294:                    { compact }
1.1       cvs       295:                        LIST OF (List_Item);
1.59      cvs       296:        Numbered_List                                           { OL }
                    297:                (ATTR NumberStyle = Arabic_, LowerAlpha, UpperAlpha,
                    298:                    { type          1        a           A }
                    299:                                    LowerRoman, UpperRoman;
                    300:                                  { i           I }
                    301:                      Start = Integer; COMPACT) =
                    302:                    { start            compact }
1.1       cvs       303:                        LIST OF (List_Item) with Start ?= 1;
1.59      cvs       304:        Directory (ATTR COMPACT) =                              { DIR }
1.1       cvs       305:                        LIST OF (List_Item);
1.59      cvs       306:        Menu (ATTR COMPACT) =                                   { MENU }
1.1       cvs       307:                        LIST OF (List_Item);
1.59      cvs       308:        Definition_List (ATTR COMPACT) =                        { DL }
                    309:                        LIST OF (Definition_Item);
1.1       cvs       310:        END;
                    311: 
1.59      cvs       312:   List_Item (ATTR ItemStyle = disc, circle, square,            { LI }
                    313:                { type        disc  circle  square }
                    314:                  Arabic_, LowerAlpha, UpperAlpha, LowerRoman, UpperRoman;
                    315:                { 1        a           A           i           I }
                    316:                  IntItemStyle = disc, circle, square,
                    317:                  Arabic_, LowerAlpha, UpperAlpha, LowerRoman, UpperRoman;
1.1       cvs       318:                  ItemValue = Integer) =
1.59      cvs       319:                { value }
1.1       cvs       320:        LIST OF (Block);
                    321: 
1.59      cvs       322:   Definition_Item = BEGIN
                    323:        Term_List = LIST OF (Term = Basic_Set);                 { DT }
                    324:        ? Definition = LIST OF (Block);                         { DD }
1.1       cvs       325:        END;
                    326: 
1.59      cvs       327:   Form (ATTR !Script_URL = Text; METHOD = Get_, Post_;         { FORM }
                    328:            { action             method }
                    329:             ENCTYPE = Text) =
                    330:           { enctype }
1.1       cvs       331:        LIST OF (Form_Element) + (Input) with METHOD ?= Get_;
                    332: 
                    333:   Form_Element = CASE OF
1.59      cvs       334:        Paragraph;                                              { P }
1.20      cvs       335:        Pseudo_paragraph;
1.59      cvs       336:        Option_Menu;                                            { SELECT }
                    337:        Text_Area                                               { TEXTAREA }
                    338:                (ATTR !NAME; Rows = Integer; Columns = Integer;
                    339:                     { name  rows            cols }
                    340:                       Default_Value = Text) =
1.1       cvs       341:                Text_With_Frame with Rows ?= 4, Columns ?= 20;
1.59      cvs       342:        Heading;                                                { heading }
                    343:        List_;                                                  { list + DL }
                    344:        Horizontal_Rule;                                        { HR }
                    345:        Block_Quote;                                            { BLOCKQUOTE }
                    346:        Preformatted;                                           { PRE }
                    347:        Division;                                               { DIV }
                    348:        Table;                                                  { TABLE }
                    349:        Center;                                                 { CENTER }
                    350:        ISINDEX;                                                { ISINDEX }
1.1       cvs       351:        END;
                    352: 
1.59      cvs       353:   Option_Menu (ATTR !NAME; Multiple = Yes_; MenuSize = Integer) =    { SELECT }
                    354:                   { name  multiple         size }
1.1       cvs       355:        LIST OF (Option) - (Input);
1.59      cvs       356:   Option                                                            { OPTION }
                    357:        (ATTR Selected = Yes_; DefaultSelected = Yes_; !Value_ = Text) =
                    358:            { selected                                  value }
1.1       cvs       359:        TEXT;
                    360: 
1.59      cvs       361:   Input = CASE OF                                      { INPUT / InputType }
                    362:        Checkbox_Input                                  { INPUT / CHECKBOX }
                    363:                (ATTR !NAME; { name }
                    364:                      Checked = Yes_, No_; DefaultChecked = Yes_, No_;
                    365:                    { checked }
                    366:                      Value_ { value } ) =
1.1       cvs       367:                CONSTANT C_Empty with Checked ?= No_;
1.59      cvs       368:        Radio_Input                                     { INPUT / RADIO }
                    369:                (ATTR !NAME; Checked; DefaultChecked; !Value_) =
                    370:                     { name  checked                   value }
1.1       cvs       371:                CONSTANT C_Empty with Checked ?= No_, NAME ?= 'radio';
1.59      cvs       372:        Text_Input                                      { INPUT / TEXT }
                    373:                (ATTR !NAME; Area_Size = Integer;
                    374:                     { name  size }
                    375:                      MaxLength = Integer; Value_) =
                    376:                     { maxlength           value }
1.1       cvs       377:                Text_With_Frame with Area_Size ?= 20;
1.59      cvs       378:        Hidden_Input                                    { INPUT / HIDDEN }
                    379:                (ATTR !NAME; Value_) = CONSTANT C_Empty;
                    380:        Password_Input                                  { INPUT / PASSWORD }
                    381:                (ATTR !NAME; Area_Size; MaxLength) = Text_With_Frame;
                    382:        File_Input                                      { INPUT / FILE }
                    383:                (ATTR !NAME) = CONSTANT C_Empty;
                    384:        Reset_Input (ATTR NAME; Value_) = BEGIN         { INPUT / RESET }
1.56      cvs       385:                Frame;
                    386:                END with NAME ?= 'Reset', Value_ ?= 'Reset';
1.59      cvs       387:        Submit_Input (ATTR NAME; Value_) = BEGIN        { INPUT / SUBMIT }
1.56      cvs       388:                Frame;
                    389:                END with Value_ ?= 'Submit';
1.59      cvs       390:        Option_Menu;                                    { SELECT }
                    391:        Text_Area;                                      { TEXTAREA }
1.8       cvs       392:        END;
1.1       cvs       393: 
                    394:   Text_With_Frame = BEGIN
                    395:        Inserted_Text = TEXT;
                    396:        Frame = CONSTANT C_Empty;
                    397:        END;
                    398: 
1.59      cvs       399:   Table (ATTR Border = Integer;                                        { TABLE }
                    400:            { border }
                    401:              Align; BackgroundColor;
                    402:            { align  bgcolor }
1.44      cvs       403:              Width__; IntWidthPxl; IntWidthPercent;
1.59      cvs       404:            { width }
1.1       cvs       405:              cellspacing = Integer; cellpadding = Integer) =
1.59      cvs       406:            { cellspacing            cellpadding }
1.1       cvs       407:        BEGIN
1.59      cvs       408:        CAPTION                                                 { CAPTION }
                    409:              (ATTR Position = Position_top, Position_bottom) =
                    410:                  { align      top           bottom }
                    411:                Basic_Set;
1.1       cvs       412:        Table_head = LIST OF (Column_head);
1.59      cvs       413:        ? thead = LIST OF (Table_row);                          { THEAD }
                    414:        Table_body = LIST OF (
                    415:                tbody = LIST OF (Table_row));                   { TBODY }
                    416:        ? tfoot = LIST OF (Table_row);                          { TFOOT }
1.1       cvs       417:        Table_foot = CONSTANT C_Foot;
1.49      cvs       418:        END;
1.44      cvs       419:   Column_head (ATTR IntWidthPercent; IntWidthPxl) =
                    420:        CONSTANT C_Head;
1.59      cvs       421:   Table_row                                                    { TR }
                    422:        (ATTR Row_align = Row_left, Row_center, Row_right;
                    423:            { align       left      center      right }
                    424:              Row_valign = Row_top, Row_middle, Row_bottom, Row_baseline;
                    425:            { valign       top      middle      bottom      baseline }
                    426:              BackgroundColor) =
                    427:            { bgcolor }
1.1       cvs       428:        LIST OF (Table_cell);
                    429:   Table_cell = CASE OF
1.59      cvs       430:        Data_cell(ATTR Ref_column = REFERENCE(Column_head);     { TD }
1.1       cvs       431:                  ColExt = REFERENCE(Column_head);
                    432:                  RowExt = REFERENCE(Table_row);
1.44      cvs       433:                 colspan_ = INTEGER;
1.59      cvs       434:                { colspan }
1.44      cvs       435:                  rowspan_ = INTEGER;
1.59      cvs       436:                { rowspan }
1.1       cvs       437:                  Cell_align = Cell_left, Cell_center, Cell_right;
1.59      cvs       438:                { align       left       center       right }
1.11      cvs       439:                  Cell_valign = Cell_top, Cell_middle, Cell_bottom;
1.59      cvs       440:                { valign       top       middle       bottom }
                    441:                 BackgroundColor;
                    442:                { bgcolor }
1.44      cvs       443:                 Width__; IntWidthPxl; IntWidthPercent;
1.59      cvs       444:                { width }
1.54      cvs       445:                 Height_;
1.59      cvs       446:                { height }
1.27      cvs       447:                  No_wrap = no_wrap) = LIST OF (Element);
1.59      cvs       448:                { nowrap }
                    449:        Heading_cell                                            { TH }
                    450:                (ATTR Ref_column; ColExt; RowExt;
                    451:                 colspan_; rowspan_;
                    452:                 Cell_align; Cell_valign; BackgroundColor;
                    453:                 Width__; IntWidthPxl; IntWidthPercent;
1.54      cvs       454:                 Height_; No_wrap) = LIST OF (Element);
1.1       cvs       455:        END;
                    456: 
1.59      cvs       457:   MAP (ATTR NAME; Ref_IMG = REFERENCE(Any)) = LIST OF (AREA);  { MAP }
                    458:          { name }
                    459:   AREA (ATTR shape = rectangle, circle, polygon, default_;     { AREA }
                    460:           { shape   rect       cirecle poly     default }
1.1       cvs       461:        coords = Text; HREF_; nohref = Yes_; ALT;
1.59      cvs       462:        { coords       href   nohref         alt }
1.44      cvs       463:        x_coord = Integer; y_coord = Integer; IntWidthPxl;
1.59      cvs       464:         height\240 = Integer; AreaRef_IMG = REFERENCE(Any)) = GRAPHICS
1.44      cvs       465:        with x_coord ?= 0, y_coord ?= 0, IntWidthPxl ?= 25, height\240 ?= 10;
1.1       cvs       466: 
1.59      cvs       467:   FRAMESET =                                                   { FRAMESET }
                    468:        AGGREGATE
                    469:        LIST OF (FrameElem);
                    470:        NOFRAMES = LIST OF (Element);                           { NOFRAMES }
                    471:        END;
                    472: 
                    473:   FRAME = CONSTANT C_Empty;                                    { FRAME }
                    474: 
                    475:   FrameElem = CASE OF
                    476:        FRAMESET;
                    477:        FRAME;
                    478:        END;
                    479: 
                    480:   IFRAME = LIST OF (Element);                                  { IFRAME }
                    481: 
1.1       cvs       482: EXCEPT
1.25      cvs       483:        HTML:           NoMove, NoResize;
1.1       cvs       484:        BODY:           NoCut;
                    485:        HEAD:           NoCut;
                    486:        TITLE:          NoCut;
                    487:        Document_URL:   Hidden, NoSpellCheck;
                    488:        C_Empty:        Hidden, NoSelect;
1.9       cvs       489:        C_BR:           NoSelect;
1.1       cvs       490:        Scripts:        Hidden, NoSelect;
                    491:        Metas:          Hidden, NoSelect;
                    492:        Links:          Hidden, NoSelect;
                    493:        Frame:          Hidden;
                    494:        Inserted_Text:  Hidden, NoSelect;
                    495:        Basic_Set:      Hidden, NoSelect;
                    496:        Term_List:      Hidden, NoSelect;
                    497:        Definition_Item: Hidden;
                    498:        Comment_line:   Hidden;
                    499:        GRAPHICS:       NoMove, NoResize;
1.41      cvs       500:        TEXT:           NoMove, NoResize;
1.26      cvs       501:        PICTURE:        MoveResize;
1.1       cvs       502:        Invalid_element: NoCreate;
1.20      cvs       503:        Pseudo_paragraph:       ParagraphBreak, Hidden;
1.1       cvs       504:        Paragraph:      ParagraphBreak;
                    505:        H1:             ParagraphBreak;
                    506:        H2:             ParagraphBreak;
                    507:        H3:             ParagraphBreak;
                    508:        H4:             ParagraphBreak;
                    509:        H5:             ParagraphBreak;
                    510:        H6:             ParagraphBreak;
                    511:        Address:        ParagraphBreak;
                    512:        Term:           ParagraphBreak;
                    513:        MAP:            IsDraw;
                    514:        AREA:           MoveResize;
1.19      cvs       515:        Preformatted:   ReturnCreateNL;
1.52      cvs       516: #ifdef GRAPHML
                    517:        HTMLfragment:   NoMove, NoResize, Hidden, NoSelect;
1.53      cvs       518:        XMLGraphics:    MoveResize, NoMove;
1.52      cvs       519: #endif
1.1       cvs       520: 
1.29      cvs       521:        ExternalLink:   Invisible;
1.15      cvs       522:        InternalLink:   Invisible;
1.44      cvs       523:        IntWidthPercent:NewPercentWidth, Invisible;
                    524:        IntWidthPxl:    NewWidth, Invisible;
1.1       cvs       525:        SRC:            Invisible;
                    526:        IntItemStyle:   Invisible;
                    527:        IntSizeIncr:    Invisible;
                    528:        IntSizeDecr:    Invisible;
                    529:        IntSizeRel:     Invisible;
                    530:        x_coord:        Invisible, NewHPos;
                    531:        y_coord:        Invisible, NewVPos;
                    532:        height\240:     Invisible, NewHeight;
                    533:        Ref_IMG:        Invisible;
                    534:        AreaRef_IMG:    Invisible;
                    535:        Invalid_attribute: Invisible;
                    536:        PseudoClass:    Invisible;
                    537:        Default_Value:  Invisible;
                    538:        DefaultSelected: Invisible;
                    539:        DefaultChecked: Invisible;
1.17      cvs       540:        SectionNumbering:Invisible;
1.22      cvs       541:        ShowAreas:      Invisible;
1.50      cvs       542:        shape:          Invisible;
1.44      cvs       543:        Data_cell:      IsCell, NoMove, NoResize;
                    544:        Heading_cell:   IsCell, NoMove, NoResize;
                    545:        Table:          IsTable, PageBreak;
                    546:        Column_head:    IsColHead, NoCut, Hidden, NoSelect;
1.51      cvs       547:        Table_head:     NoCut, Hidden, NoSelect;
1.1       cvs       548:        C_Head:         Hidden, NoSelect;
1.25      cvs       549:        Table_foot:     NoCut, Hidden, PageBreakRepBefore;
1.1       cvs       550:        C_Foot:         Hidden, NoSelect;
1.38      cvs       551:        Table_body:     PageBreakAllowed, Hidden;
1.44      cvs       552:        Table_row:      IsRow, PageBreakPlace;
1.1       cvs       553:        ColExt:         Invisible;
1.2       cvs       554:        RowExt:         Invisible;
1.44      cvs       555:        Ref_column:     ColRef, Invisible;
                    556:        colspan_:       ColSpan;
                    557:        rowspan_:       RowSpan;
1.25      cvs       558:        Object_Content: Hidden, NoCreate, NoCut, NoSelect;
1.1       cvs       559:        Ghost_restruct: Invisible;
                    560: END

Webmaster