■ HTML 基本データ形式

ここでは、要素の内容や属性の値として記述される基本データ形式について解説します。HTMLの記述中における様々な「約束ごと」が込められており、W3Cによって定義されているHTMLの基本的なデータ形式について触れます。

ここで記述されている情報は、W3CBasic HTML data types を大まかに翻訳したものです。

出典先: http://www.w3.org/TR/html4/types.html

文字種情報

すべての属性の定義には、値における大文字と小文字の区別に関する情報を含めています。文字種は次のキーワードで示されています。
CS値に大文字と小文字の区別があります。ユーザエージェントは「a」と「A」を異なるものとして解釈します。
CI値に大文字と小文字の区別がありません。ユーザエージェントは「a」と「A」を等しいものとして解釈します。
CN文字種変換の影響を受けません。属性値が数値であるため大文字と小文字の区別がないというのが大きな理由です。
CA要素、あるいは属性の定義自体に大文字と小文字の区別がある場合、ユーザエージェントはこれを理解します。
CT大文字と小文字の区別については、ユーザエージェントはデータ形式の定義を参照します。
属性の値がリスト形式の場合、他に特記されていない限りは、上記キーワードはリスト注のすべての値に適用されます。ここで言うユーザエージェントとは、ブラウザやプロキシなどを指します。

PageTop

SGML基本形式

文書型定義は、HTMLの要素と属性の文法について、PCDATA、CDATA、NAME、ID等の SGML字句(トークン)を用いて定めています。ここでは、その鍵となる情報を説明します。

HTMLは、SGMLを誰にも使いやすいように発展させた元となるもので、HTMLのルーツにあたり、SGMLの基本的な仕様を継承しています。SGML はマークアップ言語を定義するメタ言語です。 HTML 4.0/4.01 は SGML アプリケーションであるマークアップ言語の代表格です。SGML 自身は、プラットホーム非依存のテキストフォーマットとして、電子データの共有を目的に策定され、1986年に、ISO規格 [ISO-8879] になりました。高い拡張性と柔軟な構文規則の表現を誇り、電子文書の交換用フォーマットを記述する規格として安定的な地位を保っています。

詳しくは、SGMLの概略をお読みください。

■ #PCDATA

Paesed Character Data の略で、任意の長さを持つ(あるいはゼロでも)任意のテキストを、SGML的(トークン)に解釈する文字集合体を指します。その特徴として、

PageTop

■ CDATA

Character Data の略で文字データそのものをあらわします。#PCDATAと異なるのは、マークが SGML的に解釈されない点にあります。

CDATA は文書文字集合中の任意の文字の列であり、実体参照も含まれます。ユーザエージェントはこの属性値を次のように解釈しています。

style要素と、script要素は CDATA型の内容モデルを持っていますが、両者の要素について、ユーザエージェントは CDATAを上記の解釈とは異なる方法で処理する必要があります。

マークアップと実体参照とはそのままのテキストとして扱い、何も変化させることなくアプリケーション (CSSやスクリプト)に引き渡すことになります。最初に現れる「 </ 」(終了タグの開始区切り子) は、そこで要素が終わるものとして扱います。これらは非HTMLのデータ形式として定義されています。

PageTop

■ NAME、ID

要素の名前を指定する属性の値として使われます。この値には次の制限があります。

IDは、id属性の値として使われる形式です。大文字と小文字の区別があります。また、NAMEと同じ制限も持っています。

■ IDREF、IDREFS

ID Reference の略で、他の IDを参照する場合に使います。他の場所で定義されたIDの値をそのまま利用します。IDREFSIDREFの複数形で、スペースで区切って複数指定することが可能です。

PageTop

意味づけされたCDATA型の属性

HTMLのすべての属性の値は、CDATAの型をとります。CDATA型の内容は多種多様です。アスキー文字で記述された名前、URI (URI)、数値や文章など、それぞれまったく異なる値であるにもかかわらず、SGML的にはCDATAとされています。

HTMLでは、DTD (文書型定義) のパラメータ実体を用いて属性のデータ形式を、それぞれに区別しています。

■ MIMEタイプ %ContentType;

MIMEタイプは大文字と小文字の区別がありません。要素の形式がこの type属性の形式を取ります。

MIMEタイプの例として、「text/html」、「image/png」、「image/gif」、「video/mpeg」、「text/css」、「audio/basic」などがあります。なおこのデータ形式は、DTDでは %ContentType(コンテントタイプ)と表しています。

PageTop

■ 言語コード %LanguageCode;

