無料ブログに登録

XHTML [ Extensible Markup Language ]

読み方: エックスエッチティーエムエル (xhtml)

XHTMLとは

Extensible HyperText Markup Language (エクステンシブル ハイパーテキスト マークアップ ランゲージ) は、SGMLで定義されていたHTMLXMLの文法で定義しなおしたマークアップ言語である。その仕様はHTMLと同じくW3Cによって勧告されている。XMLを採用したため、MathMLやSVGなど他のXML文書を埋め込むことができるようになった。

XHTMLとHTMLの違いは何か

XHTMLは、HTML4 [HTML] を再生産し、サブセット化し、拡張する現在及び将来の文書型及びモジュールのファミリーである。XHTMLファミリーの文書型はXMLベースであり、究極的にはXMLベースのユーザエージェントと結びついて機能するよう設計されている。このファミリーやその進化の詳細は、将来的な方向性に関する節でさらに詳しく論じられる。

XHTML 1.0は、XHTMLファミリーにおける初めての文書型である。これは、3つのHTML4文書型を XML 1.0 [XML] のアプリケーションとして再定式化したものである。XHTML 1.0 は、XML適合でもあり、かつ、いくつかの単純なガイドラインに従えばHTML4適合ユーザエージェントでも機能するコンテンツのための言語として使われることが予定されている。コンテンツを XHTML 1.0 に移り住ませた開発者は、以下の利点を実感するだろう。

・ XHTML文書はXML適合である。それだから、標準的なXMLツールを用いて難なく見られ、編集され、検証される。
・ XHTML文書は、これまで既存のHTML4ユーザエージェントで機能していたのと同じく、あるいはそれ以上に機能し、また新しい XHTML 1.0 適合ユーザエージェントでも同様に機能するよう書くことができる。
・ XHTML文書は、HTML文書オブジェクトモデルやXML文書オブジェクトモデル [DOM] をあてにするアプリケーション(例. スクリプトやアプレット)を役立てることができる。
・ XHTMLファミリーが進化するにつれ、XHTML 1.0 に適合した文書が、多様なXHTML環境の中や環境間で、相互運用される可能性が高まる。
・ XHTMLファミリーは、インターネットの進化における次の一歩である。今日XHTMLに移り住むことにより、コンテンツ開発者は、コンテンツの後方互換性や将来的な互換性に自信をもちながら、XMLワールドに入り、その付随する利点のすべてを享受することができる。

XHTMLはなぜ必要か

XHTML 1.0 へ移り住むことの利点は、上記に説明されている。一般的にXHTMLへ移り住むことの利点のいくつかを挙げると、次のようなものがある。

文書開発者やユーザエージェント設計者は、新しいマークアップを通じて彼らの発想を表記する新しい方法を持続的に発見している。XMLでは、新しい要素や追加的な要素属性を導入することが比較的容易である。XHTMLファミリーは、XHTMLモジュールや、(近刊のXHTMLモジュラ化仕様書で解説される)新しいXHTML適合モジュールを開発するためのテクニックを通じて、これらの拡張を収容するよう設計されている。これらのモジュールが、コンテンツを開発するときや新しいユーザエージェントを設計するときに、既存の機能セットや新しい機能セットの組み合わせを可能にすることになる。

インターネットにアクセスする代替方法は、コンスタントに導入されている。試算のなかには、2002年までにインターネット文書閲覧の75%がこれら代替的プラットフォーム上で実行されると示すものもある。XHTMLファミリーは、全体的なユーザエージェントの相互運用性を念頭に置いて設計されている。新しいユーザエージェントや文書プロファイリングメカニズムを通して、サーバやプロキシ、ユーザエージェントは、コンテンツの変形に最善の努力を実行することができることになる。究極的には、どのXHTML適合ユーザエージェントでも利用できるXHTML適合コンテンツを開発することが可能となるであろう。

HTMLとの記述の仕方の違い

XHTMLは前述のとおりXMLアプリケーションである。よって、XMLの文法に従うために、HTMLと異なる部分が存在する。以下は、全てではないが、主な文法上の相違点とソースのサンプルである。

  • XML文書である為、XML宣言が必要(文字コードがUTF-8ないしUTF-16の場合やHTTPなどのプロトコルで文字コードが指定されている場合は省略可能であるが、常に付与することが推奨される)。
    <?xml version="1.0" encoding="Shift_JIS"?>
  • XMLでは大文字・小文字が厳密に区別される。XHTML勧告において要素名・属性名は全て小文字でのみ定義されていることから、要素名・属性名は小文字で書かなければならない。
    正: <p id="aaa"><em>無料ブログ情報局</em></p>
      誤: <P ID="aaa"><EM>無料ブログ情報局</EM></P>
  • 要素は必ず開始タグと終了タグを備えていなければならない(タグ省略は許されない)。
    正: <p><em>あああ</em></p>
      誤: <p><em>あああ</em>
  • 空要素であっても必ず終了タグを付与するか、もしくは開始タグの末尾を /> としなければならない。
    正: <em>あああ</em><br />
      誤: <em>あああ</em><br>
      正: <em>あああ</em><br/>(非推奨)
      正: <em>あああ</em><br></br>(非推奨)
      誤: <em>あああ</em><br> </br>
  • 属性値はすべて " " (ダブルクォーテーション)ないし ' '(シングルクォーテーション)で囲まなければならない。
    正: <input type="text" size="8" />
      正: <input type='text' size='8' />
      誤: <input type=text size=8 />
  • 属性名記述を省略してはならない。
    正: <input type="checkbox" checked="checked" />
      誤: <input type="checkbox" checked />
  • 推奨されるメディアタイプが text/html から application/xhtml+xml に変更された。
    <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=Shift_JIS" />

関連情報

W3C HTML Home Page

あなたのXHTMLの文法は正しいの?

ブログ用語一覧

TOPに戻る

©2006 無料ブログ情報局会社概要広告掲載サイトマップ