RELAX NG

コンピュータ

Relax NG

りらくしんぐ

XMLスキーマ言語の1つ。

XML Schema に対抗して作られ、2001年に OASIS、2003年に ISO で規格化。

RELAX Core (2000年にJISで規格化) と TREX (2001年に James Clark 氏が公開)を統合したシンプルでかつ強力な次世代スキーマ言語

ツリーオートマトン理論を基礎にした妥当性検証に特化したスキーマ言語で、データタイプの検証には XML Schema Part 2 : Datatypes と互換のライブラリをサポートする。

歴史

W3CXML Schema ワーキンググループで XML Schema の肥大化や標準化作業の遅れに危機感をつのらせた村田真氏は独自に RELAX Core を開発。同時期に同様の動機で James Clark 氏が TREX を開発。二つは技術的な類似点が多く別々に開発を進めるよりも統合して XML Schema に対抗した方が良いということになり、Jon Bosak 氏の勧めもあって二つが統合され RELAX NG が開発された。

現状

オープンソースの実装が数多く公開されている(Jing, MSV, libxml2 等)。最近ではベンダーの対応も見られるようになった。大手ベンダーの支持は少ないが Sun Microsystems は MSV, JAXB RI で RELAX NG をサポートしている。