Regular Language description for XML

RELAX (Regular Language description for XML) について



RELAXは、XML文書の構造を定義するためのスキーマ言語の一つです。W3C XML Schemaと比較して仕様が簡潔であることが特徴で、XML文書の検証に利用されます。

RELAXの構成



RELAXは、以下の2つの仕様から構成されています。

1. RELAX Core: 単一の名前空間における要素と属性を扱うための仕様です。W3C XML Schemaで規定された豊富なデータ型を利用できます。
2. RELAX Namespace: 複数の名前空間を使用するXML文書を扱うための仕様です。

RELAXの歴史



RELAX Coreは、2000年6月にJIS TR X 0029:2000として発行され、2001年8月にはISO/IEC Technical Report 22250-1として国際規格にも承認されました。RELAX Namespaceは、2001年7月にJIS TR X 0044:2001として公表されています。

RELAXの開発とほぼ同時期に、ジェームズ・クラークによってTREX (Tree Regular Expressions for XML) という別のスキーマ言語も開発されていました。その後、クラークと村田真らは、TREXとRELAX Coreを統合し、RELAX NGという新しいスキーマ言語を設計しました。

RELAX Core のスキーマ例



例えば、書籍(book)の情報を記述するXML文書を考えてみましょう。書籍は、1つ以上のページ(page)で構成され、各ページはテキスト(text)のみを含みます。このXML文書の構造をRELAX Coreで記述すると以下のようになります。

xml
XML文書の例 >

テキスト1
テキスト2



RELAX Core でのスキーマ記述例:

xml









ファイル拡張子



RELAXで記述されたスキーマファイルには、慣習的に".rlx"という拡張子が使用されます。

RELAXの実装



RELAXのスキーマを検証するための実装としては、以下のようなものが利用可能です。

Sun Multi-Schema Validator (MSV): RELAX Core、RELAX Namespace、TREXRELAX NG、DTD、W3C XML Schemaなど、多様なスキーマ言語に対応した検証ツールです。オープンソースで無償で利用可能です。
DTD2RELAX: 従来のDTDスキーマをRELAX Coreのスキーマに変換するソフトウェアです。


関連事項



RELAXは、以下の分野と関連があります。

コンピュータ言語
データ記述言語
仕様記述言語
スキーマ言語

外部リンク



RELAX オフィシャルサイト

実装



Sun Multi-Schema Validator (MSV): RELAX Core, RELAX Namespace, TREX, RELAX NG, DTD, W3C XML Schema に対応した検証ソフトウェア
* DTD2RELAX: DTDスキーマをRELAX Coreスキーマに変換するソフトウェア

RELAXは、XML文書の構造を柔軟かつ簡潔に定義するための強力なツールです。その簡潔さから、複雑なXMLスキーマをより理解しやすく、開発しやすいというメリットがあります。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。