XMLの標準化

XMLの標準化


小町 祐史/松下電送システム(株)
JTC1/SC34専門委員会委員長
ISO/IEC JTC1/SC34/WG2 Convener

2002-09-25


1. はじめに

XML(Extensible Markup Language)は, ISO/IEC JTC1におけるSGML(Standard Generalized Markup Language)を中核とする文書記述言語に関する地道な標準化活動[1],[2]を基盤として, W3C(World Wide Web Consortium)のエキスパート達によって開発された。

ここではXMLの標準化活動の中でも特に国内における活動を中心として紹介する(規格等の内容には言及しない。)。XMLの国内標準化活動は, W3CにおけるXMLの検討とほぼ並行して行われたため, その検討結果は直ちにW3Cでの議論に組み入れられ, W3Cの勧告(Recommendation)に色濃く反映された。その意味では, XMLの国内標準化活動は, 他の多くの国内標準化活動とは幾分趣きを異にする。

そこでその背景と経緯をここに纏めて紹介する。

2. XMLの標準情報(TR)化

W3CにおいてXMLは, 次のドラフトを経て今日のExtensible Markup Language (XML) 1.0 (Second Edition)に至っている。

96年11月版は, 公表直後にBostonで開催されたGCAのSGML Conferenceで配布され, 直ちに国内のエキスパート達(村田, 小町, 他)によって独立に翻訳されて, それぞれのWeb等で国内に紹介された。

XMLに関する国内エキスパートの活動を効率化するため, 日本規格協会の情報技術標準化研究センター(INSTAC)で既に活動を行っていた"マルチメディア/ハイパーメディア調査研究委員会"は, その中にWG4/XML-SWGを組織して, 国内エキスパートの参加をお願いし, XMLの標準情報(TR)化作業を開始した。

標準情報(TR)は, 1996年8月に制定された標準情報(TR)制度実施要綱[3]に基づく制度であり, JIS化に至る前段階における技術標準等の状況を積極的に公表することによって, オープンな議論を推進し, 関係者間の幅広い意見を集めるものである。

ISOでもIECでもないW3Cの勧告を国内規定として承認するためには, まさに時機を得た制度であった。XMLのTR X 0008:1998を皮切りとして[注], その後, 5.に示すとおりW3CのXML関連規定が次々とTR化された。

[注] TR X 0008:1998の前には, DVD論理フォーマット, フォント情報処理用語, Java言語規定, 規格文書用DTDなどが, TRとして公表されている。

2.1 PR(1997-12)のTR化

WG4/XML-SWGは, XMLの各版に対して詳細レビューを行うと共に,

に対して翻訳作業を行い, これらの活動の結果明らかになった問題点をその都度W3Cに対してフィードバックしてきた。

W3Cが97年12月版を公表した後, XMLのTRに対する国内の業界要求が高まり, 最終的な勧告(REC)を待ってからTR化するより, この段階でひとまずTR化する方が適切と判断して, 97年12月版の翻訳をTR原案として98年2月に当時の通産省工技院に提出した[4]。これは98年3月の通産省の審議委員会で承認され, TR X 0008:1998 拡張可能なマーク付け言語(XML) として, 98年5月に発行された。

2.2 REC(1998-02)のTR化

W3Cでは, 97年12月版に対するコメントへの回答が98年2月10日に公開され, それを反映して変更を加えたW3Cの勧告"Extensible Markup Language (XML) 1.0"が98年2月に発行された。

INSTACは, 98年4月に"高速Webにおける標準化に関する調査研究委員会"を設立し, その作業グループ(WG3)のXML特別作業グループ(XML-SWG)が, TR X 0008:1998のメンテナンスを担当して, W3C勧告のXML1.0の翻訳作業を開始した。その翻訳原案は, 99年2月までのW3C正誤表の内容を反映して, TR X 0008:1998の改正案として同年2月末に工業技術院に提出された[5]。これは, TR X 0008:1999 拡張可能なマーク付け言語(XML)1.0 として, 99年5月に発行された。

翻訳における訳語選定に際しては,SGMLを規定しているJIS X 4151との整合を配慮した。しかしその後にJISとして出版されたSGML関連規格において,適切な理由に基づいてJIS X 4151の訳語を変更している用語については,なるべく新しいSGML関連JISの訳語を採用している。

この標準情報(TR)で採用した主な訳語の例を表2.1に示す。

