W3Cは2日(米国時間)、Canonical XMLの最新版となるCanonical XML Version 1.1をW3C Recommendationとして発表した。Canonical XMLはXMLドキュメントの同一性比較を実現するために規定された規約。Canonical XMLを使ってXMLドキュメントの正規化を実施することで、与えられたXMLドキュメントが同一のものであるか違うものであるかを比較するために利用する。

XMLはHTMLと比較すると記述方法が厳密に既定され簡潔であるうえ論理的に一貫性があるが、属性の順序や改行、空白スペースなどを比較的自由に使えるため、論理的には同じ記述であったとしても、プログラム的に同一のドキュメントであることを比較するのが難しいところがある。Canonical XMLはXMLドキュメントの正規表現を既定するもので、Canonical XMLに沿った記述に変換することでXMLドキュメントの同一性を比較できるようになる。

Canonical XMLを使ってどういった正規化が実施できるかは、Canonical XML Version 1.1の3 Examples of XML Canonicalizationにまとめられているサンプルをみるとわかりやすい。入力されるXMLドキュメントがどのように変換されるかがよくわかる。

Canonical XML 1.1はCanonical XML 1.0の改訂バージョン。1.0で明らかになったXML名前空間における属性の継承に関係した問題を解決することを目指して作業がおこなわれた。対象としている規約やXML 1.0を対象とし、XPath 1.0データモデルを使って規定されている。XML 1.1向けには策定されていないので、XML 1.1を使う場合には適用できない。