[ホーム]
[閲覧確認ソフト:i.ホタル2001]
[モバイルアクセス向け HTML 4.0 ガイドライン]<by Teramoto>
日本語翻訳版覚書
Yasutaka Kato 加藤泰孝 <email:y.kato@personal.email.ne.jp>
Compact HTML for Small Information Appliances
W3C NOTE 09-Feb-1998
この文書は、W3協会から入手できるノートで、議論のためのものです。このこ とは、その内容を保証しているものでもなく、協会はその作成上なんら編集制 御をもたなく、協会はノートで指定された議論の参照を配置するものではな い、ということです。
この文書はW3Cに投稿されています。その位置付けについては <http://www.w3.org/Submission/>のW3Cへの投稿同意をみてください。
インターネット基盤は世界にまたがって発展しており、そして現在インター ネットアクセス機能を装備した機器も、TVセットから無線セルラー電話と、 様々です。ハイパーテキストマーク付け言語(HTML)は広く受け入れられ、 WWW(世界的通信網)文書書式の標準として広がっています。ここに提案した 「簡潔なHTML(コンパクトHTML)」は、小型電話・小型通信器・移動PDAsなど といった小型機器用のHTMLのサブセット(部分集合)を定義しています。指針 としてのある種のレベルのHTMLが、小型情報機器製造者・サーバー提供者・発 送者やソフトウェアー開発者から、強く望まれています。「コンパクトHTML」 は完全にHTML勧告に基づいているので、色々なソフトウェアー道具や公開資料 (テキスト・雑誌そしてウェブ情報)といった多くのHTMLに基づく内容資源が 利用できます。
参考資料
謝辞
付録A:コンパクトHTMLタグ一覧
付録B:コンパクトHTML DTD
コンパクトHTMLは、十分に定義された、HTML 2.0[1]・HTML 3.2[2]そしてHTML 4.0 [3]勧告のサブセットで、小型情報機器用に設計されています。HTMLは、イン ターネット上の文書用に柔軟で、ポータブルでそして実際的な文書書式を定義 しています。HTMLの一つの方向は、より豊富なマルチメディア文書書式に成長 することです。新しい勧告HTML 4.0[3]では、新しい機能が追加されています。 例えば、CSS(カスケーディング・スタイル・シート)は巾広い文書スタイルを あたえます。一方、小型情報機器用の別の方向があります。小型情報機器は、 メモリーが少ない・CPUの力が低い・二次的保存容量が小さいか無い・小画面・ モノクロ画面・単一文字・入力方法の制限(キーボードやマウスがない)と いった幾つかのハードウェアー上の制限をもっています。この文書で提案さ れているコンパクトHTML用ブラウザは、このような環境の制限内で、道具建て がなされています。一旦そのようなHTMLサブセットが定義されたら、内容開発 者や情報機器製造業者は、この共通の基準に従うことができます。コンパクト HTMLは、小型情報機器市場の急速な成長に、きっと寄与すると確信しています。
まず、対象になる小型情報機器の範囲について記載します。これらの機器の範疇には、小型電話・小型通信器そして移動PDAがあげられます。これらの機器ではハードウェアーになんらかの制限があります。その対象機器のハードウェアーからみた主な特徴を拾いあげます。
この絵はセルラー電話の例を示していて、HTML閲覧機能をもっています。様々な内容サービスが、無線ネットワーク経由で、潜在的には可能です。
このような小型機器用のWWW閲覧機能を実現するには、適当なHTMLサブセットが 必要です。上記のハードウェアー上の制限から、必要条件が導きだされます。 また、これらの機器は商品として使い易いものでなければなりません。 HTMLサブセットとしての閲覧ソフトウェアーは小さなメモリー内、例えばデー ター用に150-200Kバイトまたプログラムコード用に150-200Kバイト、で作動し なければなりません。最低必要のCPUは、ネットワーク交流過程に必要なCPUパ ワーによりますが、1-2 MIPSなければなりません。 また容易に誘導操作できることが、商品の鍵になる機能です。これは、利用者 が最低の操作で情報を操作できること、を意味します。HTMLサブセットはこの 条件を満さなければなりません。
コンパクトHTMLは基礎をなすネットワーク手順に依存しません。一般には、コ ンパクトHTML用の転送手順(プロトコール)はTCP/IPへるHTTPと考えられま す。しかし最近のセルラー電話での無線交流ネットワークは、バンドが狭く速 度は遅いものです。この領域では転送手順は、構造上小さなものの上でいい作 動をするために、軽い手順として定義されなければなりません。また、HTML内 容を圧縮するのが利用しやすいと思えます、というのは殆どのHTMLデーターは 一つの小さなデーターのまとまり(パケット・データー)で保存できるからで す。
このコンパクトHTMLは、上に記載された小型情報機器の要求に合うように設計 されています。以下の四つの原則にそって設計されています。
| (1) | 最新のHTMLW3C勧告に完全にそっている。 | |
| コンパクトHTMLは、HTML 2.0・HTML 3.2そしてHTML 4.0仕様書のサブセットとして定義されている。このことは、コンパクトHTMLは標準HTMLからその柔軟性とポータビリティを継承していること、を意味しています。 |
| (2) | 簡素な仕様書(ライト仕様書) |
| コンパクトHTMLは小さなメモリーとパワーの低いCPUで道具建てされなければなりません。大きなメモリーを必要とするフレームやテーブルは、コンパクトHTMLから除外されます。 |
| (3) | 小型モノクロ表示画面で閲覧できるもの |
| コンパクトHTMLは黒白の小型表示空間を想定しています。しかし固定された表示空間を想定してなく、表示スクリーン・サイズは柔軟があります。また、コンパクトHTMLは単一文字フォントを想定しています。 |
| (4) | 利用者が容易に操作できること |
| コンパクトHTMLは、基本的な操作全てが四つのボタンの組み合わせでなされるように定義されています; 前方カーソル・後方カーソル・選択とバック/ストップ(直前のページに戻る)。イメージマップやテーブルのように二次元焦点指示を必要とする機能は、コンパクトHTMLから除外されています。 |
コンパクトHTMLの定義は、上記の原則から直接導かれています。
コンパクトHTMLはHTML 2.0・HTML 3.2とHTML 4.0のサブセットです。コンパクトHTMLから除外されている主な機能を以下で説明します。
コンパクトHTMLはGIF画像をサポートすると定義しています。このサブセットは二次元カーソル移動を必要としません、つまり四つだけのボタンだけを使って操作されることに注意しておかなければなりません。また、小型表示用にうまく設計されているページは、スクリーン空間に一致しスクロールする必要がないと思えます。実際コンパクトHTML閲覧ブラウザは、HDML[4]の"deck of cards"のようなページを表示できます。
メモリー容量はコンパクトHTML閲覧ブラウザの道具建てにおいて、一番重要な問題ですので、ある種の機能ではバッファー制限を推奨します。
このような制限は道具建て(装備)問題に関わりますが、機器開発で共通の基準が必要です。
ブラウザでの推奨される一つの装備は、数値ボタンを使ってアンカーの直接選択をサポートすることです。例えばHTMLページに五つの<A>アンカーがある場合、三番目のアンカーは"3"ボタンを押すことで選択されることができます。(HTML 4.0仕様書には、同じ目的のために直接キー割り当ての新しい属性"accesskey"があります。)
コンパクトHTMLでサポートされる全タグの一覧表は付録Aにあります。HTML 2.0・HTML 3.2とHTML 4.0との比較は表でマークを付けてあります。コンパクトHTMLの文書型定義(DTD)も付録Bに記載してあります。これはコンパクトHTML要素が意図している解釈です。文書型は以下のように定義されます;
<!DOCTYPE HTML PUBLIC "-//W3C//DTD Compact HTML 1.0 Draft//EN">
コンパクトHTMLを使った応用例をここにあげています。以下の例はコンパクト なセルラー電話用のコンパクトなブラウザを示しています。このスクリーンは 7テキスト行と16文字巾の空間です、先頭行は情報状況を表示するのに使われて います。
| (1) | コンパクトHTML例:簡単な機能一覧(メニュー) |
| この例では、カーソルが指しているポイントは反転テキストとして表現され ています。 |

