Xhtml-version-1.1
XHTML-バージョン1.1
W3Cは、インターネットコンテンツ開発コミュニティを、形式が正しくない非標準のマークアップの時代から、整形式で有効なXMLの世界に移行するのに役立っています。 XHTML 1.0では、既存のHTML 4(またはそれ以前)ベースのコンテンツをXHTMLおよびXMLに簡単に移行できるようにするという目標により、この動きは緩和されました。
W3Cは、XHTMLファミリから非推奨の要素と属性のサポートを削除しました。 これらの要素と属性には、主にプレゼンテーション指向の機能があり、スタイルシートまたはクライアント固有のデフォルトの動作を介してより適切に処理されます。
現在、W3CのHTMLワーキンググループは、XHTML 1.1であるモジュールのみに基づいて初期ドキュメントタイプを定義しています。 このドキュメントタイプは、クライアントデバイスの幅広いコレクションに移植できるように設計されており、インターネットコンテンツの大部分に適用できます。
ドキュメントの適合性
XHTML 1.1は、以下のすべての基準を満たさなければならない、厳密に適合するXHTMLドキュメントの定義を提供します-
- ドキュメントは、XHTML 1.1ドキュメントタイプ定義で表現された制約に準拠しなければなりません。
- ドキュメントのルート要素は<html>でなければなりません。
- ドキュメントのルート要素は、_xmlns_属性を使用してXHTML名前空間を指定する必要があります。
- ルート要素には、XMLスキーマで定義されているスキーマの場所属性も含めることができます。
ドキュメントには、ルート要素の前にDOCTYPE宣言がなければなりません。 存在する場合、DOCTYPE宣言に含まれる公開識別子は、XHTML 1.1 Document Type DefinitionにあるDTDを参照しなければなりません。
XHTML 1.1ドキュメントの例を次に示します-
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3.org/MarkUp/SCHEMA/xhtml11.xsd" xml:lang="en">
<head>
<title>This is the document title</title>
</head>
<body>
<p>Moved to <a href="http://example.org/">example.org</a>.</p>
</body>
</html>
注-この例では、XML宣言が含まれています。 上記のようなXML宣言は、すべてのXMLドキュメントで必要なわけではありません。 XHTMLドキュメントの作成者は、すべてのドキュメントでXML宣言を使用することを強くお勧めします。 このような宣言は、ドキュメントの文字エンコードがデフォルトのUTF-8またはUTF-16以外の場合に必要です。
XHTML 1.1モジュール
XHTML 1.1ドキュメントタイプは、次のXHTMLモジュールで構成されています。
構造モジュール-構造モジュールは、XHTMLの主要な構造要素を定義します。 これらの要素は、多くのXHTMLファミリドキュメントタイプのコンテンツモデルの基礎として効果的に機能します。 このモジュールに含まれる要素と属性は、body、head、html、およびtitleです。
テキストモジュール-このモジュールは、すべての基本的なテキストコンテナ要素、属性、およびそれらのコンテンツモデルを定義します-abbr、頭字語、アドレス、blockquote、br、cite、コード、dfn、div、em、h1、h2、h3、h4 、h5、h6、kbd、p、pre、q、samp、span、strong、var。
ハイパーテキストモジュール-ハイパーテキストモジュールは、他のリソースへのハイパーテキストリンクを定義するために使用される要素を提供します。 このモジュールは要素aをサポートします。
リストモジュール-その名前が示すように、リストモジュールはリスト指向の要素を提供します。 具体的には、リストモジュールは次の要素と属性をサポートしています-dl、dt、dd、ol、ul、およびli。
オブジェクトモジュール-オブジェクトモジュールは、汎用オブジェクトを含めるための要素を提供します。 具体的には、Object Moduleは-objectおよびparamをサポートしています。
プレゼンテーションモジュール-このモジュールは、単純なプレゼンテーション関連のマークアップの要素、属性、および最小限のコンテンツモデルを定義します-b、big、hr、i、small、sub、sup、tt。
編集モジュール-このモジュールは、編集関連のマークアップで使用するための要素と属性を定義します-delとins。
双方向テキストモジュール-双方向テキストモジュールは、要素のコンテンツの双方向ルールを宣言するために使用できる要素を定義します-bdo。
フォームモジュール-HTML 4.0にあるすべてのフォーム機能を提供します。 具体的には、ボタン、フィールドセット、フォーム、入力、ラベル、凡例、選択、optgroup、オプション、およびテキストエリアをサポートしています。
テーブルモジュール-次の要素、属性、およびコンテンツモデルをサポートしています-キャプション、col、colgroup、table、tbody、td、tfoot、th、thead、tr。
画像モジュール-基本的な画像埋め込みを提供し、クライアント側の画像マップの一部の実装で個別に使用できます。 要素-imgをサポートします。
クライアント側のイメージマップモジュール-クライアント側のイメージマップの要素を提供します-エリアとマップ。
サーバー側画像マップモジュール-画像の選択と選択座標の送信のサポートを提供します。 サーバー側のイメージマップモジュールは、imgの属性ismapをサポートしています。
組み込みイベントモジュール-XHTMLイベントで説明したすべてのイベントをサポートします。
メタ情報モジュール-メタ情報モジュールは、ドキュメントの宣言部分内の情報を記述する要素を定義します。 要素メタが含まれます。
スクリプトモジュール-実行可能スクリプトまたは実行可能スクリプトのサポートの欠如に関する情報を含めるために使用される要素を定義します。 このモジュールに含まれる要素と属性は-noscriptとscriptです。
スタイルシートモジュール-内部スタイルシートを宣言するときに使用される要素を定義します。 このモジュールで定義される要素と属性は-スタイルです。
スタイル属性モジュール(非推奨)-スタイル属性を定義します。
リンクモジュール-外部リソースへのリンクを定義するために使用できる要素を定義します。 _link_要素をサポートします。
ベースモジュール-ドキュメント内の相対URIが解決されるベースURIを定義するために使用できる要素を定義します。 このモジュールに含まれる要素と属性は-_base_です。
*Ruby Annotation Module* -XHTMLは、RUBYで定義されているRuby Annotationモジュールも使用し、ruby、rbc、rtc、rb、rt、rpをサポートしています。
XHTML 1.0 Strictからの変更点
このセクションでは、XHTML 1.1とXHTML 1.0 Strictの違いについて説明します。 XHTML 1.1は、HTML 4とXHTML 1.0の両方からの脱却を表しています。
- 最も重要なのは、廃止された機能の削除です。
- 変更は次のように要約することができます-
- すべての要素で、_xml:lang_属性に代わってlang属性が削除されました。
- <a>要素と<map>要素では、id属性を優先してname属性が削除されました。
- _ruby_要素のコレクションが追加されました。