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の持つ機能をすべて包含しています。