属性値が言語コードの場合、このデータ形式は DTDでは、%LanguageCode と表します。HTMLにおける言語コードの指定は、lang属性によって決められます。lang属性の値は、会話、筆記、その他情報交換のために人々が用いる自然言語を識別する言語コードです。 その他文字の主コードには、fr (フランス語)、de (ドイツ語)、it (イタリア語)、nl (オランダ語)、el (ギリシア語)、es (スペイン語)、pt (ポルトガル語)、ar (アラビア語)、he(ヘブライ語)、ru (ロシア語)、zh (中国語)、hi (ヒンディー語)、ur (ウルドゥー語)、sa (サンスクリット語)などがあります。

PageTop

■ 文字符号化 %Charset;

HTMLにおける言語の文字符号化方法は、IANAに登録されている文字列を定義します。なお、文字符号化方法の指定は、大文字と小文字を区別しません。日本語文字符号として、下記の3つが定義されています。

PageTop

■ リンク形式 %LinkTypes;

リンクタイプをスペースで区切って複数指定することができます。また、大文字と小文字の区別はありません。ユーザエージェント、検索エンジンなどはこのリンク形式を様々に解釈しています。非視覚系ブラウザではこのリンクタイプをナビゲーションとしてアクセスの提供に役立っています。
link要素における、rel、rev属性の値と機能
値の機能
altemateリンクがある文書の代替バージョン
stylesheet外部スタイルシート
start指定する文書が最初の文書であることを示す
next指定する文書が次の文書であることを示す
prev指定する文書が前の文書であることを示す
contents指定する文書が全体の目次であることを示す
index指定する文書が索引であることを示す
glossary指定する文書が用語解説であることを示す
copyright著作権に関する部分の記述
chapterひとまとまりの文書中で、「章」にあたる文書
sectionひとまとまりの文書中で、「節」にあたる文書
subsectionひとまとまりの文書中で、「項」にあたる文書
appendixひとまとまりの文書中で、「付録」にあたる文書
helpヘルプのある文書

現在、 Internet Explorer や Netscape などの視覚系ブラウザでは、スタイルシートを外部から読み込む場合を除いて上記の各機能には対応していません、念のため。

PageTop

■ テキスト %Text;

テキストとして示される多くの属性値は、人間が読んで理解できる普通のテキストを指します。

■ URI %URI;

URIには URLが含まれています。言い換えれば URLは URIのサブセットであるということです。当サイトでは、URIを馴染みの深いURLと記述していますが、正確にはURIを指します。

属性定義

href = URI [CT]

この属性は、相対URIを解決する際の基本URIとして働く絶対URIを指定します。

PageTop

■ 色 %Color;

属性値形式「色」(%Color;)は、[sRGB]モデルで定義される色指定を表わします。色の値は、#記号を冒頭につけた16進数値、または下記の16個の色名の、どちらかとします。色名及びカラーコードは、大文字小文字を区別しません。

sRGBについては、http://www.w3.org/Graphics/Color/sRGB(英文)を参照してください。

基本的な色名(Color Code)は下記16色しかありません。

Color CodeとsRGB値
Black Black = "#000000" Green Green = "#008000"
Silver Silver = "#C0C0C0" Lime Lime = "#00FF00"
Gray Gray = "#808080" Olive Olive = "#808000"
White White = "#FFFFFF" Yellow Yellow = "#FFFF00"
Maroon Maroon = "#800000" Navy Navy = "#000080"
Red Red = "#FF0000" Blue Blue = "#0000FF"
Purple Purple = "#800080" Teal Teal = "#008080"
Fuchsia Fuchsia = "#FF00FF" Aqua Aqua = "#00FFFF"
上記の通り、色指定の値「#800080」と「Purple」とは、どちらも紫色を表わします。文書をカラー化することにより、より多くの情報を提供することになり、読みやすくするものですが、カラー化に当たっては下記の指針を考慮することが求められています。

PageTop

■ 長さ %Length;

HTMLには、属性値としての長さ(高さも含める)の形式には次の3つの形式があります。長さの値は大文字と小文字には無関係にあります。
ピクセル (%Pixels;)
スクリーン(画面)や紙などのキャンバスに表示する際のピクセル数を表す整数の単位です。
長さ (%Length;)
ピクセル、または水平・垂直方向への利用可能な空間に対するパーセンテージ(%)を示します。従って、「50%」とは利用可能な空間の半分を意味します。
複合長 (%MultiLength;)
%Length;または 相対的な長さを意味します。相対的な長さは、「n*」という形式で示し、この「n」は整数を指定します。複数の要素が表示可能空間を取り合う場合、ユーザエージェントは、ピクセル及びパーセントで示された長さを先に割り当て、その残りを相対的な長さで分割します。相対指定されている区画は、分割可能な空間について、「*(アスタリスク)」のついた整数の比率に従って分配を受けます。値が「*」の場合、これは「1*」に等しく、従って、ピクセル値とパーセント値を割り当て終えた残りが60ピクセルだったとして、「1*、2*、3*」という3つの相対指定がある場合、「1*」には10ピクセル、「2*」には20ピクセル、「3*」には30ピクセルが割り当てられます。

