HyperText Markup Language

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動先: 案内検索
HTML
Html-source-code3.png
HTMLコードの例。
拡張子 .html, .htm
MIMEタイプ text/html
タイプコード TEXT
HTML
UTI public.html
開発者 W3C
WHATWG
種別 マークアップ言語
派生元 SGML
拡張 XHTML
国際標準 ISO/IEC 15445:2000

HyperText Markup Language(ハイパーテキスト マークアップ ランゲージ、HTML(エイチティーエムエル))は、ハイパーテキストを記述するためのマークアップ言語の1つである。World Wide Web (WWW)において、ウェブページ(1990年代後半頃からはコンテンツという語も利用されている。「中身」という意味の語であり、大層な意味は無い)を表現するために用いられる。ハイパーリンクや画像等のマルチメディアを埋め込むハイパーテキストとしての機能、見出し段落といったドキュメントの抽象構造、フォントや文字色の指定などの見た目の指定、などといった機能がある。

現在[いつ?]は、WHATWG により仕様が作られ、それを元に W3C により勧告が行われるという流れになっている。W3C は、XML ベースの規格である XHTML の勧告も行っている。

特徴[編集]

HTMLは木構造(入子構造)のマークアップ言語であり、形式言語である。「プレーンテキストの文書を要素で括って意味付け」という一般的な説明[1]は間違いである。「『タグ』と『タグ』で括られたもの全体」が「要素」(element)であり、タグすなわち要素ではない。マークアップ言語としての特徴は、先祖であるSGMLや、兄弟のXMLと共通しているため、以下ではWWWというシステムにおける「ハイパーテキスト記述言語」としての側面についてのみ記述する。

HTMLの要素には、文書を表現するものとしてごく一般的なものである見出し(ヘッドライン、h1〜 )、段落(パラグラフ、p )、ハイパーテキストとして特徴的な「アンカー」( a )に関係するもの、画像など( img など)の電子メディア的なもの、などがある。また文字色の指定などといった、意味ではなく直接見た目のみを指定するようなものは、近年ではスタイルシートなどに分離するべきとされているが、歴史的事情から現在でもしばしば使われている。その他主要な要素は、HTMLの要素の記事で解説している。

形式言語として見た場合「構文規則」(あるいは文法)に相当する「スキーマ」は、HTML4まではDTDとして公開され要素ごとに記載することの出来る属性、内容に含むことの出来る要素などが定められていた。HTML 4.01 では厳密なもの[2]、HTML 3.2 からの移行過渡期のためのもの[3]、フレームを用いた文書のためのもの[4]といった3つのDTDが定義されていた。

HTML 3.2 では見た目を左右する要素や属性が追加されたがHTMLは本来文書構造を示すためだけにその存在意義があり、それらの要素は目的に反するものとされた。そのため視覚的・感覚的効果を定義する手段としてスタイルシート(一般にはその中のCSS)が考案された。見た目を左右する要素や属性の一部は HTML4 以降では非推奨とされており、HTML 4.01 Strict では定義されていないので使用できない。ただし HTML 4.01 Strict で定義され、非推奨とされない要素や属性の一部にも見た目を左右するものがある。装飾的な視覚表現のためにそれらの要素や属性を用いているのであればその内容に適する要素を用いた上で、スタイルシートで表現を指定するのが望ましい。

HTML文書[編集]

HTML で書かれた文書をHTML文書と言い、HTML では、まず文書型宣言を書く。文書型宣言が無いものは、HTML の規格に従っているとはいえない。HTML5 の文書型宣言は以下のようなものである。HTML4 までは Document Type Definition (DTD) によって定義される書式に沿って記述しなければならなく、DTD は文書型宣言(DOCTYPE 宣言)で宣言したバージョンのものが選択された。

<!DOCTYPE html>

次にHTML文書の例を挙げる。

