XHTML 1.0

XHTML1 (Web)

[8] XHTML 1 は、 HTML 4XML に移植した基本語彙と、いくらかの拡張語彙を含む、 文書マーク付け言語 (の語彙) です。

[31] 90年代末から00年代半ば頃まで、 HTML4 と並んで Web で広く用いられていました。 (ただし XML としての本来の形ではなく、 HTML4 と混用された不完全な形で使われるのがほとんどすべてでした。 詳しくは XHTML を参照。)

[17] W3CXHTML 1 関連勧告としては、 XHTML 1.0XHTML m12n 1.0XHTML Basic 1.0XHTML 1.1ruby モジュールがありました。 その他に、 W3C で開発中のプロファイルモジュールW3C 以外が開発したプロファイルモジュール等がありました。

[16] XHTML 1 という言葉は XHTML 1.0 を指すこともありますが、ここでは、 XHTML 1.0 を含む、 XHTML 1.x 世代一般を指します。

[18] XHTML 1.0 に対応した DOM として、 DOM水準2HTML モジュール (HTML DOM) が W3C 勧告となっていました。

代替

[32] 現在は HTML を普通に使うべきと考えられています。

XHTML 1 関連仕様

[20] モジュール:

XHTML m12n 1.0
XHTML 1.0 に含まれる機能モジュール化した仕様です。 抽象モジュール定義とDTDモジュール実装の記述方法が含まれています。
XHTML m12n 1.1
XHTML m12n 1.0 に加え、 XML Schemaモジュール実装の記述方法が含まれています。 独立の仕様として準備され、後に XHTML m12n 1.0 と統合されて第2版として WD が出版されていましたが、 2006年に XHTML m12n 1.1 という名前になって WD として出版されています。
ruby モジュール
ルビのための ruby 要素型等を含むモジュールです。 当初は HTML 4 に対する追加と XHTML 1 に対する追加の両方が考えられていましたが、 勧告では XHTML に対する追加となっています。
XHTML 事象モジュール
内在事象属性に代わるモジュールとして 2000年に WD が出版されていました。 現在は XML事象という XHTML とは別の仕様になっています。
XHTML role モジュール
要素役割を表す role 属性を含むモジュールです。 XHTML 2.0 の一部として開発された属性を、 XHTML 1 で使うために独立仕様としたもので、 2006年に WD が出版されています。
Web Forms 2.0
フォーム機能を拡張する仕様で、 HTML 4XHTML 1HTML DOM に対する追加・変更となっています。 WHATWG によって開発され、2005年に W3C提出されています。

[19] 文書型・プロファイル:

XHTML 1.0
HTML 4XML に移植した仕様です。 1998年頃から開発が始まり、2000年に第1版勧告、 2002年に第2版勧告が出版されています。
XHTML Basic 1.0
携帯電話のような低機能な機器向けの簡略化された仕様です。 XHTML 1.1部分集合になっています。
XHTML Basic 1.1
XHTML Basic 1.0 に、 XHTML m12nXForms からいくつかの機能を追加したものです。 2006年に WD が出版されています。
XHTML 1.1
XHTML 1.0厳密DTDruby モジュールを加えたものにほぼ相当する文書型です。

[30] その他次の文書型が提案されていましたが、いずれも限定された範囲でのみ使われたもので、 広く普及はしませんでした。

WICD

HTML と XHTML の非互換性

[9] HTML 4XHTML 1 では、構文が SGML のある具象構文XML かという違いがありますが、その他にもいくつかの非互換性があり、 正しい HTML 4 文書の構文を XML にしても正しい XHTML 1 文書にできなかったり、その逆ができなかったりすることもあります。

[15] Web Applications 1.0 における HTML 5XHTML 5 の関係については、 XHTML 5 の項を参照。
TBD

XHTML 1 系各仕様間の主要な差異

[4] XHTML 1.0 FE Strict では属性無しの base 要素が可能でしたが、 SE Strict では href 属性が必須です。

[1] XHTML 1.1 1e はほぼ XHTML 1.0 Strict 相当です。 それに加えて ruby も使えます。

[5] 他にも XHTML 1.1 1e では pre 要素内に ins, del, input などが置けなくなる変更があるみたいです。モジュールつなぐときのミスじゃないかと思いたくもなるんですけど実際はどうなんでしょう。

[6] 確かに XHTML 1.1 1e ≠ m12n 1.0 ≠ XHTML 1.0 Strict なのですから、 細かい差異があるのは別に良いんですけど、変更点リストには載ってないし:-<

[7] XHTML 1.1 1e では noscript 要素直下に Inline 要素を置けません。 (noscript 要素は Inline 要素内にも置けるのに。)

[21] XHTML m12n ベースの XHTML 1.1 などでは class 属性値NMTOKENS なので、 XHTML 1.0 とは異なり空文字列ではいけません。

[22] XHTML 1.0: The Extensible HyperText Markup Language <http://www.w3.org/TR/xhtml1>

[23] XHTML 1.0 は、 W3C から勧告された最初の XHTML1 です。 HTML4 をほとんどそのまま XML に移植したもので、仕様書も簡潔で詳細は HTML 4 を参照しています。

[24] HTML 4 同様に、新規の文書に採用するべき Strict, 旧来の文書の移植 (移行) 用の Transitional, フレームのための Frameset の3つの版が規定されています。

[25] XHTML 1.0 は HTML 4 同様「一枚岩」の規格ですが、これをバラバラに分解して他の XML を採用した規格と柔軟に組合せられるようにするための XHTMLm12n や、 m12n を基に 1.0 Strict を再構成した XHTML1.1 が続いて制定されました。 (その後に XHTML 1.0 の仕様の間違いを修正した SE が出ています。)

[26] Experimental XHTML 1.0 Appendix C Validator <http://qa-dev.w3.org/~bjoern/appendix-c/validator/>

[27] Re: XHTML 1.0, section C14 from Shane McCarron on 2006-11-21 (www-html-editor@w3.org from October to December 2006) <http://lists.w3.org/Archives/Public/www-html-editor/2006OctDec/0027> (名無しさん 2006-11-22 14:37:17 +00:00)

[28] d:id:quaa (2007-05-23 21:43:18 +09:00 版) <http://d.hatena.ne.jp/quaa/20070523#p2> (名無しさん 2007-05-24 15:39:43 +00:00)

[29] 厳密適合XHTML 1.0文書であるためには xmlns 宣言根要素に含まれていなければならないと書いてあるのですけど、 根要素開始タグに含まれていないとは書かれていないので、DTD既定値として記述されている時点で条件が満たされているのですかね? (名無しさん 2007-05-24 15:44:09 +00:00)

[33] CFC: Make previous versions of HTML and XHTML obsoleteCFC: Make previous versions of HTML and XHTML obsolete · Issue #86 · w3c/WebPlatformWG () <https://github.com/w3c/WebPlatformWG/issues/86>

[34] Proposal to Republish Previous Versions of HTML and XHTML as Obsolete Recommendations (Wide Review until 2017-09-07) (Xueyuan著, ) <https://lists.w3.org/Archives/Public/public-review-announce/2017Aug/0004.html>