この記事と関連の高い記事
なし
XMLは、ベンダーに依存しない形でシステム間の相互運用性を保証するという目的の下、標準規格として制定された。
ただし、標準規格になったとしても、それだけで「標準」として使えるかというと必ずしもそうとは限らない。標準規格に曖昧な部分があると、実装間で差が出てしまうことがある。このために適合性テストの実施が必要となる。適合性テスト(Conformance Test)は、標準規格に準拠した製品を作成するベンダーにはおなじみのものである。「適合性」つまり「標準規格に適合しているか」をテストするのである。
製品を世に出すにあたってこれは当然のことであるが、テストケースの内容が異なると結果も異なるし、テストケースの数もテストの網羅性に影響を与える。そのような訳で、ある標準規格を策定した団体、あるいはそれを推進する団体がテストケースも提供し、それをクリアしたものを標準準拠製品と呼んでよいとしている場合がある。このような一連のテストケースをテストスイート(Test Suite:テスト集)と呼ぶ。XML規格の適合性に関しては、W3C自身がテストスイートを提供している(http://www.w3.org/XML/Test/)。
実装者が、標準規格を読んで実装するだけでは、解釈の違い・見落とし・バグなどの原因によって必ずしも正しい動きをする訳ではない。所詮人の行う仕事なのである。さらに、標準規格も人間が書いたものであって、規格自体にエラーが紛れ込んでいる場合もあるし、規格の文章が分かりにくく、実装者が迷ってしまうこともある。したがって、規格制定者自体も実装者に、正しく意図が伝わるような分かりやすい規格を作る必要がある。これはすなわち標準規格と実装者間のコミュニケーションの問題である。 実際、世の中に出ているXML製品は多いが、微妙なところで処理結果の違いが出ることがある。比較的新しい技術の場合、様々な製品の質が安定し一様なものとなるまでには時間がかかる。たとえばXML Schemaはそもそも規格が難解なだけあって、当初製品間での対応にばらつきがあったし、今でもあまり使われていない細かい部分になると解釈の違いが原因とおぼしき差が出てくる。そこで、テストスイートによる検証が必要となるのである。
仮に規格内容が明瞭であっても尚、実装による違いはどうしても出てしまう。これは、実装者間のコミュニケーションの問題である。 この問題を解決する方策として相互接続テストというものを行うことがある。標準規格に準拠した製品間で相互にデータをやり取りして、問題なく処理されるかどうかを検証するのである。XMLも活躍する電子商取引においては、異なる企業間でのデータのやり取りを行う必要があるので、特にこの相互接続テストには大きな意味がある。
さて、ITから目を転じて私たちが住んでいる地域社会でのコミュニケーションについて考えてみよう。世の中の社会活動はすべてコミュニケーションによって成り立っている。社会生活には交通法規など様々な約束事があるが、それを正しく理解し遵守することによって初めてそれが「運用」される。ある人が意図せずあるいは故意にそれから逸脱するときに事故が起きる。法律は文面として存在していても、その意図を正しく伝える作業(教育)が必要であり、さらに一人一人の理解が一様でなければその法律は正しく機能しない。法律が存在することと共に、住民相互の理解も求められる。法律の「運用」には、共通の約束事とそれに対する正しい理解、そしてお互いにそれを守ろうという姿勢が必要なのである。社会生活においては地域内での住民間のコミュニケーションによって住みやすい世の中が実現するのである。したがって、仮にコミュニケーションのギャップがあれば、それを行政あるいは、地域コミュニティの中で解消する努力が払われなければならない。
ITの世界もしかり、標準規格の運用を考えたとき、規格作成者と実装者の間のコミュニケーション、実装者と実装者の間のコミュニケーションなど、標準規格を浸透させるためにはコミュニケーションギャップ解消のため多くの労力を要する。標準規格が標榜する「相互運用性」の実現には、規格策定の作業だけでなく、現実世界での利用を見据えた地道な作業が必要なのである。
(Y.O.)
なし