<!DOCTYPE html>
<html lang="ja">
 <head>
  <meta charset="UTF-8">
  <link rel="author" href="mailto:mail@example.com">
  <title lang="en">HyperText Markup Language - Wikipedia</title>
 </head>
 <body>
  <article>
   <h1 lang="en">HyperText Markup Language</h1>
   <p>HTMLは、<a href="http://ja.wikipedia.org/wiki/SGML">SGML</a>
      アプリケーションの一つで、ハイパーテキストを利用してワールド
      ワイドウェブ上で情報を発信するために作られ、
      ワールドワイドウェブの<strong>基幹的役割</strong>をなしている。
      情報を発信するための文書構造を定義するために使われ、
      ある程度機械が理解可能な言語で、
      写真の埋め込みや、フォームの作成、
      ハイパーテキストによるHTML間の連携が可能である。</p>
  </article>
 </body>
</html>

このHTML文書は次のような構造を示している。

  • 文書型宣言
  • html 要素(ルート要素。また、言語コード ja の言語が使われていることの明示)
    • head 要素(この文書のヘッダ情報の明示)
      • meta 要素(文書のメタ情報)
      • link 要素(他のリソースとの関連を明示。この場合、作者の明示)
      • title 要素(この文書のタイトルの明示、この部分は en の言語が使われていることの明示)
    • body 要素(この文書の内容の明示)
      • article 要素(記事を明示)
        • h1 要素(第一レベルの見出しを明示、この部分は en の言語が使われていることの明示)
        • p 要素(段落の明示)
          • a 要素(他のリソースへのアンカーであることの明示)
          • strong 要素(強い強調であることの明示)

タグによって文字列を括ることによりその文字列の意味付けがなされる。ユーザエージェントはそれを解釈して、例えば GUI によるウェブブラウザであれば strong 要素で括られたテキストを太字として表示するなどする。また、スタイルシートを用いることで見た目などを指定することができるようになっている。 尚、テキストエディターで改行をしても、ウェブブラウザ上では br 要素がなければ改行はされない。

HTMLタグ[編集]

「タグ」とは、HTML等の中のマークアップ、すなわちHTMLやSGMLやXMLであれば、文字「<」で始まり、文字「>」で終わっている部分のみを指し、開始タグ~終了タグに囲まれた全体を指す用語である「要素」(エレメント)とは異なる概念である(ただし <br/> のようなタグでは、そのタグのみが要素の全てと一致するが)。

しかし、「<br>タグで改行、<p>タグで改段落」などといった初期の粗悪な解説の影響の後に、「正しくはタグではなく要素」という粗悪な解説によって知識を上書きされたためか、現在もなお、混乱したままの解説等が後を絶たない。W3C勧告の HTML4.01 仕様書にはわざわざ、要素はタグではない[5]と明確に否定する文面がある[6]

歴史[編集]

1989年CERNティム・バーナーズ=リーは、オリジナルのHTML(および多くの関連したプロトコル、HTTPなど)のメモを提案し、1990年5月にコード化した[7]NEXTSTEPの動作するNeXTcubeワークステーション上で開発された。当時のHTMLは仕様ではなく、直面していた問題を解決するためのツール群であった。直面していた問題とは、ティム・バーナーズ=リーやその同僚たちがどのように情報や進行中の研究を共有するかということである。彼の成果は後に国際的かつ公開のネットワークの出現として結実し、世界的な注目を集めることになった。

HTML の初期のバージョンはゆるい文法規則によって定義されており、ウェブ技術になじみのない層に受け入れられる助けとなった。ウェブブラウザはウェブページの意図を推測し、レンダリングを実行するのが一般的であった。やがて公式規格においては厳格な言語構文をつくることを志向するようになっていったが、お節介な解釈をするブラウザは今でも存在する。

HTML が公式な仕様として定義されたのは1990年代からである。それは従来のマークアップ言語であるSGMLに、インターネットのためのハイパーテキストの機能を取り入れるというティム・バーナーズ=リーの提案に大きく影響を受けたものだった。

1993年にはIETFからHTML仕様書バージョン 1.0が公開され、SGMLからの拡張として文法定義のDTDを持つようになった。また1994年にIETFのHTMLワーキンググループが発足した。しかし、2.0以降のIETFの元での開発は他の開発との競合から停滞した。1996年からはW3Cによって商用ソフトウェア・ベンダーからの支援も受け、HTMLの仕様が標準化されている[8]。また2000年からは国際標準ともなった(ISO/IEC 15445:2000)。W3Cから勧告された最新のHTML仕様は HTML5 である。

HTML 1.0、HTML+[編集]

