<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> <dfn><rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">適合性検査器<rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">conformance checker</rt></rubyb></dfn>は、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">適合性</anchor>を検査する<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ソフトウェア部品</anchor>です。</p><section><h1>仕様書</h1><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> <cite xml:lang="en-US-x-hixie">HTML Standard</cite> (<time>2017-09-14 20:17:55 +09:00</time>) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://html.spec.whatwg.org/#conformance-classes">https://html.spec.whatwg.org/#conformance-classes</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> <cite xml:lang="en-US">Accessible Rich Internet Applications (WAI-ARIA) 1.1</cite> (<time>2017-09-14 21:02:18 +09:00</time>) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://w3c.github.io/aria/aria/aria.html#conformance_checkers">https://w3c.github.io/aria/aria/aria.html#conformance_checkers</anchor-external></li></ul></refs></section><section><h1>意味</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">適合性検査器</anchor>は、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">仕様書</anchor>に示された<rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">適合性基準<rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">conformance criteria</rt></rubyb>について<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書</anchor>が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">適合</anchor>するか否かを<rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">検証<rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">verify</rt></rubyb>しなければ<MUST xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">なりません</MUST>
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;5</anchor-internal></src>。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書の適合性</anchor>も参照。</comment-p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> <cite>HTML Standard</cite> の要件に従う<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">適合性検査器</anchor>を、
<dfn>HTML validator</dfn> と呼ぶことができます。 <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;5</anchor-internal></src></p></section><section><h1>処理</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">自動化<rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">automate</rt></rubyb>された<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">適合性検査器</anchor>は、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">著者</anchor>の<rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">意図<rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">intent</rt></rubyb>の解釈を必要とする誤りの検出を<rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">しなくて構いません<rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">exempt</rt></rubyb>。</p><example xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><p xmlns="http://www.w3.org/1999/xhtml"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> 例えば <code class="HTMLe" xml:lang="en">blockquote</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容</anchor>が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">引用</anchor>でなければ<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">不適合</anchor>です。
しかし<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">人間</anchor>の判断を介さない<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">適合性検査器</anchor>は、
<code class="HTMLe" xml:lang="en">blockquote</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容</anchor>が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">引用</anchor>のみであるかを検査しなくて構いません。
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;5</anchor-internal></src></p></example><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> これは<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">authoring tool</anchor>に求められるのと同程度です。</comment-p><hr></hr><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">適合性検査器</anchor>は、
入力の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書</anchor>を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">閲覧文脈</anchor>なし
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">構文解析器</anchor>の<f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">scripting flag</f>が無効)
で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">構文解析</anchor>したときに適合するか否かを検査しなければ<MUST xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">なりません</MUST> <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;5</anchor-internal></src>。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">適合性検査器</anchor>は、
入力の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書</anchor>を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">スクリプト</anchor>を実行する<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">閲覧文脈</anchor>で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">構文解析</anchor>したときに<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">適合</anchor>するか否かや、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">スクリプト</anchor>によって (実行中の一時的な状態を除き) <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">不適合</anchor>な状態とならないことを検査する<SHOULD xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">べき</SHOULD>です。 <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;5</anchor-internal></src></p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> これが <SHOULD xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SHOULD</SHOULD> であって <MUST xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MUST</MUST> でないのは、
不可能であるから (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">停止性問題</anchor>) です。 <src><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;5</anchor-internal></src></comment-p><hr></hr><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[15]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ARIA</anchor> の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">適合性検査器</anchor>は、
すべての要件を検査する<SHOULD xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">べき</SHOULD>です。 <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;14</anchor-internal></src></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[16]</anchor-end> その際、 <MUST xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MUST</MUST> 要件への違反は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">誤り</anchor>としなければ<MUST xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ならず</MUST>、
<SHOULD xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SHOULD</SHOULD> 要件への違反は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">警告</anchor>しなければ<MUST xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">なりません</MUST>。 <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;14</anchor-internal></src></p></section><section><h1>歴史</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Web</anchor> で初めて<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">適合性検査器</anchor>なる用語を導入したのは <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Web Applications 1.0</anchor>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML5</anchor>) でした。 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML5</anchor> はそれまでの「<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SGML応用</anchor>である <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML</anchor>」
という虚構からの離脱を試みたため、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DTD</anchor> と深く結びついた概念である
「<rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><anchor>妥当性検証</anchor><rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">validation</rt></rubyb>」や「<rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">妥当性検証器<rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">validator</rt></rubyb>」
に代わる用語が必要になったようです。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end>
<cite xml:lang="en">Re: Formal definition of HTML5 (was Re: Version information)</cite> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Ian Hickson</anchor> 著, <time>2007-04-17 18:30:15 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://lists.w3.org/Archives/Public/public-html/2007Apr/1021.html">http://lists.w3.org/Archives/Public/public-html/2007Apr/1021.html</anchor-external></p><blockquote><p>We want to encourage an ecosystem where conformance checkers compete over 
how many errors they can test for, in the same way that browsers compete 
in how many test cases they pass, instead of having an ecosystem like 
HTML4's, where in the YEARS of HTML4 being the latest and greatest, no 
serious usable conformance checker was made that used more than the 
official schema.</p></blockquote><p>いってることはごもっともですが、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">AHL</anchor> 
の方が <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DTD</anchor> より有用な <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML 4</anchor> チェッカーではありませんでしたかね?</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">Ian が <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">AHL</anchor> を知っているのかはわかりませんが。</comment-p><p>(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor> <weak xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">2007-04-23 10:24:25 +00:00</weak>)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> <cite xml:lang="en">Remove obsolete permitted DOCTYPEs</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">sideshowbarker</anchor>著, <time>2016-11-18 00:22:24 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/whatwg/html/commit/31c20af4913f997926b3c806e218d3d16a2944f2">https://github.com/whatwg/html/commit/31c20af4913f997926b3c806e218d3d16a2944f2</anchor-external></p></section></body></html>