Overview  Index  Help 
SMLDoc

HTML

All Known Implementing Modules:

HTML


signature HTML =
sig
  structure HttpMethod :
  sig
    eqtype method
    val get : method
    val put : method
    val toString : method -> string
    val fromString : string -> method option
  end
  structure InputType :
  sig
    eqtype ty
    val text : ty
    val password : ty
    val checkbox : ty
    val radio : ty
    val submit : ty
    val reset : ty
    val file : ty
    val hidden : ty
    val image : ty
    val toString : ty -> string
    val fromString : string -> ty option
  end
  structure IAlign :
  sig
    eqtype align
    val top : align
    val middle : align
    val bottom : align
    val left : align
    val right : align
    val toString : align -> string
    val fromString : string -> align option
  end
  structure HAlign :
  sig
    eqtype align
    val left : align
    val center : align
    val right : align
    val toString : align -> string
    val fromString : string -> align option
  end
  structure CellVAlign :
  sig
    eqtype align
    val top : align
    val middle : align
    val bottom : align
    val baseline : align
    val toString : align -> string
    val fromString : string -> align option
  end
  structure CaptionAlign :
  sig
    eqtype align
    val top : align
    val bottom : align
    val toString : align -> string
    val fromString : string -> align option
  end
  structure ULStyle :
  sig
    eqtype style
    val disc : style
    val square : style
    val circle : style
    val toString : style -> string
    val fromString : string -> style option
  end
  structure Shape :
  sig
    eqtype shape
    val rect : shape
    val circle : shape
    val poly : shape
    val default : shape
    val toString : shape -> string
    val fromString : string -> shape option
  end
  structure TextFlowCtl :
  sig
    eqtype control
    val left : control
    val right : control
    val all : control
    val none : control
    val toString : control -> string
    val fromString : string -> control option
  end
  type pcdata = string
  type cdata = string
  type url = string
  type pixels = cdata
  type name = string
  type id = string
  datatype html =
           HTML of
           {version : cdata option, head : head_content list, body : body}
  datatype head_content =
           Head_TITLE of pcdata
         | Head_ISINDEX of {prompt : cdata option}
         | Head_BASE of {href : url}
         | Head_META of
           {httpEquiv : name option, name : name option, content : cdata}
         | Head_LINK of
           {
             id : id option,
             href : url option,
             rel : cdata option,
             rev : cdata option,
             title : cdata option
           }
         | Head_SCRIPT of pcdata
         | Head_STYLE of pcdata
  datatype body =
           BODY of
           {
             background : url option,
             bgcolor : cdata option,
             text : cdata option,
             link : cdata option,
             vlink : cdata option,
             alink : cdata option,
             content : block
           }
         | FRAMEBODY of {frame : frame, noframes : block}
  datatype frame =
           Frame of {src : url option, name : cdata option}
         | FrameSet of
           {cols : cdata option, rows : cdata option, frames : frame list}
  datatype block =
           BlockList of block list
         | TextBlock of text
         | Hn of {n : int, align : HAlign.align option, content : text}
         | ADDRESS of block
         | P of {align : HAlign.align option, content : text}
         | UL of
           {ty : ULStyle.style option, compact : bool, content : list_item list}
         | OL of
           {
             ty : cdata option,
             start : int option,
             compact : bool,
             content : list_item list
           }
         | DIR of {compact : bool, content : list_item list}
         | MENU of {compact : bool, content : list_item list}
         | DL of {compact : bool, content : {dt : text list, dd : blocklist}
         | PRE of {width : int option, content : text}
         | DIV of {align : HAlign.align, content : block}
         | CENTER of block
         | BLOCKQUOTE of block
         | FORM of
           {
             action : url option,
             method : HttpMethod.method,
             enctype : cdata option,
             content : block
           }
         | ISINDEX of {prompt : cdata option}
         | HR of
           {
             align : HAlign.align option,
             noshade : bool,
             size : pixels option,
             width : cdata option
           }
         | TABLE of
           {
             align : HAlign.align option,
             width : cdata option,
             border : pixels option,
             cellspacing : pixels option,
             cellpadding : pixels option,
             caption : caption option,
             content : tr list
           }
  datatype list_item =
           LI of {ty : cdata option, value : int option, content : block}
  datatype caption =
           CAPTION of {align : CaptionAlign.align option, content : text}
  datatype tr =
           TR of
           {
             align : HAlign.align option,
             valign : CellVAlign.align option,
             bgcolor : cdata option,
             content : table_cell list
           }
  datatype table_cell =
           TH of
           {
             nowrap : bool,
             rowspan : int option,
             colspan : int option,
             align : HAlign.align option,
             valign : CellVAlign.align option,
             width : pixels option,
             height : pixels option,
             bgcolor : cdata option,
             content : block
           }
         | TD of
           {
             nowrap : bool,
             rowspan : int option,
             colspan : int option,
             align : HAlign.align option,
             valign : CellVAlign.align option,
             width : pixels option,
             height : pixels option,
             bgcolor : cdata option,
             content : block
           }
  datatype text =
           TextList of text list
         | PCDATA of pcdata
         | TT of text
         | I of text
         | B of text
         | U of text
         | STRIKE of text
         | BIG of text
         | SMALL of text
         | SUB of text
         | SUP of text
         | EM of text
         | STRONG of text
         | DFN of text
         | CODE of text
         | SAMP of text
         | KBD of text
         | VAR of text
         | CITE of text
         | A of
           {
             name : cdata option,
             href : url option,
             rel : cdata option,
             rev : cdata option,
             title : cdata option,
             target : cdata option,
             content : text
           }
         | IMG of
           {
             src : url,
             alt : cdata option,
             align : IAlign.align option,
             height : pixels option,
             width : pixels option,
             border : pixels option,
             hspace : pixels option,
             vspace : pixels option,
             usemap : url option,
             ismap : bool
           }
         | APPLET of
           {
             codebase : url option,
             code : cdata,
             name : cdata option,
             alt : cdata option,
             align : IAlign.align option,
             height : pixels option,
             width : pixels option,
             hspace : pixels option,
             vspace : pixels option,
             content : text
           }
         | PARAM of {name : name, value : cdata option}
         | FONT of {size : cdata option, color : cdata option, content : text}
         | BASEFONT of {size : cdata option, content : text}
         | BR of {clear : TextFlowCtl.control option}
         | MAP of {name : cdata option, content : area list}
         | INPUT of
           {
             ty : InputType.ty option,
             name : cdata option,
             value : cdata option,
             checked : bool,
             size : cdata option,
             maxlength : int option,
             src : url option,
             align : IAlign.align option
           }
         | SELECT of
           {name : cdata, size : int option, content : select_option list}
         | TEXTAREA of {name : cdata, rows : int, cols : int, content : pcdata}
         | SCRIPT of pcdata
  datatype area =
           AREA of
           {
             shape : Shape.shape option,
             coords : cdata option,
             href : url option,
             nohref : bool,
             alt : cdata
           }
  datatype select_option =
           OPTION of {selected : bool, value : cdata option, content : pcdata}
  val htmlVersion : string
end

This file defines the abstract syntax of HTML documents. The AST follows the HTML 3.2 Proposed Standard.

Author:
(c) 1995 AT&T Bell Laboratories. , (c) 1996 AT&T Research.
Version:
$Id: SigHTML.html,v 1.9 2007/02/17 07:01:57 kiyoshiy Exp $

 
Type detail

pcdata

type pcdata = string


cdata

type cdata = string


url

type url = string


pixels

type pixels = cdata


name

type name = string


id

type id = string

 
Datatype detail

html

datatype html =
         HTML of {version : cdata option, head : head_content list, body : body}


head_content

datatype head_content =
         Head_TITLE of pcdata
       | Head_ISINDEX of {prompt : cdata option}
       | Head_BASE of {href : url}
       | Head_META of
         {httpEquiv : name option, name : name option, content : cdata}
       | Head_LINK of
         {
           id : id option,
           href : url option,
           rel : cdata option,
           rev : cdata option,
           title : cdata option
         }
       | Head_SCRIPT of pcdata
       | Head_STYLE of pcdata


body

datatype body =
         BODY of
         {
           background : url option,
           bgcolor : cdata option,
           text : cdata option,
           link : cdata option,
           vlink : cdata option,
           alink : cdata option,
           content : block
         }
       | FRAMEBODY of {frame : frame, noframes : block}


frame

datatype frame =
         Frame of {src : url option, name : cdata option}
       | FrameSet of
         {cols : cdata option, rows : cdata option, frames : frame list}


block

datatype block =
         BlockList of block list
       | TextBlock of text
       | Hn of {n : int, align : HAlign.align option, content : text}
       | ADDRESS of block
       | P of {align : HAlign.align option, content : text}
       | UL of
         {ty : ULStyle.style option, compact : bool, content : list_item list}
       | OL of
         {
           ty : cdata option,
           start : int option,
           compact : bool,
           content : list_item list
         }
       | DIR of {compact : bool, content : list_item list}
       | MENU of {compact : bool, content : list_item list}
       | DL of {compact : bool, content : {dt : text list, dd : blocklist}
       | PRE of {width : int option, content : text}
       | DIV of {align : HAlign.align, content : block}
       | CENTER of block
       | BLOCKQUOTE of block
       | FORM of
         {
           action : url option,
           method : HttpMethod.method,
           enctype : cdata option,
           content : block
         }
       | ISINDEX of {prompt : cdata option}
       | HR of
         {
           align : HAlign.align option,
           noshade : bool,
           size : pixels option,
           width : cdata option
         }
       | TABLE of
         {
           align : HAlign.align option,
           width : cdata option,
           border : pixels option,
           cellspacing : pixels option,
           cellpadding : pixels option,
           caption : caption option,
           content : tr list
         }


list_item

datatype list_item =
         LI of {ty : cdata option, value : int option, content : block}


caption

datatype caption =
         CAPTION of {align : CaptionAlign.align option, content : text}

table content *


tr

datatype tr =
         TR of
         {
           align : HAlign.align option,
           valign : CellVAlign.align option,
           bgcolor : cdata option,
           content : table_cell list
         }


table_cell

datatype table_cell =
         TH of
         {
           nowrap : bool,
           rowspan : int option,
           colspan : int option,
           align : HAlign.align option,
           valign : CellVAlign.align option,
           width : pixels option,
           height : pixels option,
           bgcolor : cdata option,
           content : block
         }
       | TD of
         {
           nowrap : bool,
           rowspan : int option,
           colspan : int option,
           align : HAlign.align option,
           valign : CellVAlign.align option,
           width : pixels option,
           height : pixels option,
           bgcolor : cdata option,
           content : block
         }


text

datatype text =
         TextList of text list
       | PCDATA of pcdata
       | TT of text
       | I of text
       | B of text
       | U of text
       | STRIKE of text
       | BIG of text
       | SMALL of text
       | SUB of text
       | SUP of text
       | EM of text
       | STRONG of text
       | DFN of text
       | CODE of text
       | SAMP of text
       | KBD of text
       | VAR of text
       | CITE of text
       | A of
         {
           name : cdata option,
           href : url option,
           rel : cdata option,
           rev : cdata option,
           title : cdata option,
           target : cdata option,
           content : text
         }
       | IMG of
         {
           src : url,
           alt : cdata option,
           align : IAlign.align option,
           height : pixels option,
           width : pixels option,
           border : pixels option,
           hspace : pixels option,
           vspace : pixels option,
           usemap : url option,
           ismap : bool
         }
       | APPLET of
         {
           codebase : url option,
           code : cdata,
           name : cdata option,
           alt : cdata option,
           align : IAlign.align option,
           height : pixels option,
           width : pixels option,
           hspace : pixels option,
           vspace : pixels option,
           content : text
         }
       | PARAM of {name : name, value : cdata option}
       | FONT of {size : cdata option, color : cdata option, content : text}
       | BASEFONT of {size : cdata option, content : text}
       | BR of {clear : TextFlowCtl.control option}
       | MAP of {name : cdata option, content : area list}
       | INPUT of
         {
           ty : InputType.ty option,
           name : cdata option,
           value : cdata option,
           checked : bool,
           size : cdata option,
           maxlength : int option,
           src : url option,
           align : IAlign.align option
         }
       | SELECT of
         {name : cdata, size : int option, content : select_option list}
       | TEXTAREA of {name : cdata, rows : int, cols : int, content : pcdata}
       | SCRIPT of pcdata

Text *


area

datatype area =
         AREA of
         {
           shape : Shape.shape option,
           coords : cdata option,
           href : url option,
           nohref : bool,
           alt : cdata
         }


select_option

datatype select_option =
         OPTION of {selected : bool, value : cdata option, content : pcdata}

 
DataConstructor detail

HTML

constructor HTML
            : {version : cdata option, head : head_content list, body : body} ->
                html


Head_TITLE

constructor Head_TITLE : pcdata -> head_content


Head_ISINDEX

constructor Head_ISINDEX : {prompt : cdata option} -> head_content


Head_BASE

constructor Head_BASE : {href : url} -> head_content


Head_META

constructor Head_META
            : {httpEquiv : name option, name : name option, content : cdata} ->
                head_content


Head_LINK

constructor Head_LINK
            : {
                id : id option,
                href : url option,
                rel : cdata option,
                rev : cdata option,
                title : cdata option
              } ->
                head_content


Head_SCRIPT

constructor Head_SCRIPT : pcdata -> head_content


Head_STYLE

constructor Head_STYLE : pcdata -> head_content


BODY

constructor BODY
            : {
                background : url option,
                bgcolor : cdata option,
                text : cdata option,
                link : cdata option,
                vlink : cdata option,
                alink : cdata option,
                content : block
              } ->
                body


FRAMEBODY

constructor FRAMEBODY : {frame : frame, noframes : block} -> body


Frame

constructor Frame : {src : url option, name : cdata option} -> frame


FrameSet

constructor FrameSet
            : {cols : cdata option, rows : cdata option, frames : frame list} ->
                frame


BlockList

constructor BlockList : block list -> block


TextBlock

constructor TextBlock : text -> block


Hn

constructor Hn : {n : int, align : HAlign.align option, content : text} -> block


ADDRESS

constructor ADDRESS : block -> block


P

constructor P : {align : HAlign.align option, content : text} -> block


UL

constructor UL
            : {
                ty : ULStyle.style option,
                compact : bool,
                content : list_item list
              } ->
                block


OL

constructor OL
            : {
                ty : cdata option,
                start : int option,
                compact : bool,
                content : list_item list
              } ->
                block


DIR

constructor DIR : {compact : bool, content : list_item list} -> block


MENU

constructor MENU : {compact : bool, content : list_item list} -> block


DL

constructor DL
            : {compact : bool, content : {dt : text list, dd : blocklist} ->
                block


PRE

constructor PRE : {width : int option, content : text} -> block


DIV

constructor DIV : {align : HAlign.align, content : block} -> block


CENTER

constructor CENTER : block -> block


BLOCKQUOTE

constructor BLOCKQUOTE : block -> block


FORM

constructor FORM
            : {
                action : url option,
                method : HttpMethod.method,
                enctype : cdata option,
                content : block
              } ->
                block


ISINDEX

constructor ISINDEX : {prompt : cdata option} -> block


HR

constructor HR
            : {
                align : HAlign.align option,
                noshade : bool,
                size : pixels option,
                width : cdata option
              } ->
                block


TABLE

constructor TABLE
            : {
                align : HAlign.align option,
                width : cdata option,
                border : pixels option,
                cellspacing : pixels option,
                cellpadding : pixels option,
                caption : caption option,
                content : tr list
              } ->
                block


LI

constructor LI
            : {ty : cdata option, value : int option, content : block} ->
                list_item


CAPTION

constructor CAPTION
            : {align : CaptionAlign.align option, content : text} -> caption


TR

constructor TR
            : {
                align : HAlign.align option,
                valign : CellVAlign.align option,
                bgcolor : cdata option,
                content : table_cell list
              } ->
                tr


TH

constructor TH
            : {
                nowrap : bool,
                rowspan : int option,
                colspan : int option,
                align : HAlign.align option,
                valign : CellVAlign.align option,
                width : pixels option,
                height : pixels option,
                bgcolor : cdata option,
                content : block
              } ->
                table_cell


TD

constructor TD
            : {
                nowrap : bool,
                rowspan : int option,
                colspan : int option,
                align : HAlign.align option,
                valign : CellVAlign.align option,
                width : pixels option,
                height : pixels option,
                bgcolor : cdata option,
                content : block
              } ->
                table_cell


TextList

constructor TextList : text list -> text


PCDATA

constructor PCDATA : pcdata -> text


TT

constructor TT : text -> text


I

constructor I : text -> text


B

constructor B : text -> text


U

constructor U : text -> text


STRIKE

constructor STRIKE : text -> text


BIG

constructor BIG : text -> text


SMALL

constructor SMALL : text -> text


SUB

constructor SUB : text -> text


SUP

constructor SUP : text -> text


EM

constructor EM : text -> text


STRONG

constructor STRONG : text -> text


DFN

constructor DFN : text -> text


CODE

constructor CODE : text -> text


SAMP

constructor SAMP : text -> text


KBD

constructor KBD : text -> text


VAR

constructor VAR : text -> text


CITE

constructor CITE : text -> text


A

constructor A
            : {
                name : cdata option,
                href : url option,
                rel : cdata option,
                rev : cdata option,
                title : cdata option,
                target : cdata option,
                content : text
              } ->
                text


IMG

constructor IMG
            : {
                src : url,
                alt : cdata option,
                align : IAlign.align option,
                height : pixels option,
                width : pixels option,
                border : pixels option,
                hspace : pixels option,
                vspace : pixels option,
                usemap : url option,
                ismap : bool
              } ->
                text


APPLET

constructor APPLET
            : {
                codebase : url option,
                code : cdata,
                name : cdata option,
                alt : cdata option,
                align : IAlign.align option,
                height : pixels option,
                width : pixels option,
                hspace : pixels option,
                vspace : pixels option,
                content : text
              } ->
                text


PARAM

constructor PARAM : {name : name, value : cdata option} -> text


FONT

constructor FONT
            : {size : cdata option, color : cdata option, content : text} ->
                text


BASEFONT

constructor BASEFONT : {size : cdata option, content : text} -> text


BR

constructor BR : {clear : TextFlowCtl.control option} -> text


MAP

constructor MAP : {name : cdata option, content : area list} -> text


INPUT

constructor INPUT
            : {
                ty : InputType.ty option,
                name : cdata option,
                value : cdata option,
                checked : bool,
                size : cdata option,
                maxlength : int option,
                src : url option,
                align : IAlign.align option
              } ->
                text


SELECT

constructor SELECT
            : {name : cdata, size : int option, content : select_option list} ->
                text


TEXTAREA

constructor TEXTAREA
            : {name : cdata, rows : int, cols : int, content : pcdata} -> text


SCRIPT

constructor SCRIPT : pcdata -> text


AREA

constructor AREA
            : {
                shape : Shape.shape option,
                coords : cdata option,
                href : url option,
                nohref : bool,
                alt : cdata
              } ->
                area


OPTION

constructor OPTION
            : {selected : bool, value : cdata option, content : pcdata} ->
                select_option

 
Value detail

htmlVersion

val htmlVersion : string

 


Overview  Index  Help 
SMLDoc: Documentation generator for SML