1993年6月に、IETFのIIIR Workingグループより提出されたHTML仕様書がインターネット・ドラフトとして発表された。本来はバージョン番号が付いていないが通常HTML 1.0と呼ぶ。このドラフトはティム・バーナーズ=リーおよびダニエル・コノリーによって、ティム・バーナーズ=リーの出した HTML Design Constraints に極力従うように書かれた。

1993年11月に、HTML の上位互換な HTML+ が発表された。テーブルなどが追加になっている。HTML+仕様書

HTML 2.0[編集]

1995年11月に、IETFのHTMLワーキンググループによって RFC 1866日本語訳)として仕様が発表された。下記の補助的な RFC もリリースされた。HTML 2.0 は RFC 2854 によって廃止され HTML は IETF ではなく W3C が管理することとなった。

  • 1995年11月:フォームベースのファイルアップロード。RFC 1867
  • 1996年5月:テーブル。RFC 1942
  • 1996年8月:クライアントサイドイメージマップ。RFC 1980
  • 1997年1月:HTMLの国際化。RFC 2070非公式な日本語訳)。「HTML i18n」とも呼ばれる。日本語を扱えるHTMLのバージョンとしては、最も古い。

HTML 3.0、HTML 3.2[編集]

HTML 3.0は策定作業が行われたが、ドラフトの段階で策定途中に破棄された。HTML 3.0仕様書

1997年1月14日に、HTML 3.2 がW3C勧告として仕様が発表された。HTML 3.2 Reference Specification非公式な日本語訳)。

HTML 4.0、HTML 4.01[編集]

1997年12月18日に、W3C勧告としてHTML 4.0の仕様が発表された。HTML 4.0は1998年4月24日に仕様が改訂[9]された。この仕様にいくらかのマイナーな修正が加えられたHTML 4.01は1999年12月24日にW3C勧告となった。Strict DTD の他にHTML 3.2からの移行過渡期のための Transitional DTD とフレームを使うことのできる Frameset DTD の3つのスキーマを持つ。

この後、HTML 4.01をベースとしてXHTML 1.0が策定されることになる。

ISO/IEC 15445:2000[編集]

ISO/IEC JTC 1による規格。HTML 4.01を参考にし、より厳密に規格化された。これは2000年に翻訳され JIS X 4156:2000 というJIS規格になった。

ISO/IEC 15445:2000は2003年に訂正版[10]が発行された(ただし訂正なので、その後も名称はISO/IEC 15445:2000のまま)。JIS X 4156は2005年に改正され、JIS X 4156:2005となっている。

HTML5、HTML 5.1[編集]

2014年10月28日に HTML5 が W3C より勧告された[11]。ブログや記事向けの「article」要素やマルチメディアのための「audio」および「video」要素などをはじめとした新要素・属性が追加され、以前は見た目を規定していた要素の殆どは変更または削除された。2016年11月1日に HTML 5.1 が勧告された[12]

HTML Living Standard[編集]

HTML Living Standard[13]WHATWG が更新し続けている HTML の最新仕様。これを元にして W3C の勧告が作られている。

HTML形式の電子メール[編集]

脚注[編集]

[ヘルプ]
  1. ^ ビレッジセンター出版局『正しいHTML4.0作法&リファレンス』)
  2. ^ : Strict
  3. ^ : Transitional
  4. ^ : Frameset
  5. ^ : Elements are not tags.
  6. ^ W3C "HTML 4.01 Specification" 3.2.1 Elements、1999年12月24日
  7. ^ Tim Berners-Lee. “Information Management: A Proposal”. CERN (March 1989, May 1990). 2012年11月28日閲覧。
  8. ^ Raggett, Dave (1998). Raggett on HTML 4. Addison-Wesley. pp. chap. 2: A history of HTML. ISBN 0-201-17805-2. http://www.w3.org/People/Raggett/book4/ch02.html. 
  9. ^ : revised
  10. ^ : corrected version
  11. ^ HTML5勧告–オープン・ウェブ・プラットフォームの重要なマイルストーンを達成
  12. ^ HTML 5.1 is a W3C Recommendation | W3C News
  13. ^ HTML Living Standard

関連項目[編集]

外部リンク[編集]