[1] 既存の[[文書型]]を修正して、 [[XHTML m12n]] の[[モジュール]]や他の[[モジュール]]を両方使った新しい[[文書型]]を定義することができますが、 このような[[文書型]]は一定の条件 (>>3) を満たせば [DFN[XHTML [RUBYB[ホスト言語適合][Host Language Conforming]]]]であるといいます。 [2] 仕様書: - [[XHTML m12n]] --[CSECTION[3.1. XHTML Host Language Document Type Conformance]] [3] [[XHTML m12n]] の[[モジュール]]と他の[[モジュール]]を両方使った[[文書型]]が適合 [[XHTML]] ホスト言語文書型であるための条件 [SRC[XHTML m12n 3.1]]: - [[文書型]]が [[W3C]] 定義の実装方法の1つを使って定義されていること。 -- [[XHTML m12n]] [[FE]] の時点では [[XML DTD]] ([[XML 1.0]]) だけですが、直ぐに [[XML Schema]] も使えるようになると予告されています。 -- 残りの条件で [Q[[[DTD]]]] と書いた時は他の実装方法も含みます。 - [[文書型]]を定義する [[DTD]] は命名規則 [WEAK[([[XHTML//公開識別子]]を参照。)]] に従い、 [[公開文記述]]の最初の[[字句]]に [CODE[XHTML]] という[[文字列]]を使った固有識別子を持たなければなりません。 - [[文書型]]を定義する [[DTD]] は、最低でも [[XHTML m12n]] の[[構造]]モジュール、[[文章]]モジュール、 [[並び]]モジュールを取込まなければなりません。 - [[W3C]] が定義した[[モジュール]]を取込む時は、 [[文書型]]の[[内容模型]]において、すべての[[要素]]、 [[属性]]、[[属性]]の型 (必須の列挙値並びも含みます。)、 必須の[[最小内容模型]]を取込まなければなりません (必要なら拡張して構いません)。[[内容模型]]を拡張する時は、 元の[[内容模型]]で必須なすべての[[要素]]と[[属性]] (とその型や必須の列挙値並び) を必須のままとしなければなりません。 - [[文書型]]を定義する [[DTD]] は追加の[[要素]]や[[属性]]を定義しても構いませんが、 それは自身の [[XML名前空間]]で定義しなければなりません。 [[#comment]] * 他との関係 [3] 定義上、 [[XHTML Basic]] や [[XHTML 1.1]] など [[XHTML m12n]] の[[モジュール]]だけを使ったものは XHTML ホスト言語文書型ではありません。 [4] 似たものに [[XHTML統合集合文書型]]がありますが、 こちらは XHTML ホスト言語文書型よりも制限が緩いものになっています。 XHTML の構造をそのまま採用するのが XHTML ホスト言語文書型で、 XHTML の構造を必ずしも採用しないのが XHTML 統合集合文書型です。 [5] [[XHTMLホスト言語文書型]]の[[妥当]]な[[文書実現値]]が [[XHTML族文書]]です。 [[#comment]] * メモ