[1] [DFN[[RUBYB[厳密適合 [ABBR[[[XHTML]]] [Extensible Hypertext Markup Language]] 文書] @en[Strictly Conforming [ABBR[[[XHTML]]] [Extensible Hypertext Markup Language]] Document]]]]とは、
狭義的に [ABBR[[[XHTML]]] [Extensible Hypertext Markup Language]]
仕様に[[適合]]する
[ABBR[[[XHTML]]] [Extensible Hypertext Markup Language]]
[[文書]]のことです。
[6] [Q[厳密]]適合があれば、[Q[厳密]]でない適合もあります。
厳密適合はある [ABBR[[[XHTML]]] [Extensible Hypertext Markup Language]]
仕様を単独で使用する場合を想定しているようです。
* 厳密適合 XHTML 1.0 文書
[2]
仕様書:
- [[XHTML 1.0]]
-- [CSECTION@en[2.1. Terminology]]
-- [CSECTION@en[3.1.1. Strictly Conforming Documents]]
[7]
[DFN[厳密適合文書]]は、
- [[XHTML 1.0]]
仕様書で[RUBYB[必須] @en[mandatory]]とされた[[機能]]だけを要求する [INS[[[XML]]]] [[文書]]。
-- [[XHTML 1.0]] の3つの [[DTD]] のいずれかで[DEL[妥当である]][INS[表現された[[制約]]を満たす]]。
-- [[根要素]]が [DEL[[CODE(HTML)@en[<[CODE(HTMLe)[[[html]]]]>]]]] [INS[[CODE(HTMLe)@en[[[html]]]]]]である。
-- [[根要素]]が [CODE(URI)@en[[[http://www.w3.org/1999/xhtml]]]]
の [CODE(XML)[[[xmlns]]]] 宣言を持っている。
-- [[根要素]]の[[開始タグ]]の前に[[文書型宣言]]があって、
[[公開識別子]]が [[XHTML 1.0]] の3つの [[DTD]] の [[FPI]]
のいずれかである。[WEAK[[[システム識別子]]は任意。]]
-- [INS[[[内部部分集合]]は[[外部部分集合]]で定義された[[引数実体]]を上書きしない。]]
- [[XML宣言]]は必須ではないが、強く推奨する。
;; 挿入と削除は [ABBR@en[FE] @ja[初版]] と [ABBR@en[SE] @ja[第2版]]
の違いを表します。
[11]
あまり明確ではありませんが、[[根要素]]に関する項と [[DTD]]
に関する項より、 [[XHTML]]
[[名前空間]]に[[名前空間接頭辞]]を使っては''いけない''と思われます。
[10]
なお、 [[XHTML 1.0]] は厳密適合以外の適合水準を設けていません。
;; [[XML名前空間]]を使って他の語彙と併用することを認めています
[SRC@en[XHTML 1.0 3.1.2]] が、特に規準は述べられていません。
[16]
[[XHTML 1.0]] では、[Q@en[[[must]]]]、[Q@en[[[should]]]]、[Q[[[未規定]]]]の各[[用語]]の定義でも[[厳密適合XHTML文書]]に対する制約が示されています。
([[名無しさん]])
[[#comment]]
* 厳密適合 XHTML 1.1 文書
[3]
仕様書:
- [[XHTML 1.1]]
-- [CSECTION@en[2.1.1. Strictly Conforming Documents]]
[8]
[DFN[厳密適合文書]]は、
- [[XHTML 1.1]]
仕様書で[RUBYB[必須] @en[mandatory]]とされた[[機能]]だけを要求する[[文書]]。
-- [[XHTML 1.1]] [[DTD]] で表現された[[制約]]を満たす。
-- [[根要素]]が [CODE(HTML)@en[<[CODE(HTMLe)[[[html]]]]>]] である。
-- [[根要素]]が [CODE(URI)@en[[[http://www.w3.org/1999/xhtml]]]]
の [CODE(XML)[[[xmlns]]]] 宣言を持っている。
-- [[根要素]]の[[開始タグ]]の前に[[文書型宣言]]があって、
[[公開識別子]]が [[XHTML 1.1]] [[DTD]] の [[FPI]]
である。[WEAK[[[システム識別子]]は任意。]]
- [[XML宣言]]は必須ではないが、強く推奨する。
;;
[9] [[XHTML 1.1]] [ABBR@en[FE] @ja[初版]] は [[XHTML 1.0]]
の [ABBR@en[FE] @ja[初版]] と [ABBR@en[SE] @ja[第2版]]
の間に出版されました。 [[XHTML 1.0]] [ABBR@en[SE] @ja[第2版]]
で追加された[[引数実体]]に関する制約が [[XHTML 1.1]]
[ABBR@en[SE] @ja[第2版]] で追加される可能性があります。
[12]
なお、 [[XHTML 1.1]] で規定されている適合水準は厳密適合だけです。
* 厳密適合 XHTML+RDFa (1.0) 文書
** 仕様書
[REFS[
- [19]
[CITE@en[RDFa in XHTML: Syntax and Processing]] ([TIME[2008-10-14 00:17:32 +09:00]] 版)
]REFS]
** 定義
[28]
>a document that requires only the facilities described as mandatory in this specification
> 本仕様書で強制と説明されている機能だけを必要とする文書
;; [30] 具体的に何のことを指すのかは明らかになっていません。
** 必須の要件
-[20] [[XHTML+RDFa]] [[文書型定義]]の[[スキーマ]]で表現された制約に[[適合]]しなければ[['''なりません''']]
-[21] [[根要素]]の[[局所部分]]は [CODE(HTMLe)@en[[[html]]]] でなければ[['''なりません''']]
-[22] [[根要素]]の[[開始タグ]]に [[XHTML名前空間]]の[[既定名前空間宣言]]を明示しなければ[['''なりません''']]
-[25] [[文字符号化]]が [[UTF-8]] や [[UTF-16]] でなく、[[上位層プロトコル]]で明示されていない場合、
[[XML宣言]]を含めなければ[['''なりません''']]
** 推奨の要件
- [23] [CODE(HTMLe)@en[[[html]]]] [[要素]]の [CODE(HTMLa)@en[[[version]]]]
[[属性]]の値は [CODE(HTML)@en[[[XHTML+RDFa 1.0]]]] である[['''べきです''']]
- [24] [[XML宣言]]を含める[['''べきです''']]
-[26] [CODE(MIME)@en[[[application/xhtml+xml]]]] を使う[['''べきです''']]
** メモ
[27]
- [[CURIE]] のための[[名前空間宣言]]が必要で [[DTD妥当]]にするのが面倒なためか、
[[文書型宣言]]は[[必須]]になっていません
- 代わりに [CODE(HTMLa)@en[[[version]]]] [[属性値]]が規定されていますが、
なぜか[[必須]]になっていません
- 相変わらず [[XML宣言]]に関する [[layering violation]] な規定が混じっていますが、
前の版の [[XHTML]] より段々厳しくなっています
* 厳密適合 XHTML+RDFa (1.1) 文書
** 仕様書
[REFS[
- [29] [CITE[XHTML+RDFa 1.1]] ([TIME[2012-06-05 02:29:56 +09:00]] 版)
]REFS]
** 定義
[31]
>a document that requires only the facilities described as mandatory in this specification
> 本仕様書で強制と説明されている機能だけを必要とする文書
;; [32] 具体的に何のことを指すのかは明らかになっていません。
** 必須の要件
-[33] [[XML Schema]] と [[DTD]] で表現された制約に[[適合]]しなければ[['''なりません''']]
-- [37] しかし[[文書型宣言]]や [CODE(XMLa)@en[[[schemaLocation]]]] は必須とはなっていません。
-[34] [[根要素]]の[[局所部分]]は [CODE(HTMLe)@en[[[html]]]] でなければ[['''なりません''']]
-- [38] しかしなぜか[[名前空間接頭辞]]無しであることは要求されていません。
-[35] [[根要素]]の[[開始タグ]]に [[XHTML名前空間]]の[[既定名前空間宣言]]を明示しなければ[['''なりません''']]
-[36] [[文字符号化]]が [[UTF-8]] や [[UTF-16]] でなく、[[上位層プロトコル]]で明示されていない場合、
[[XML宣言]]を含めなければ[['''なりません''']]
** 推奨の要件
- [42] [[XML宣言]]を含める[['''べきです''']]
-[43] [CODE(MIME)@en[[[application/xhtml+xml]]]] を使う[['''べきです''']]
** その他
- [41] [CODE(XMLa)@en[[[schemaLocation]]]] [[属性]]によって [CODE(URI)[[[http://www.w3.org/1999/xhtml]]]]
を [CODE(URI)[[[http://www.w3.org/MarkUp/SCHEMA/xhtml-rdfa-2.xs]]]] に関連付けして[['''構いません''']]。
- [40] [CODE(HTMLe)@en[[[html]]]] [[要素]]の [CODE(HTMLa)@en[[[version]]]]
[[属性]]の値は [CODE(HTML)@en[[[XHTML+RDFa 1.1]]]] で含めて[['''構いません''']]。
-- [39] 1.0 とは違って推奨ではなくなっています。
* その他の XHTML 1 系仕様における厳密適合文書
[4] [[XHTML m12n]] は完成した文書型ではないので、[Q[厳密適合]]という概念はありません。
[[XHTML Basic]] (1.0) と [[XHTML-Print]] は、[Q[厳密適合]]という適合水準はありませんが、
通常の適合性要件がほぼ XHTML 1.0・1.1 の厳密適合要件と一致しています。
[[#comment]]
* 厳密適合 XHTML 2.0 文書
@@
[14]
[[XHTML 2.0]] は本項執筆の時点で原案段階であり、
ここでの説明はそれに基づいています。
[5]
仕様書:
- [[XHTML 2.0]]
-- [CITE[3.1.1. Strictly Conforming Documents]]
[13]
XHTML 1.0・1.1 とほぼ同じ内容です。
[[#comment]]
* メモ
[15]
[[厳密DTD]] と[[移行用DTD]] の別と、[[厳密適合]]は[[直交]]する概念です。[[移行用DTD]]に[[厳密適合]]する[[文書]]もあり得ます。
([[名無しさん]])
[17]
[CITE[d:id:quaa]] ([CODE[2007-05-11 03:30:36 +09:00]] 版)
([[名無しさん]] [WEAK[2007-05-11 00:40:39 +00:00]])
[18]
>>17 厳密適合文書でなくなるから使わないというのはなんとも後ろ向きな。
厳密適合文書だと何がうれしいの?
([[名無しさん]] [WEAK[2007-05-11 00:41:43 +00:00]])