表2.1 TR X 0008:1999における訳語
原語訳語
well-formed整形式
valid妥当
validity 妥当性
parsed entity 解析対象実体
unparsed entity 解析対象外実体
escape 別扱い
surrogate blocks サロゲートブロック
ideographic 統合漢字
base character 基底文字
composed form 合成形式
validating 妥当性を検証する
content particle 内容素子
mixed content 混合内容
match マッチ
character value 文字番号
byte order mark バイト順マーク
extender エクステンダ

W3Cの規定は, 必ずしもJIS又はTRの様式には整合していないため, 多少の変更が必要になる。しかしTRの読者が原規定を参照する際の便を考慮すると, 章・節構成はなるべく原規定のそれを保存することが望まれる。そこで, 次に示すだけの修正(章・節番号の変更なし)を施して, TR原案とした。

3. XMLのJIS化

INSTACに2001年4月に設立された"次世代コンテンツの標準化に関する調査研究委員会"の作業グループ(WG2)は, TR X 0008の公表等によってXMLが国内に充分な利用者を獲得し, この規定内容に関するコンセンサスが得られたと判断して, そのJIS化作業に着手した。

2001年6月には, W3CからXML1.0の2nd Editionが公表されていたため, それをJIS化対象の原規定とし, できるだけ新しいW3C正誤表の内容を盛り込むことを目標とした。このJIS原案(HTML版)は, 2002年2月に経済産業省に提出された[6]。省内の都合によって, 02年3月の審議にはかけられず, 02年6月の審議によって承認された。

経済産業省はWebによるJISの電子公開をめざして, 02年4月からJIS原案のMS Wordフォーマットによる提出を要求している。その結果, このJIS原案(HTML版)は, 2月に提出済みであったにもかかわらず, 5月になってJSAテンプレートに従ったWordフォーマットへの書き換えを求められることになった。

W3Cは, W3C文書の内容を,どんな目的のためにもどんな媒体でも,報酬又は使用料なしに,使用,複写及び配布することを許可しているが,それは, 使用する文書又はその一部のすべての複写物が次を含む場合に制限されている。

  1. W3C文書(原規定)へのリンク又はURI。
  2. 原著者の既存の著作権表示。それがない場合は,次の形式の表示。 "Copyright © [$date-of-document] World Wide Web Consortium, (Massachusetts Institute of Technology, Institut National de Recherche en Informatique et en Automatique, Keio University). All Rights Reserved. http://www.w3.org/Consortium/Legal/" (ハイパテキストが望ましいが,テキスト表現は許可する。)
  3. 存在する場合には,W3C文書(原規定)の状態

TR X 0008は, この要求に従った内容で発行されたが, XML1.0のJIS化に関して, W3Cはさらに, 勧告のまえがきの記載内容をJISのまえがきに含めることを要求し, 原案委員会のWG2メンバとW3C担当者との打ち合わせがもたれた。

4. XML日本語プロファイル

4.1 TR X 0015:1999

XMLは,符号化文字集合としてJIS X 0221及びUnicode 2.0を採用しており,これは日本語文字をすべて含む。文字符号化スキームとしてはUTF-8及びUTF-16を推奨し,これらの実装を義務付けている。既存の文字符号化スキームも,Unicode 2.0の文字だけを扱う限りオプションとしてすべて許容している。

しかし,XMLの勧告では,日本語文字の交換に広く使われてきた既存の文字符号化スキームはほとんど説明されてなく,オプションの一つとして許容されているに過ぎない。SMTP及びHTTPなどのプロトコル並びに情報交換用ファイルで,どの文字符号化スキームを用いるかについても,特に定められてはいない。

既存の文字符号化スキームとJIS X 0221及びUnicode 2.0との対応も不明確である。相互に異なるいくつかの変換表が用いらており,複数のXMLプロセサが異なる結果を出力する場合がある。

これらの問題点を明確にするため,TR X 0008:1998はその解説の中に, "3. 日本語プロファイル"を設けて, 全角英数字及び半角片仮名, 情報交換用ファイル中のXML文書, HTTPによるXML文書の配送, メールによるXML文書の配送などに関する記述を含めている。

TR X 0008:1998を改正してTR X 0008:1999の原案を作成する際, 原案委員会である"高速Webにおける標準化に関する調査研究委員会"の作業グループ(WG3/XML-SWG)はこの問題の重要性を再確認して, この日本語プロファイルを独立した標準情報(TR)とすることにした。TR原案は99年2月に提出され[5], TR X 0015:1999, XML日本語プロファイル として99年5月に公表された。

4.2 W3C Note

XML文書の中で日本語を使う利用者は, 必ずしも国内の利用者に限定されるわけではない。そこで原案委員会のWG3/XML-SWGは, TR X 0015:1999を英訳し, W3Cに対してNoteとして提案を行った[7]。規格協会も当時の工業技術院もW3Cのメンバではなかったため, W3Cへの提案は, XML SWGの主要メンバおよび議論に参加したW3Cメンバが属している次の組織によって行われた。