PageTop

■ 日付と時刻 %Datetime;

日付と時刻の表現に関して、多くのオプションとバリエーションが認められています。日付時刻文字列形式は次のとおりです。

YYYY-MM-DDThh:mm:ssTZD

YYYY4桁の西暦年
MM2桁の月数(01の時には1月を表す)
DD2桁の日にち(01から31までが割り当てられる)
hh2桁の時刻(00〜23まで。am/pmは許されていません)
mm2桁の分数(00〜59まで)
ss2桁の秒数(00〜59まで)
TZDタイムゾーンを示す

TZDのタイムゾーンは、UTC(Coordinated Universal Time: 協定標準時間)を表し、「Z」は大文字でなければなりません。日本時間の場合には「+09:00:00」なので、

2002-11-08T23:10:00+09:00 の表記になります。

PageTop

要素タイプ

HTMLのマークアップに利用する各タグには、以下のようなタイプがあり、それぞれの規則に従って記述しなければなりません。

■ ブロックレベル要素 %Block

ブロックレベル要素とは、一般的な Webブラウザでは前後に改行を持ち、ブラウザ画面の左から右までいっぱいの矩形の領域を持っています。また、ブロックレベル要素には、文書構造を示す大変重要な意味を持つものが多く定義されています。

ブロックレベル要素一覧

address(所在情報)、 blockquote(引用文)、 center(中央揃え)、

dir(ディレクトリ一覧)、 div(汎用ブロック要素)、 dl(定義済みリスト)、

fieldset(フィールドグループ化)、 form(フォーム)、 h1〜h6(見出し)、

hr(罫線)、 isindex(入力フィールド)、 menu(メニュー)、

ol(番号つきリスト)、 p(段落)、pre(整形済みテキスト)、 table(表組)、

ul(リスト)

■ インラインレベル要素 %Inline

インラインレベル要素とは、通常の文字列と同じ扱いとなり、前後に改行や余白は持っておりません。また、すべてのインラインレベル要素は、ブロックレベル要素内で配置しなければなりません。

インラインレベル要素一覧

a(アンカー)、 abbr(略語)、 acronym(頭字語)、 applet(アプレット)、

b(ボールド)、 basefont(基準フォント)、bdo(文字方向)、big(大きい字)、

br(強制改行)、 button(ボタン)、 caption(表題)、 cite(参照先情報)、

code(コード文字)、 dfn(定義語)、 em(文字強調)、 font(フォント)、

i(イタリック体文字)、 iframe(擬似フレーム)、 img(静止画像貼付)、

input(入力フィールド)、 kbd(キーボード入力文字)、 label(ラベル)、

map(イメージマップ定義)、object(オブジェクト)、 q(引用文)、

s(抹消線文字)、 samp(サンプル文字)、 select(メニューフィールド)、

small(小さい文字)、 span(汎用インライン要素)、 strike(抹消線文字)、

strong(文字強調)、 sub(下付き文字)、 sup(上付き文字)、

textarea(テキスト領域)、 tt(テレタイプ文字)、 u(下線付き文字)、

var(変数文字)

なお、del(抹消文字)、ins(追加文字) の2つの要素は、ブロック、インライン両方で利用可能ですが重複して使うことは許されていません。

■ その他の要素 %Flow and headers, ETC.

インライン、ブロックレベルのどちらにも規定されていない要素です。 この要素内では、ヘッダ内でのみで使用する要素(headers)、あるいは規定されている親要素の中で配置されなければならない要素が含まれます。

それらの中には、ブロック及びインラインレベル要素を配置することが可能な要素(%Flow)、あるいは非HTMLデータを配置する要素(headers)なども含まれます。

その他の要素一覧

areabasebodycolcolgroupdddtframeframesetheadhtmllegendlilinkmetanoscriptnoframesoptgroupoptionparamscriptstyletbodytdtfootththeadtitletr



This Page is HTML4.01 Valid! 初版更新日 2002年11月7日 ;  最新更新日 2006年6月8日
Copyright(C) 2002-2006 banban@scollabo.com