* 仕様書

[REFS[
- [1] [CITE@en-US-x-hixie[HTML Standard]] ([TIME[2017-09-14 20:17:55 +09:00]]) <https://html.spec.whatwg.org/#conformance-classes>
]REFS]

* 要件

[2] [DFN[[RUBYB[適合文書]@en[conforming document]]]]は、
[[文書]]に対する[RUBYB[適合条件]@en[conformance criteria]]をすべて[RUBYB[満たす]@en[comply]]ものです。
[SRC[>>1]]

[3] [[文書]]の[RUBYB[適合要件]@en[conformance requirement]]の一部は、
[[仕様書]]では[[可読性]]のため、
[[著者]]に対する適合要件として記述される場合があります。
それらもまた、暗示的に文書の要件を構成するものです。 [SRC[>>1]]

[7] 具体的な要件は、[[文書]]の各種構成要素の項を参照。

[EG[
[8] 例えば[[要素]]の[[内容][要素の内容]]に関する制約は、[[要素の内容の適合性]]を参照。
]EG]

[10] [[authoring tool]] は、一部の要件を満たさない文書を出力することが許されています。
[SEE[ [[authoring tool]] ]]

* 適合性の検査

[6] [[文書の適合性]]を検査する[[利用者エージェント]]として[[適合性検査器]]
([[バリデーター]]) があります。[[適合性検査器]]は、
[[仕様書]]に規定される[[文書]]の適合要件を[[文書]]が満たしているか否かを検査するものです。
[SEE[ [[適合性検査器]] ]]

[9] [[適合性検査器]]による検査は、技術的限界から、行わなくて良い (行えない)
要件があります。

[11] 適合と不適合の中間ともいえる [[obsolete but conforming]] なる要件がいくつかあります。

* 処理要件との関係

[4] かつては、[[標準化]]の世界では、
[[適合]]する[[文書]]の条件を[[仕様書]]において定め、
[[実装]]は[[適合]]する[[文書]]を正しく処理することが求められる、
という立て付けが一般的でした。
しかしこの態度は [[Web]] において[[相互運用性]]の大きな混乱を招き、
[[Web標準]]と実世界が著しく乖離することになりました。

[5] [[HTML5]] [WEAK[(現在の [CITE[HTML Standard]])]] はその状況の改善のため、
[[文書の適合性]]と[[利用者エージェント]]の処理の要件を完全に分離しました。
[[HTML5]] 以後の [[Web標準]]は、
[[入力]]の[[文書]]が[[適合]]するか否かに関わらず、
[[仕様書]]が任意の[[入力]]に対して規定した処理方法に[[実装]]が従うことを求めています。