| (2) | コンパクトHTML例:メール送信書式 |
| この例は、INPUTタグを使用したメール送信書式を示しています。選択された書式は実線で囲われた行として表わされ、選択されていない書式は点線で囲われた行として表わされます。文字入力用のカーソル・ポイントは反転ボックスとして表わされています。 |

| (3) | コンパクトHTML例:画像内容 |
| この例はその日のお天気と雨情報を示しています。モノクロGIG画像を使って います。 |

実際の装備と経験からコンパクトHTMLは、5-10テキスト行と10-20 文字巾の小型 スクリーンにとって、十分有効であることを示しています。
コンパクトHTML、HTML基盤接近、は小型情報機器が公開されているWWW世界に接 続できることを保証してくれます。コンパクトHTMLはHTML機能の利益を保持 し、小型情報機器の限界から生じる問題を解決します。
コンパクトHTML仕様書は、HTML制作システムのような道具によって参照される ことができます。更にそのような小型機器用のクライアント固有のウェブサー ビスが、利用者代行手段特性を利用することによって、実現できます。つま り、サーバーでコンパクトHTML用の内容ふるい分けができます。
HTML基準を基盤としない別の接近方法もありえます。新言語による接近はある 種のクローズなサービスで採用されえます。例えばHDML(Handheld Device Markup Language)[4]と言われる言語が、移動性携帯性機器用に提案されていま す。HDMLの目標はコンパクトHTMLのそれと非常に似ています。それは携帯機器 クラスにとって有益でしょう。しかし、特別な言語による接近の不利益があ り、内容・制作道具・サーバー=ソフトウェアー・クライアント=ソフトウェ アー・そして教則本が用意されなければなりません。特に、高速端末PDAから低 速端末セルラー電話にいたる製品ラインについて考えると、首尾一貫したHTML 基盤接近は道理があります。
小型情報機器用のコンパクトHTMLを提案しました。これはWWW交流社会、特に無線や移動小型機器での、に貢献します。コンパクトHTMLは、この領域で、HTMLサービスやHTML閲覧ソフトウェアーの推奨指針として参照されえます。
インターネット世界は非常に早い速度で成長しています。将来、コンパクト HTML用に幾つかのレベルが必要になるかもしれません。成長する市場の要求に 沿って、機能性を発展し、仕様書の柔軟性を拡張することが重要です。
21世紀では、無線デジタル電話網手順の世界規模の標準が確立されるでしょ う。ネットワークの帯巾(バンド)が動画(ビデオ)交流にも十分な巾になる と思われます。コンパクトHTMLは、無線ネットワークの次の世代のこのような 進歩した機能も含まれなければなりません。
| [1] | Tim Berners-Lee and Dan Connolly, The HyperText Markup Language (HTML) Specification Version 2.0 (RFC 1866), Nov. 1995. |
| [2] | Dave Raggett, HTML 3.2 Reference Specification, W3C Recommendation. Jan. 1997. |
| [3] | Dave Raggett, Arnaud Le Hors, and Ian Jacobs, HTML 4.0 Reference Specification, W3C Recommendation, Dec. 1997. |
| [4] | Tim Hyland, Proposal for a Handheld Device Markup Language (HDML), May. 1997. |
| [5] | Tomihisa Kamada and Tomohiko Miyazaki, Client-Specific Web Services by Using User Agent Attributes, W3C NOTE, Dec. 1997. |
Professors Nobuo SaitoならびにTatsuya Hagino (KEIO University) 、さらに 多くのW3C会員の方々に、支援や示唆を頂き感謝いたします。また、NTT DoCoMo に対し、無線セルラー電話用コンパクトHTMLのご支援に心から感謝いたします。
--Updated 1998/01/27
--HTML(2.0:HTML2.0, 3.2:HTML3.2, 4.0:HTML4.0)
--CH:Compact HTML
| No | Elements | Attributes | HTML | CH | Comments |
| 1 | !- | - | 2.0 | CH | -- |
| 2 | !DOCTYPE | - | 2.0 | CH | -- |
| 3 | &xxx; |
- | 2.0 | CH | --&,©,>,<,",®, --�〜 |
| 4 | A | name= href="URL" rel= rev= title= urn=(deleted from HTML3.2) methods=(deleted from HTML3.2) |
2.0 | CH CH - - - - - |
-- |
| 5 | ABBR | - | 4.0 | - | -- |
| 6 | ACRONYM | - | 4.0 | - | -- |
| 7 | ADDRESS | - | 2.0 | - | --Only one font. |
| 8 | APPLET | - | 3.2 | - | --(Deprecated element in HTML4.0) |
| 9 | AREA | shape= coords= href="URL" alt= nohref |
3.2 | - | -- |
| 10 | B | - | 2.0 | - | --Only one font. |
| 11 | BASE | href="URL" | 2.0 | CH | -- |
| 12 | BASEFONT | size= | 3.2 | - | --Only one font. --(Deprecated element in HTML4.0) |
| 13 | BDO | - | 4.0 | - | -- |
| 14 | BIG | - | 3.2 | - | --Only one font. |
| 15 | BLOCKQUOTE | - | 3.2 | CH | -- |
| 16 | BODY | - bgcolor= background= text= link= vlink= alink= |
2.0 3.2 3.2 3.2 3.2 3.2 3.2 |
CH - - - - - - |
--Non-white colors are drawn as black. |
| 17 | BR | - clear=all/left/right |
2.0 3.2 |
CH CH |
-- |
| 18 | BUTTON | - | 4.0 | - | -- |
| 19 | CAPTION | - | 3.2 | - | -- |
| 20 | CENTER | - | 3.2 | CH | --(Deprecated element in HTML4.0) |
| 21 | CITE | - | 2.0 | - | --Only one font. |
| 22 | CODE | - | 2.0 | - | --Only one font. |
| 23 | COL | - | 4.0 | - | -- |
| 24 | COLGROUP | - | 4.0 | - | -- |
| 25 | DD | - | 2.0 | CH | -- |
| 26 | DEL | - | 4.0 | - | -- |
| 27 | DFN | - | 3.2 | - | -- |
| 28 | DIR | - compact |
2.0 | CH - |
--(Deprecated element in HTML4.0) |
| 29 | DIV | - align=left/center/right |
3.2 | CH CH |
-- |
| 30 | DL | - compact |
2.0 | CH - |
-- |
| 31 | DT | - | 2.0 | CH | -- |
| 32 | EM | - | 2.0 | - | --Only one font. |
| 33 | FIELDSET | - | 4.0 | - | -- |
| 34 | FONT | size=n size=+n/-n color= |
3.2 | - - - |
--Only one font. --(Deprecated element in HTML4.0) |
| 35 | FORM | action= method=get/post enctype= |
2.0 | CH CH CH |
-- |
| 36 | FRAME | - | 4.0 | - | --(Frameset DTD) |
| 37 | FRAMESET | - | 4.0 | - | --(Frameset DTD) |
| 38 | HEAD | - | 2.0 | CH | -- |
| 39 | Hn | - align=left/center/right |
2.0 3.2 |
CH CH |
-- |
| 40 | HR | - align=left/center/right size= width= noshade |
2.0 3.2 3.2 3.2 3.2 |
CH CH CH CH CH |
-- |
| 41 | HTML | - version= |
2.0 3.2 |
CH CH |
--version="C-HTML 1.0". |
| 42 | I | - | 2.0 | - | --Only one font. |
| 43 | IFRAME | - | 4.0 | - | --(Frameset DTD) |
| 44 | IMG | src= align=top/middle/bottom align=left/right width= height= hspace= vspace= alt= border= usemap= ismap= |
2.0 2.0 3.2 3.2 3.2 3.2 3.2 2.0 3.2 3.2 2.0 |
CH CH CH CH CH CH CH CH CH - - |
--Large images compressed automatically. |
| 45 | INPUT | type=text name= size= maxlength= value= |
2.0 | CH CH CH CH CH |
--Max character buffer 512 bytes. |
| type=password name= size= maxlength= value= |
2.0 | CH CH CH CH CH |
-- | ||
| type=checkbox name= value= checked |
2.0 | CH CH CH CH |
-- | ||
| type=radio name= value= checked |
2.0 | CH CH CH CH |
-- | ||
| type=hidden name= value= |
2.0 | CH CH CH |
-- | ||
| type=image name= src= align=top/middle/bottom/left/right |
2.0 2.0 2.0 3.2 |
- | -- | ||
| type=submit name= value= |
2.0 | CH CH CH |
-- | ||
| type=reset name= value= |
2.0 | CH CH CH |
-- | ||
| type=file name= value= |
3.2 | - | -- | ||
| 46 | INS | - | 4.0 | - | -- |
| 47 | ISINDEX | - prompt= |
2.0 3.2 |
- - |
--(Deprecated element in HTML4.0) |
| 48 | KBD | - | 2.0 | - | --Only one font. |
| 49 | LABEL | - | 4.0 | - | -- |
| 50 | LEGEND | - | 4.0 | - | -- |
| 51 | LI | - type=1/A/a/I/i type=circle/disc/square value= |
2.0 3.2 3.2 3.2 |
CH - - - |
-- |
| 52 | LINK | href="URL" rel= rev= urn= methods= title= id= |
2.0 | - | -- |
| 53 | LISTING | - | 2.0 | - | --Only one font. --(Obsolete element in HTML4.0) |
| 54 | MAP | name= | 3.2 | - | -- |
| 55 | MENU | - compact |
2.0 | CH - |
--(Deprecated element in HTML4.0) |
| 56 | META | name= http-equiv= content= |
2.0 | CH | --http-equiv="refresh" only. |
| 57 | NEXTID | n= | 2.0 | - | --Deleted from HTML3.2. |
| 58 | NOFRAMES | - | 4.0 | - | --(Frameset DTD) |
| 59 | NOSCRIPT | - | 4.0 | - | -- |
| 60 | OBJECT | - | 4.0 | - | -- |
| 61 | OL | - type=1/A/a/I/i start= compact |
2.0 3.2 3.2 2.0 |
CH - - - |
-- |
| 62 | OPTGROUP | - | 4.0 | - | -- |
| 63 | OPTION | - selected value= |
2.0 | CH CH - |
-- |
| 64 | P | - align=left/center/right |
2.0 3.2 |
CH CH |
-- |
| 65 | PARAM | - | 4.0 | - | -- |
| 66 | PLAINTEXT | - | 2.0 | CH | --(Obsolete element in HTML4.0) |
| 67 | PRE | - width= |
2.0 3.2 |
CH - |
-- |
| 68 | Q | - | 4.0 | - | -- |
| 69 | S | - | 2.0 | - | --(Deprecated element in HTML4.0) |
| 70 | SAMP | - | 2.0 | - | --Only one font. |
| 71 | SCRIPT | - | 3.2 | - | -- |
| 72 | SELECT | name= size= multiple |
2.0 | CH CH CH |
--Max character buffer 4 Kbytes. |
| 73 | SMALL | - | 3.2 | - | --Only one font. |
| 74 | SPAN | - | 4.0 | - | -- |
| 75 | STRIKE | - | 2.0 | - | --(Deprecated element in HTML4.0) |
| 76 | STRONG | - | 2.0 | - | --Only one font. |
| 77 | STYLE | - | 2.0 | - | -- |
| 78 | SUB | - | 3.2 | - | -- |
| 79 | SUP | - | 3.2 | - | -- |
| 80 | TABLE | - align=left/center/right etc. border= width= cellspacing= cellpadding= |
3.2 | - | -- |
| 81 | TBODY | - | 4.0 | - | -- |
| 82 | TD | - align=left/center/right valign=top/middle/bottom/baseline rowspan= colspan= width= height= nowrap |
3.2 | - | -- |
| 83 | TEXTAREA | name= rows= cols= |
2.0 | CH CH CH |
--Max character buffer 512 bytes. |
| 84 | TFOOT | - | 4.0 | - | -- |
| 85 | TH | - align=left/center/right valign=top/middle/bottom/baseline rowspan= colspan= width= height= nowrap |
3.2 | - | -- |
| 86 | THEAD | - | 4.0 | - | -- |
| 87 | TITLE | - | 2.0 | CH | -- |
| 88 | TR | - align=left/center/right valign=top/middle/bottom/baseline |
3.2 | - | -- |
| 89 | TT | - | 2.0 | - | --Only one font. |
| 90 | U | - | 3.2 | - | --(Deprecated element in HTML4.0) |
| 91 | UL | - type=disk/circle/square compact |
2.0 3.2 2.0 |
CH - - |
-- |
| 92 | VAR | - | 2.0 | - | --Only one font. |
| 93 | XMP | - | 2.0 | - | --Only one font. --(Obsolete element in HTML4.0) |
<!-- Compact HTML Document Type Definition -->
<!--
Date: Tuesday November 25th 1997
Author: Tomihisa Kamada <tomy@access.co.jp>
-->
<!ENTITY % HTML.Version
"-//W3C//DTD Compact HTML 1.0 Draft//EN"
>
<!--================== Deprecated Features Switch =========================-->
<!ENTITY % HTML.Deprecated "INCLUDE">
<!--================== Imported Names =====================================-->
<!ENTITY % Content-Type "CDATA">
<!ENTITY % HTTP-Method "GET | POST">
<!ENTITY % URL "CDATA">
<!-- Parameter Entities -->
<!ENTITY % heading "H1|H2|H3|H4|H5|H6">
<!ENTITY % list "UL | OL | DIR | MENU">
<!ENTITY % preformatted "PRE">
<!--================ Character mnemonic entities ==========================-->
<!ENTITY % ISOlat1 PUBLIC
"ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML">
%ISOlat1;
<!--================ Entities for special symbols =========================-->
<!ENTITY amp CDATA "&" -- ampersand -->
<!ENTITY gt CDATA ">" -- greater than -->
<!ENTITY lt CDATA "<" -- less than -->
<!--=================== Text Markup =======================================-->
<!ENTITY % phrase "DFN">
<!ENTITY % special "A | IMG | BR ">
<!ENTITY % form "INPUT | SELECT | TEXTAREA">
<!ENTITY % text "#PCDATA | %phrase | %special | %form">
<!ELEMENT (%phrase) - - (%text)*>
<!ELEMENT BR - O EMPTY>
<!ATTLIST BR
clear (left|all|right|none) none
>
<!--================== HTML content models ================================-->
<!ENTITY % block
"P | %list | %preformatted | DL | DIV | CENTER |
BLOCKQUOTE | FORM | HR ">
<!ENTITY % flow "(%text | %block)*">
<!--=================== Document Body =====================================-->
<!ENTITY % body.content "(%heading | %text | %block )*">
<!ELEMENT BODY O O %body.content>
<!ELEMENT DIV - - %body.content>
<!ATTLIST DIV
align (left|center|right) #IMPLIED
>
<!ELEMENT center - - %body.content>
<!--================== The Anchor Element =================================-->
<!ELEMENT A - - (%text)* -(A)>
<!ATTLIST A
name CDATA #IMPLIED
href %URL #IMPLIED
>
<!--=================== Images ============================================-->
<!ENTITY % Length "CDATA">
<!ENTITY % Pixels "NUMBER">
<!ENTITY % IAlign "(top|middle|bottom|left|right)">
<!ELEMENT IMG - O EMPTY>
<!ATTLIST IMG
src %URL #REQUIRED
align %IAlign #IMPLIED
width %Pixels #IMPLIED
height %Pixels #IMPLIED
hspace %Pixels #IMPLIED
vspace %Pixels #IMPLIED
alt CDATA #IMPLIED
border %Pixels #IMPLIED
>
<!--=================== Horizontal Rule ===================================-->
<!ELEMENT HR - O EMPTY>
<!ATTLIST HR
align (left|right|center) #IMPLIED
size %Pixels #IMPLIED
width %Length #IMPLIED
noshade (noshade) #IMPLIED
>
<!--=================== Paragraphs=========================================-->
<!ELEMENT P - O (%text)*>
<!ATTLIST P
align (left|center|right) #IMPLIED
>
<!--=================== Headings ==========================================-->
<!ELEMENT ( %heading ) - - (%text;)*>
<!ATTLIST ( %heading )
align (left|center|right) #IMPLIED
>
<!--=================== Preformatted Text =================================-->
<!ENTITY % pre.exclusion "IMG">
<!ELEMENT PRE - - (%text)* -(%pre.exclusion)>
<!--=================== Block-like Quotes =================================-->
<!ELEMENT BLOCKQUOTE - - %body.content>
<!--=================== Lists =============================================-->
<!ELEMENT DL - - (DT|DD)+>
<!ELEMENT DT - O (%text)*>
<!ELEMENT DD - O %flow;>
<!ELEMENT (OL|UL) - - (LI)+>
<!ELEMENT (DIR|MENU) - - (LI)+ -(%block)>
<!ELEMENT LI - O %flow>
<!--================ Forms ===============================================-->
<!ELEMENT FORM - - %body.content -(FORM)>
<!ATTLIST FORM
action %URL #IMPLIED
method (%HTTP-Method) GET
enctype %Content-Type; "application/x-www-form-urlencoded"
>
<!ENTITY % InputType
"(TEXT | PASSWORD | CHECKBOX | RADIO | HIDDEN
| IMAGE | SUBMIT | RESET )">
<!ELEMENT INPUT - O EMPTY>
<!ATTLIST INPUT
type %InputType TEXT
name CDATA #IMPLIED
value CDATA #IMPLIED
checked (checked) #IMPLIED
size CDATA #IMPLIED
maxlength NUMBER #IMPLIED
src %URL #IMPLIED
align %IAlign #IMPLIED >
<!ELEMENT SELECT - - (OPTION+)>
<!ATTLIST SELECT
name CDATA #REQUIRED
size NUMBER #IMPLIED
multiple (multiple) #IMPLIED
>
<!ELEMENT OPTION - O (#PCDATA)*>
<!ATTLIST OPTION
selected (selected) #IMPLIED
value CDATA #IMPLIED
>
<!ELEMENT TEXTAREA - - (#PCDATA)*>
<!ATTLIST TEXTAREA
name CDATA #REQUIRED
rows NUMBER #REQUIRED
cols NUMBER #REQUIRED
>
<!--================ Document Head ========================================-->
<!ENTITY % head.content "TITLE & ISINDEX? & BASE?">
<!ELEMENT HEAD O O (%head.content)>
<!ELEMENT TITLE - - (#PCDATA)*>
<!ELEMENT BASE - O EMPTY>
<!ATTLIST BASE
href %URL #REQUIRED
>
<!ELEMENT META - O EMPTY>
<!ATTLIST META
http-equiv NAME #IMPLIED
>
<!--================ Document Structure ===================================-->
<!ENTITY % version.attr "VERSION CDATA #FIXED '%HTML.Version;'">
<!ENTITY % html.content "HEAD, BODY">
<!ELEMENT HTML O O (%html.content)>
<!ATTLIST HTML
%version.attr;
>
<!--================ End of DTD ===========================================-->