Submitting organizations
 Xerox  
 Panasonic  
 Toshiba  
 GLOCOM  
 Academia Sinica  
 Alis Technologies  
 Sun Microsystems  

Submission Requestは99年12月に送付され, AC Repからのconfirmを受けて, このTRの英訳は, XML Japanese Profile, W3C Note 22-12-1999 として公表された。

4.3 TR X 0015:2002

W3CにNoteとして提案するための議論の中で, TR X 0015:1999の内容に対して部分的修正が施された。W3C NoteとTRとの一致を図るため, この修正を反映したTR X 0015の改正原案が, INSTACの"次世代コンテンツの標準化に関する調査研究委員会"によって作成され, 02年2月に経済産業省に提出された[6]

これは, TR X 0015:2002, XML日本語プロファイル として02年6月に公表されている。

5. W3CのXML関連規定の標準情報(TR)化

TR X 0008:1998の公表の後, 関連する多くのW3C勧告がINSTACにおける幾つかの委員会で翻訳され, TR原案として通産省/経済産業省に提出されて, 承認を受けた後, 次に示すTRとして公表されている。2002年度末までのこれらの活動により, accessibilityとsecurityを除くW3Cの主要な勧告のTRは, 概ね完了する予定である。

これらの原案作成に際しては, word-by-wordの詳細レビューが行われ, そこで明らかになった原規定(W3C Rec.等)の問題点は, W3Cにフィードバックされている。

5.1 文書構造等

5.1.1 XML関連

TR X 0023:1999, XML名前空間, Namespaces in XML, 1999-11

TR X 0076:2002, XMLリンク付け言語 XLink 1.0, XML Linking Language (XLink) Version 1.0, (2002-10のMETI審議を予定)

5.1.2 HTML関連

TR X 0033:2000, ハイパテキストマーク付け言語(HTML) 4.0, HyperText Matrkup Language (HTML) 4.0 Specification, 2000-09

TR X 0033:2002, ハイパテキストマーク付け言語(HTML) 4.0, HyperText Matrkup Language (HTML) 4.0 Specification, 2002-06

TR X 0037:2001, 拡張可能なハイパテキストマーク付け言語 XHTML 1.0 XHTML 1.0: The Extensible HyperText Markup Language, 2001-02

TR X 0051:2001, XHTML基本, XHTML Basic, 2001-12

TR X 0056:2002, XHTMLのモジュール化, Modularization of XHTML, 2002-06

5.1.3 DOM/RDF関連

TR X 0022:1999, 資源記述の枠組み(RDF) モデル及び構文規定, Resource Description Framework (RDF) Model and Syntax Specification, 1999-11

TR X 0019:1999, 文書オブジェクトモデル(DOM)水準1 規定, Document Object Model (DOM) Level 1 Specification, 1999-09

TR X 0065:2002, 文書オブジェクトモデル(DOM)水準2 コア規定, Document Object Model (DOM) Level 2 Core Specification, 2002-09

TR X 0060:2002, 文書オブジェクトモデル(DOM)水準2 イベント規定, Document Object Model (DOM) Level 2 Events Specification, (2002-10のMETI審議を予定)

TR X 0078:2002, 文書オブジェクトモデル(DOM)水準2 ビュー規定, Document Object Model (DOM) Level 2 Views Specification, (2002-10のMETI審議を予定)

TR X 00**:2002, 文書オブジェクトモデル(DOM)水準2 スタイル規定, Document Object Model (DOM) Level 2 Style Specification, (2002-12のMETI審議を予定)

5.1.4 Schema関連

TR X 0054:2002, XMLスキーマ 第0部 基本, XML Schema Part 0: Primer, 2002-06

TR X 0063:2002, XMLスキーマ 第1部 構造, XML Schema Part 1: Structures, 2002-09

TR X 0064:2002, XMLスキーマ 第2部 データ型, XML Schema Part 2: Datatypes, 2002-09

5.1.5 XML応用

TR X 0014:1999, 同期化マルチメディア統合言語(SMIL) 1.0, Synchronized Multimedia Integration Language,SMIL 1.0, 1999-05

TR X 00xx:2002, 同期化マルチメディア統合言語(SMIL 2.0), Synchronized Multimedia Integration Language (SMIL 2.0), (2002-12のMETI審議を予定)

TR X 0077:2002, Xフォーム1.0, XForms 1.0, (2002-10のMETI審議を予定)

