2001年12月3日にOASISよりXMLスキーマ言語RELAX NG1.0が発表されました。
RELAX NGはJames Clark氏(世界のXML界の重鎮)と村田 真氏(日本XML界の重鎮)の
共同作業により産み出された世界で一番強力なXMLスキーマ言語です。
0.RELAX NGを支持する理由
RELAX NGを芳醇なワインとするなら、XML Schemaは闇鍋です。これが理由です。1.RELAX NG登場の経緯
村田真氏が2000年秋にRELAXを発表、2001年春にJames Clark氏がTREXを発表、両氏
がそれぞれ自分の作成したスキーマ記述言語を軸とした展開を図るように思われた矢先、両氏
の間で会合が行われ、OASISの技術委員会にてRELAX COREとTREXの融合化の作業が行
われることとなり、RELAX NG1.0の発表へと結実しました。
この背景にはW3Cのお墨付きを持ちながら欠点だらけのXMLスキーマ記述言語であるXML Schema
の存在があります。
RELAXはそれ自体がモジュール化されているため、状況に応じた使い分けが可能です。3.RELAX NGの特徴
1)文法及び構文
スキーマの基本的な文法(構文)等を定義しています。
RELAX NG(あるいはRELAX CORE)がここを担当します。
2)名前空間
名前空間の取り扱いに関する構文を定義しています。
RELAX NAMESPACEがここを担当します。
3)データタイプ定義
データタイプの取り扱いに関する拡張を定義します。
RELAX DATAがここを担当する予定です(仕様策定中?)。
1)RELAX NGはRELAX COREから生け垣オートマトン理論という数学的理論体系を、
TREXから柔軟な構文を受け継いでいます。
2)RELAX NGはRELAX COREの持つ機能をすべて包含しています。