HTML 4.0のSGML宣言です。青文字の日本語注釈部分は、 日本工業規格(HTML文書版) JIS X 4151-1992を参考に私が付け加えた解説部分で、 W3CのHTML 4.0のSGML宣言にはありません。
<!SGML "ISO 8879:1986" -- SGML Declaration for HyperText Markup Language version 4.0 With support for the first 17 planes of ISO 10646 and increased limits for tag and literal lengths etc. -- CHARSET BASESET "ISO Registration Number 177//CHARSET ISO/IEC 10646-1:1993 UCS-4 with implementation level 3//ESC 2/5 2/15 4/6" DESCSET 0 9 UNUSED 9 2 9 11 2 UNUSED 13 1 13 14 18 UNUSED 32 95 32 127 1 UNUSED 128 32 UNUSED 160 55136 160 55296 2048 UNUSED -- SURROGATES -- 57344 1056768 57344 -- 文書文字集合を指定 基本文字集合(BASESET)を公開識別子で示しています。10646-1 UCS-4 (implementation level 3)を使用します。 文字集合区分(DESCSET)は、先頭文字番号 文字個数 基本集合文字番号 の順に表されています。基本集合文字番号にUNUSED”が指定してある 場合、それぞれの文字は、意味をもたないということです。 9、13を除く制御文字は使わず、これ以外の図形文字を使用します。 SURROGATESはサロゲートペアのことで、その区間にある2048個のコード ポイント二つを使って一つ文字を指定するという拡張のために使われる 文字番号ですので、この部分も除かれています。 -- CAPACITY SGMLREF TOTALCAP 150000 GRPCAP 150000 ENTCAP 150000 -- 容量集合 引数は"SGMLREF"を指定します。規格参照容量集合の容量値を変更 する場合は、名前と共に容量値を指定します。 -- SCOPE DOCUMENT -- 具象構文範囲 この引数は,SGML宣言で指定する具象構文を文書全体に適用す るかどうかを指定する。いいかえれば,前書き(文書型宣言や注釈宣言など)に 対して規格参照具象構文が使えるかどうかを指定する "DOCUMENT"の場合、指定する具象構文を文書全体に適用する。 -- SYNTAX SHUNCHAR CONTROLS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 127 BASESET "ISO 646IRV:1991//CHARSET International Reference Version (IRV)//ESC 2/8 4/2" DESCSET 0 128 0 -- 具象構文 回避文字番号指定 "CONTROLS" システム文字集合で制御文字となっている 文字及び図形文字でない文字すべてが回避文字であることを指定しています。 構文参照文字集合 基本文字集合はISO 646IRVであることを公開識別子で で示しています。 文字集合区分 -- FUNCTION RE 13 RS 10 SPACE 32 TAB SEPCHAR 9 -- 機能文字指定 RE(記録終了文字)文字番号13、RS(記録開始文字)文字番号10、 SPACE(間隔)文字番号32の他に、追加機能文字としてTAB(タブ) 文字番号9がSEPCHAR(分離子文字)として追加されます。 -- NAMING LCNMSTRT "" UCNMSTRT "" LCNMCHAR ".-_:" UCNMCHAR ".-_:" NAMECASE GENERAL YES ENTITY NO -- 命名法方 名前開始文字(小文字)LCNMSTRT 名前開始文字(大文字)UCNMSTRT 名前文字(小文字)LCNMCHAR 名前文字(大文字)UCNMCHAR に加えられる文字を指定します。名前文字にピリオド、ハイフン(マイナス)、 アンダースコア、コロンが追加されています。 NAMECASEは、小文字を大文字への代替するかどうかを指定します。 "ENTITY"は 実体参照及び実体名に対する指定を行い、"GENERAL"はその他の名前、名前字句、 数字句、区切り子に対して指定します。引数が"YES"の場合、小文字は対応する 大文字で代替し、"NO"は大文字への代替を行いません。 つまり、実体名や実体参照の場合は大文字小文字の区別をするが、その他の要素 名や属性名や属性値等では区別はしない(大文字に代替えして解釈する)というこ とです -- DELIM GENERAL SGMLREF SHORTREF SGMLREF -- 区切り子集合 一般区切り子 引数は"SGMLREF"を指定し、規格参照区切り子集合を使用しま す。(規格参照区切り子集合の区切り子を変更する場合は、名前と共に引数表記 で指定します。) 短縮参照区切り子 引数は"SGMLREF"を指定し、規格参照区切り子集合での短縮 参照区切り子を使用します。(短縮参照区切り子の区切り子を変更する場合は、 名前と共に引数表記で指定します。) -- NAMES SGMLREF -- 予約名使用 引数は"SGMLREF"を指定し、規格参照予約名を使用する。(予約名を変更す る場合は、以下に規格参照予約名に対応する名前を指定します。) -- QUANTITY SGMLREF ATTCNT 60 -- increased -- ATTSPLEN 65536 -- These are the largest values -- LITLEN 65536 -- permitted in the declaration -- NAMELEN 65536 -- Avoid fixed limits in actual -- PILEN 65536 -- implementations of HTML UA's -- TAGLVL 100 TAGLEN 65536 GRPGTCNT 150 GRPCNT 64 -- 量集合 引数は"SGMLREF"を指定し、規格参照量集合での値を割り当てます。その値を変更 するために、規格参照量集合での名前を挙げ、値を指定しています。 -- FEATURES MINIMIZE DATATAG NO OMITTAG YES RANK NO SHORTTAG YES LINK SIMPLE NO IMPLICIT NO EXPLICIT NO OTHER CONCUR NO SUBDOC NO FORMAL YES APPINFO NONE -- 機構使用 値の"NO"は、その機構を使わないことを意味し、値の"YESは、その機構を使う こと意味します。 マーク最小化機 マーク最小化機構での見出し語の意味は、次の通りです。 DATATAG データ文字の列が同時にタグの働きをもつ機構。 OMITTAG タグ省略の機構。 RANK 要素の付番を省略する機構。 SHORTTAG 区切り子の省略,属性指定又は共通識別子を使った短縮タグ機構。 連結型機構 連結型機構での見出し語の意味は、次の通りです。 SIMPLE 単純連結の機構。その“YES”の後ろに指定した数は、同時に活性状態 になりうる要素の個数(1以上)を指定する。 IMPLICIT 暗黙連結の機構。 EXPLICIT 明示連結の機構。その“YES”の後ろに指定した数は、連結処理の最長 の連鎖の長さを指定する。 他機構 他機構での見出し語の意味は、次の通りです。 CONCUR 基本文書型の実現値のほかに、同時に複数の文書型の実現値が存在し うる機構。その“YES”の後ろに指定した数は、その最大の個数(1以上)を 指定する。 SUBDOC 同時に複数のSGML部分文書実体が開いておける機構。その“YES”の後ろ に指定した数は、その最大の個数(1以上)を指定する。 FORMAL 公開識別子を公的公開識別子として解釈する機構。 応用特有情報 "NONE”は,応用に特有の情報の指定がないことを示します。 -- >