_HTML_ Library, _html.ss_
=========================
(require (lib "html.ss" "html")) will provide functions to read
html documents and structures to represent them.
Functions:
==========
> read-xhtml : [Input-port] -> Html
> read-html : [Input-port] -> Html
> read-html-as-xml : [Input-port] -> (listof Content)
See the XML library for the definition of Content
HTML Structures:
================
Pcdata, Entity, and Attribute are defined in the XML documentation.
> Html-content = Html-element | Pcdata | Entity
> Html-element = any of the structures below which all inherit from
(define-struct html-element (attributes)). Any html tag that may
include content also inherits from
(define-struct (html-full struct:html-element) (content))
without adding any additional fields.
A Html is
(make-html (listof Attribute) (listof Contents-of-html))
A Contents-of-html is either
- Body
- Head
A Div is
(make-div (listof Attribute) G2)
A Center is
(make-center (listof Attribute) G2)
A Blockquote is
(make-blockquote (listof Attribute) G2)
An Ins is
(make-ins (listof Attribute) G2)
A Del is
(make-del (listof Attribute) G2)
A Dd is
(make-dd (listof Attribute) G2)
A Li is
(make-li (listof Attribute) G2)
A Th is
(make-th (listof Attribute) G2)
A Td is
(make-td (listof Attribute) G2)
An Iframe is
(make-iframe (listof Attribute) G2)
A Noframes is
(make-noframes (listof Attribute) G2)
A Noscript is
(make-noscript (listof Attribute) G2)
A Style is
(make-style (listof Attribute) Cdata)
A Script is
(make-script (listof Attribute) Cdata)
A Basefont is
(make-basefont (listof Attribute))
A Br is
(make-br (listof Attribute))
An Area is
(make-area (listof Attribute))
A Link is
(make-link (listof Attribute))
An Img is
(make-img (listof Attribute))
A Param is
(make-param (listof Attribute))
A Hr is
(make-hr (listof Attribute))
An Input is
(make-input (listof Attribute))
A Col is
(make-col (listof Attribute))
An Isindex is
(make-isindex (listof Attribute))
A Base is
(make-base (listof Attribute))
A Meta is
(make-meta (listof Attribute))
An Option is
(make-option (listof Attribute) Pcdata)
A Textarea is
(make-textarea (listof Attribute) Pcdata)
A Title is
(make-title (listof Attribute) Pcdata)
A Head is
(make-head (listof Attribute) (listof Contents-of-head))
A Contents-of-head is either
- Base
- Isindex
- Link
- Meta
- Object
- Script
- Style
- Title
A Tr is
(make-tr (listof Attribute) (listof Contents-of-tr))
A Contents-of-tr is either
- Td
- Th
A Colgroup is
(make-colgroup (listof Attribute) Col)
A Thead is
(make-thead (listof Attribute) Tr)
A Tfoot is
(make-tfoot (listof Attribute) Tr)
A Tbody is
(make-tbody (listof Attribute) Tr)
A Tt is
(make-tt (listof Attribute) G5)
An I is
(make-i (listof Attribute) G5)
A B is
(make-b (listof Attribute) G5)
An U is
(make-u (listof Attribute) G5)
A S is
(make-s (listof Attribute) G5)
A Strike is
(make-strike (listof Attribute) G5)
A Big is
(make-big (listof Attribute) G5)
A Small is
(make-small (listof Attribute) G5)
An Em is
(make-em (listof Attribute) G5)
A Strong is
(make-strong (listof Attribute) G5)
A Dfn is
(make-dfn (listof Attribute) G5)
A Code is
(make-code (listof Attribute) G5)
A Samp is
(make-samp (listof Attribute) G5)
A Kbd is
(make-kbd (listof Attribute) G5)
A Var is
(make-var (listof Attribute) G5)
A Cite is
(make-cite (listof Attribute) G5)
An Abbr is
(make-abbr (listof Attribute) G5)
An Acronym is
(make-acronym (listof Attribute) G5)
A Sub is
(make-sub (listof Attribute) G5)
A Sup is
(make-sup (listof Attribute) G5)
A Span is
(make-span (listof Attribute) G5)
A Bdo is
(make-bdo (listof Attribute) G5)
A Font is
(make-font (listof Attribute) G5)
A P is
(make-p (listof Attribute) G5)
A H1 is
(make-h1 (listof Attribute) G5)
A H2 is
(make-h2 (listof Attribute) G5)
A H3 is
(make-h3 (listof Attribute) G5)
A H4 is
(make-h4 (listof Attribute) G5)
A H5 is
(make-h5 (listof Attribute) G5)
A H6 is
(make-h6 (listof Attribute) G5)
A Q is
(make-q (listof Attribute) G5)
A Dt is
(make-dt (listof Attribute) G5)
A Legend is
(make-legend (listof Attribute) G5)
A Caption is
(make-caption (listof Attribute) G5)
A Table is
(make-table (listof Attribute) (listof Contents-of-table))
A Contents-of-table is either
- Caption
- Col
- Colgroup
- Tbody
- Tfoot
- Thead
A Button is
(make-button (listof Attribute) G4)
A Fieldset is
(make-fieldset (listof Attribute) (listof Contents-of-fieldset))
A Contents-of-fieldset is either
- Legend
- G2
An Optgroup is
(make-optgroup (listof Attribute) Option)
A Select is
(make-select (listof Attribute) (listof Contents-of-select))
A Contents-of-select is either
- Optgroup
- Option
A Label is
(make-label (listof Attribute) G6)
A Form is
(make-form (listof Attribute) G3)
An Ol is
(make-ol (listof Attribute) Li)
An Ul is
(make-ul (listof Attribute) Li)
A Dir is
(make-dir (listof Attribute) Li)
A Menu is
(make-menu (listof Attribute) Li)
A Dl is
(make-dl (listof Attribute) (listof Contents-of-dl))
A Contents-of-dl is either
- Dd
- Dt
A Pre is
(make-pre (listof Attribute) (listof Contents-of-pre))
A Contents-of-pre is either
- G9
- G11
An Object is
(make-object (listof Attribute) (listof Contents-of-object-applet))
An Applet is
(make-applet (listof Attribute) (listof Contents-of-object-applet))
A Contents-of-object-applet is either
- Param
- G2
A Map is
(make-map (listof Attribute) (listof Contents-of-map))
A Contents-of-map is either
- Area
- Fieldset
- Form
- Isindex
- G10
An A is
(make-a (listof Attribute) (listof Contents-of-a))
A Contents-of-a is either
- Label
- G7
An Address is
(make-address (listof Attribute) (listof Contents-of-address))
A Contents-of-address is either
- P
- G5
A Body is
(make-body (listof Attribute) (listof Contents-of-body))
A Contents-of-body is either
- Del
- Ins
- G2
A G12 is either
- Button
- Iframe
- Input
- Select
- Textarea
A G11 is either
- A
- Label
- G12
A G10 is either
- Address
- Blockquote
- Center
- Dir
- Div
- Dl
- H1
- H2
- H3
- H4
- H5
- H6
- Hr
- Menu
- Noframes
- Noscript
- Ol
- P
- Pre
- Table
- Ul
A G9 is either
- Abbr
- Acronym
- B
- Bdo
- Br
- Cite
- Code
- Dfn
- Em
- I
- Kbd
- Map
- Pcdata
- Q
- S
- Samp
- Script
- Span
- Strike
- Strong
- Tt
- U
- Var
A G8 is either
- Applet
- Basefont
- Big
- Font
- Img
- Object
- Small
- Sub
- Sup
- G9
A G7 is either
- G8
- G12
A G6 is either
- A
- G7
A G5 is either
- Label
- G6
A G4 is either
- G8
- G10
A G3 is either
- Fieldset
- Isindex
- G4
- G11
A G2 is either
- Form
- G3