5.2 文書スタイル指定

TR X 0011:1998, 段階スタイルシート 水準1(CSS1), Cascading Style Sheets, level 1 (CSS1), 1998-10

TR X 0032:2000, 段階スタイルシート 水準2(CSS2), Cascading Style Sheets, level 2 CSS2 Specification, 2000-09

TR X 0048:2001, XSL変換(XSLT) 1.0, XSL Transformations (XSLT) Version 1.0, 2001-07

JIS/TR X 00**:2001, 拡張可能なスタイルシート言語(XSL) 1.0, Extensible Stylesheet Language (XSL) Version 1.0, (2002-12のMETI審議を予定)

5.3 W3Cの翻訳でない関連TR

次のTRは, INSTACの委員会で独自に開発された関連技術の規定である。TR X 0047は, 英訳されてW3CにNoteとして提案されている。

TR X 0059:2002, XSLTライブラリ, XSLT Library, 2002-09

TR X 0047:2001, XMLによる画像参照交換方式, Picture Reference Exchange by XML, 2001-07

6. XMLのISO/IECへの影響

6.1 SGML Cor.2

SGMLを開発したISO/IEC JTC1/SC18/WG8(その後, JTC1/SC34)は, XMLが発表されると, XMLを厳密にSGMLのサブセットに位置付けるため, ISO 8879:1986のTechnical Corrigendum 2の編集作業に着手した。SGMLのEditorからのemailによる呼びかけに応じて各国のエキスパートが議論に参加した。

この議論は, 97年5月のJTC1/WG4 Barcelona会議(SC18/WG8からSC34への移行期間での審議は, JTC1/WG4として行われた。)での審議を経て, SC18 N5763として投票にかけられ, 99年11月に ISO 8879:1986/Cor.2:1999として発行されている。

ISO 8879:1986/Cor.2:1999は翻訳されて, JIS X 4151:2000 SGML追補2として制定されている。

6.2 XMLを参照する規格等

SGML/XMLは, データの構造記述に用いられると共に, その構文を使って規格等の厳密記述, 交換フォーマット記述等に使われている。その場合, 引用規格としてXMLを参照する必要があるが, XMLそのものが国際規格(つまりISO, IEC, ITUの規格)ではないため, 引用規格で参照することが困難である場合が多い。この問題の形式的解決策として, ISO 8879:1986とISO 8879:1986/Cor.2:1999(又はJIS X 4151:2000)とを引用して, XMLを参照したことと等価とすることが行われている。その具体例として, 次の規格等がある。

7. スキーマ言語

7.1 背景

文書型定義(DTD)はパーサで構文解析できないため, DTDを処理するツールを作りにくく, しかも基本的なデータ型を扱うことができない。そこで, この問題を解決できる言語が強く望まれていた。既にいくつかの提案が出されていたが, それらの共通機能を実現する標準的な規定として, XML正規言語記述(Regular Language Description for XML, RELAX)が考案された。

この活動は, 村田らによる小グループのものであったが, その成果を国際的な規定に位置付けるために, まず国内の標準情報(TR)としてオーソライズしてから, それをFast-track手続きによってISO/IEC JTC1に提出するという戦略が採用された。TR化の活動は, 日本規格協会のINSTACにおいて99年から開始された。

7.2 RELAXコア

最初の規定は, 単一の名前空間だけを扱うRELAXコアであり, TR X 0029:2000, XML正規言語記述 RELAX コア として2000年5月に公表された。このTRは, XML文書の正規集合を記述するための言語を規定し, その文法は, XML文書で使用可能なタグ名, 属性名, 許される文字列, それらの可能な組合せを扱う。

TR X 0029の英語版は, 通産省工業技術院(当時)からISO中央事務局にFast-track提案され, ISO中央事務局がJTC1に対して01年5月を期限とするDTR投票(DTR 22250-1)を指示した。

この投票に触発されて, それまで進捗がはかばかしくなかったW3CのXML Schemaの活動に大きな進展かあり, 急遽, 勧告が公表されるに至った。W3CのXML Schemaの公表を著しく加速化したことは, このDTR投票の副作用であったかも知れない。同時期に, J. ClarkがTREX(Tree Regular Expressions for XML)を発表したため, RELAXとTREXとの整合作業が進められて, その成果は RELAX NG(RELAX New Generation)としてOASISから発表された。

DTRは賛成多数で可決されたが, 各国からの投票コメントに対処するため, 01年8月にBallot resolution会議を新潟の国際大学で開催し, Disposition paperを作成すると共に, 最終テキストの準備を行った。最終テキストは01年9月に提出され, ISO/IEC TR 22250-1として02年2月に発行された[8]

