この解説は,標準情報(TR)の本体及び付属書に規定・記載した事柄,並びにこれらに関連した事柄を説明するもので,標準情報(TR)の一部ではない。
XML(TR X 0008:1999)では,個別のアプリケーションの要求に応じてタグセットを設計する。タグセットの記述には,従来からDTDが用いられてきた。しかし,DTDには次の三つの問題がある。
これらの問題を解決する言語が, 市場では強く望まれており,既に幾つかの提案が出されている。RELAXは,それらの共通機能を実現する標準的な規定である。
財団法人日本規格協会 情報技術標準化研究センター(INSTAC)の次世代ネットワークの標準化に関する調査研究委員会は, RELAXの調査研究を行なって,標準情報(TR)による公表の必要性を提言した。
次世代ネットワークの標準化に関する調査研究委員会は,通商産業省工業技術院(当時)からの委託を受けて,2000年度の活動として, RELAXコアの制定及び標準情報(TR)原案作成を行なった。原案は2001年3月に提出されている。
W3Cは,XML Schemaという勧告を2001年5月に制定した。XML Schemaは,タグセットを記述するためのスキーマ言語である。
XML Schemaは,DTDが扱う範囲を大きく越えた野心的な規定である。したがって,実装にも採用にも長い時間を必要とする。XML Schemaのすべての機能を利用するには,SAX又はDOMの拡張も必要になる。
一方,RELAXは制定・実装が容易なことを目標としている。実際,この標準情報(TR)が発行されるときには, 既に実装が幾つか現れている。DTD相当の機能とXML Schemaの豊富なデータ型とをXMLインスタンス構文で表現し,幾つかの独自拡張を行ったものがRELAXになる。
RELAXは,DTDからXML Schemaへの移行を容易にする。RELAXは,DTDにデータ型の情報を付加したものとみなすことができ,DTDから直ちに移行できる。XML Schemaが実装されたときには,必要ならRELAXからXML Schemaに移行すればよい。
名前空間は重要であるが,名前空間を必要としないアプリケーションも数多く存在する。例えば,小規模なEDIは, 名前空間なしに実現可能である。このようなアプリケーションを構築する利用者にとっては,名前空間を含んだ規定よりも,名前空間を含まない規定のほうが,単純で理解しやすい。
この理由によって,RELAXは, コア及び名前空間の二つの部分に分けて制定する。この標準情報(TR)は,複数の名前空間の混在を許すための機能を規定する。
a) RELAX公式サイト, http://www.xml.gr.jp/relax
b) RELAX利用者日本語メーリングリスト, http://www2.xml.gr.jp/1ml_main.html?MLID=relax-users-j
c) RELAX制定に関する日本語メーリングリスト, http://www2.xml.gr.jp/1ml_main.html?MLID=relax-std-j
d) RELAX開発者英語メーリングリスト,http://www.egroups.com/group/reldeve
e) W3C (World Wide Web Consortium), XML Schema Part 1, W3C Recommendation, eds. Henry Thompson, David Beech, Murray Maloney, Noah Mendelsohn, http://www.w3.org/TR/xmlschema-1. 2001
この標準情報(TR)の原案を作成した(財)日本規格協会 情報技術標準化研究センター(INSTAC)の次世代ネットワークの標準化に関する調査研究委員会, 作業グループ(WG3) 及びXML特別作業グループ(XML-SWG)の委員構成を, その順に次に示す。
氏名 | 所属 | |
---|---|---|
(委員長) | 池田 克夫 | 京都大学 |
(幹事) | 鯵坂 恒夫 | 和歌山大学 |
(幹事) | 小町 祐史 | 松下電送システム株式会社 |
(幹事) | 平山 亮 | ヒューレット・パッカード日本研究所 |
内山 光一 | 株式会社東芝 | |
久保田 靖夫 | 大日本印刷株式会社 | |
黒川 利明 | 株式会社CSK | |
斎藤 伸雄 | 凸版印刷株式会社 | |
二本松 勝 | 株式会社日立製作所 | |
八田 勲 | 経済産業省産業技術環境局 | |
藤原 洋 | 株式会社インターネット総合研究所 | |
松本 充司 | 早稲田大学 | |
柳町 昭夫 | 株式会社NHKアイテック | |
(事務局) | 山中 正幸 | 財団法人日本規格協会 |
氏名 | 所属 | |
---|---|---|
(主査) | 小町 祐史 | 松下電送システム株式会社 |
(幹事) | 内山 光一 | 株式会社東芝 |
稲垣 達夫 | グランスフィア株式会社 | |
奥井 康弘 | 株式会社日本ユニテック | |
海田 茂 | ネクストソリューション株式会社 | |
風間 一洋 | 日本電信電話株式会社 | |
上村 圭介 | 国際大学グローバルコミュニケーションセンター | |
栗林 博 | オムロン株式会社 | |
黒川 利明 | 株式会社CSK | |
郡山 龍 | 株式会社アプリックス | |
澤田 位 | 財団法人日本規格協会 | |
出葉 義治 | ソニー株式会社 | |
内藤 広志 | 大阪工業大学 | |
西村 利浩 | 株式会社富士通 | |
湯沢 広吉 | 経済産業省商務情報政策局 | |
オブザーバ | 浅利 千鶴 | 浅利会計事務所 |
オブザーバ | 篠原 章夫 | 日本電信電話株式会社 |
オブザーバ | 山東 滋 | 株式会社日立製作所 |
オブザーバ | 萩原 崇弘 | 経済産業省商務情報政策局 |
オブザーバ | 永井 裕司 | 経済産業省産業技術環境局 |
(事務局) | 山中 正幸 | 財団法人日本規格協会 |
氏名 | 所属 | |
---|---|---|
(主査) | 村田 真 | 日本アイ・ビー・エム株式会社 |
今郷 詔 | 株式会社リコー | |
内山 光一 | 株式会社東芝 | |
小町 祐史 | 松下電送システム株式会社 | |
檜山 正幸 | 檜山オフィス | |
奥井 康弘 | 株式会社日本ユニテック | |
高橋 亨 | 株式会社日立製作所 | |
川俣 晶 | 株式会社ピーデー | |
上村 圭介 | 国際大学グローバルコミュニケーションセンター | |
(事務局) | 山中 正幸 | 財団法人日本規格協会 |
この標準情報(TR)の作成に際しては, 原案作成委員会委員以外の次の方々から大きな貢献をいただいた。
氏名 | 所属 | |
---|---|---|
浅海 智晴 | じゃばじゃば主宰 | |
川口 耕介 | Sun Microsystems, Inc. | |
米倉 宏治 | 日本電気株式会社 |
例題として,文書本体とテーブルの二つのモジュールから構成されるフレームワークを示す。この二つのモジュールは別の名前空間に属する。
文書本体を表現するモジュールを次に示す。
<module xmlns="http://www.xml.gr.jp/xmlns/relaxCore" relaxCoreVersion="1.0" targetNamespace="urn:document"> <interface> <export label="doc"/> <export label="para"/> </interface> <tag name="doc"/> <elementRule role="doc"> <choice occurs="*"> <ref label="para"/> <ref label="table" namespace="urn:table"/> </choice> </elementRule> <tag name="para"/> <elementRule role="para" type="string"/> </module>
このモジュールは、次のことを記述している。
テーブルモジュールを次に示す。
<module xmlns="http://www.xml.gr.jp/xmlns/relaxCore" relaxCoreVersion="1.0" targetNamespace="urn:table"> <interface> <export label="table"/> </interface> <tag name="table"> <attribute name="number" type="int"/> </tag> <elementRule role="table"> <ref label="row" occurs="*"/> </elementRule> <tag name="row"/> <elementRule role="row"> <ref label="cell" occurs="*"/> </elementRule> <tag name="cell"/> <elementRule role="cell"> <ref label="para" namespace="urn:document" occurs="*"/> </elementRule> </module>
このモジュールは、次のことを記述しています。
この二つを用いて作成されるフレームワークを次に示す。
<framework xmlns="http://www.xml.gr.jp/xmlns/relaxNamespace" relaxNamespaceVersion="1.0"> <module namespace="urn:document" location="doc.rxm"/> <module namespace="urn:table" location="table.rxm"/> <topLevel> <ref label="doc" namespace="urn:document" xmlns="http://www.xml.gr.jp/xmlns/relaxCore"/> </topLevel> </framework>
このフレームワークは、次のことを記述している。
5.1から5.3に示したフレームワーク及びモジュールに適合する文書を次に示す。この文書は,二つのテーブルをもつ。どちらのテーブルも,二つの段落を含む。テーブル部分は名前空間urn:tableに属しており,文書及び段落部分は,名前空間urn:documentに属している。
<{urn:document}doc> <{urn:document}para>this is a para</{urn:document}para> <{urn:table}table number="1"> <{urn:table}row> <{urn:table}cell> <{urn:document}para>1st para</{urn:document}para> <{urn:document}para>2nd para</{urn:document}para> </{urn:table}cell> </{urn:table}row> </{urn:table}table> <{urn:table}table number="2"> <{urn:table}row> <{urn:table}cell> <{urn:document}para>3rd para</{urn:document}para> <{urn:document}para>4th para</{urn:document}para> </{urn:table}cell> </{urn:table}row> </{urn:table}table> </{urn:document}doc>