7.3 RELAX名前空間

RELAX名前空間による記述は,幾つものRELAXコアによる記述を組合わせることによって,複数の名前空間を扱う。一部の名前空間について,RELAXコア以外の言語によって記述することもできる。

この規定は, TR X 0044:2001, XML正規言語記述 RELAX 名前空間 として, 01年7月に公表された。その英語版は, 情報規格調査会からJTC1にFast-track提案され, 02年5月を期限とするDTR投票が開始された(JTC1 N6616, N6643)[9]。このDTR 22250-2は, 賛成多数を得て可決された。Ballot resolutionは02年12月を予定している。

7.4 DSDL(文書スキーマ定義言語)への組込み

日本提案のRELAXに対する対抗策としてUKは, 文書スキーマ定義言語(DSDL)のNP提案をSC34に提出してきた。NP提案は承認されたが, 提案の後にUKから提出された作業ドラフトは, J. Clark, 村田らのエキスパートのレビューに耐えるものでなかったため, 01年12月のSC34会議において, DSDLをマルチパート化して, XSL Schema, RELAX NGなどの既存の複数のスキーマ言語を含む規格とする方針が承認された。

DSDLのパート2としてRELAX NGが位置付けられ, OASISの仕様書の表紙だけをISOの体裁にしたCDテキストが, 02年3月を期限とする投票にかけられた。これは反対なしで承認され, 02年5月のSC34会議においてCD投票コメントの反映が行われて, 改訂テキストが配布された。

02年5月のSC34会議では, DSDLのパート構成がさらに見直されて次のリストのとおりとなり, RELAX名前空間がDSDLの一部となることがほぼ決まった。この作業が早く進めば, ISO/IEC TR 22250-2の発行に代えて, DSDL(ISO/IEC 19757)のそのパートの発行を急ぐ方が適切かもしれない。

Part 0: Overview, G. Ken Holman (Canada)
Part 1: Interoperability framework, Eric van der Vlist (ISUG)
Part 2: Grammar-based validation - RELAX-NG, James Clark (UK) and Makoto Murata (Japan)
Part 3: Rule-based validation - Schematron, Rick Jelliffe (Australia)
Part 4: Selection of validation candidates, Makoto Murata (Japan)
Part 5: Datatypes, Martin Bryan (UK)
Part 6: Path-based integrity constraints, James Clark (UK)
Part 7: Character repertoire validation, Diederik Gerth van Wijk (Netherlands)
Part 8: Declarative document manipulation, G. Ken Holman (Canada)
Part 9: Datatype- and namespace-aware DTDs 

8. むすび

国際標準化と国内標準化との間には, 英語-日本語変換という大きな障壁が存在している。この障壁にもかかわらず, XML関連技術については国際と国内とがほぼ同時進行で標準化が推移し, 互いに影響を及ぼし合い, 相互に寄与を与えてきた。

これらの経緯をここで整理したことが, 今後の標準化活動を推進する際の一つのReferenceとなり得るであろうことを期待する。

寝食の時間を割き, 国際会議参加等にも休暇と私費を遣うことも可としてこれらの標準化活動に参加されたXML標準化のメンバに感謝する。

文献

[1] 小町: SGML/XMLの入門から応用まで, 1. SGML/XML開発の経緯とその関連規格概要, Computer Today, No.83, 1998-01

[2] 小町: SGML/XMLの入門から応用まで, 7. SGML関連規格 - SGML Support Facility -, Computer Today, No.86, 1998-07

[3] 通商産業省: 標準情報(TR)制度実施要綱, 1996-08-01

[4] 1997年度 マルチメディア/ハイパーメディア調査研究委員会報告書, 日本規格協会 INSTAC, 1998-03

[5] 1998年度 高速Web環境における標準化に関する調査研究委員会報告書, 日本規格協会 INSTAC, 1999-03

[6] 2001年度 次世代コンテンツの標準化に関する調査研究委員会報告書, 日本規格協会 INSTAC, 2002-03

[7] 1999年度 高速Web環境における標準化に関する調査研究委員会報告書, 日本規格協会 INSTAC, 2000-03

[8] ISO/IEC TR 22250-1, Information technology -- Document description and processing languages -- Regular Language Description for XML (RELAX) -- Part 1: RELAX Core, 2002-02

[9] ISO/IEC DTR 22250-2, Information technology -- Document description and processing languages -- Regular Language Description for XML (RELAX) -- Part 2: RELAX Namespace, 2002-01

[10] JIS X 4153, 文書スタイル意味指定言語(DSSSL), 1998-03