XML文書見本

まえがき

SGML-NCALS-DTD適合文書をXML-DTD(xhtml表現)文書に変換した見本を示す。 この特徴は,SGML/NCALS-DTDで規定された論理構造及び意味を保存した妥当な (valid)XML文書又は整形式(well-formed)XML文書でありながら市販のHTML(XML) 閲覧系によって,割付け表示できることにある。 ここでは,XML文書の内容情報は, 実現例として利用しただけであって, 意味をもつわけではない。 なお,当面,WEB閲覧系は,MS-InternetExplorer 6.0以降に限定する。

目次

1. 機能概要
  1. 要件定義段階,文書作成段階及び利用段階の機能
  2. 利用段階の機能
  3. 提示段階(主に印刷)の機能
2. XSLによる割付け 3. XML文書の効用

1.機能概要

1.1
XML-DTDが支援する外部処理 このXML-DTD適合文書は,外部処理のための次の構造及び属性をもつように拡張 できる。
  1. データベース登録・検索
    文書の
    前部(<front>)共通管理項目群をもち,データベースに 対して,初期登録,文書検索などの行為に対する情報を保有する。 文書集合(setDoc)は,その文書が直接参照する文書群の並びを記述でき,登録の際に参照することを推奨している。
  2. また,
  3. 用語集への結合付け
    段落中の任意の位置で,意味タグ(<WORDREF>)を付加することに よって,別途,作成された
    用語集(<rear>/<glossary>)と結合する印を 付けられる。
  4. 安全保護
    論理構造の属性(security)の値に,u(等級なし),c(機密)又はs(秘密)の いずれかを指定することによって,外部処理系に対して,その論理構造への 安全保護水準を示す。この属性の解釈処理は,文書の保管位置に近いところ で行なわれ,端末側へは削除された文書が送付されることを想定している。
  5. 差分文書の扱い
    このXML-DTD文書は,差分文書を支持している。この差分文書とは, 二つの文書の共通部分を一緒にして,違いだけを区分した文書の形式をいう。 その仕掛けとして,
    章差分データ(<ddchapter>)を設け,章単位で違いを記述 できる。
    更に,差分のある章(chapter)又は節(section)中に分散して選択項目を記述できる ように,文選択(selection)も用意した。
    この用途は,同じ仕様書又は取扱説明書中に複数仕様の記述をする場合に利用できる。
    この仕様の違いのある部分文書の両方か選択した片方を表示するのか どうかは, 応用系のプログラムに依存する(例:Javaスクリプト)。 このXML-DTDのひな型は,NCALSはん用DTD(V2.1)とした。
  6. 他文書との両方向の参照
    このXML-DTDは,文書断片に対して,他の文書からの参照を支持している。
    その参照には,次の機構を使用する。
    A)文書の特定
     文書の前部の
    識別情報(<idinfo>)要素による。
    ただし,当該文書と外部文書との関係が粗の場合当該文書外に文書対 象表を設け,外部からの引用情報を翻訳するものとする。
    B)文書断片の両方向参照(密結合の場合,内部結合)
     文書の論理構造に記述できる属性としuseratt1~userat5を指定できる。
    この要素の値を応用系で予め規定しておくことによって,一つの論 理構造当たり連結を最大5まで記述できる。
     この連結は,外部文書から(from)でもよいし,当該文書から外部(to) を指定してもよい。一つの属性として両方向(both)と定義してもよい。
    これら属性の一般的な利用方法としては,当該文書の内容はどこか ら(from)引用してきたものか,その記述がどこに引用されているかなど を当該文書中に記述するのに使うことを想定している。
    更に,前部(front)に外部参照対応表(mapextRef)要素を新設し,外部 文書を文書内部で参照するときには局所名(例:URN)とし,外部名として は大域名(例:URL)を用いるときには,この外部参照対応表によって, 外部名に変換情報をえられる用意をした。
    これらの記述によって,変更の場合の連係の必要性を表明できる。
    ただし,それが自動的に変更管理されるかどうかは,その応用系の機構 に依存する。

    <section useratt1="fromSTEPxxx.yyy" useratt2="toEDIzzz.123"> 節の内容情報. </section>  この例は,この節(<section>)は,STEPxxx.yyyから移入され,EDIzzz.123へ 移出していることを示している。なお,これらの参照先の名前は,XML/HTML 閲覧系では通常表示されない。
    備考
    1. 論理名を記述する。
       この参照先の名前は,論理名とし,実際の格納先名などの 物理的な位置を書かない。実格納位置情報は,その当該文書の 外部で管理し,複製位置によって文書内容を変化させなくても よいように記述すると想定している。
    2. 将来の発展
      将来,XMLの関連勧告として,参照関係の記述方法が公開され, その処理系が普及する時点で,この属性によるか新しい記述に するかの検討を行なうことになろう。
    C)文書断片の両方向参照(粗結合の場合,外部結合)
    当該文書は,外からの引用に対して無関係にしたい場合,(共通基盤 文書などの場合),参照関係の記述は,文書外部に関連票を作成して応用 系によって,対応すると想定する。
  7. 変更要求
    文書に対する変更要求は,このDTDの
    変更要求(<modreq>)を使用できる。 この変更要求は,人間世界との境界面において,合意形成が行なわれ, それを基にして,XML文書が変更されることを想定している。 したがって,変更要求の段階では,原文書は変更されない。
  8. 改版処理
    • 文書の改版情報として,最大3倍の情報(削除,挿入,現版)を記述すれ ば,すべての版の履歴を追跡できるXML文書にできる。
    • 一つの版を1文書にすることもできる(docstat,revision)。
    • 直前の版との差分だけを文書中の属性(revchg,delchlvl,inschlvl))に指定する こともできる。
  9. 目次作成
    論理構造の属性(<tocentry>)に0以外の属性値を付けることによって,
    目次(<contents>)に登録する構造を記述できる。
    慣用的に属性値の数値は, 割付けられた結果のページを指定する。
  10. 索引作成
    段落中の任意の位置で,索引登録標識(<indxflag>)を付与することによって,
    索引(<index>)を文書の後部(<rear>)へ自動生成させる印とすることができる。
    その場合,漢字などの読みによって分類先が異なるので,読み方を属性値 (ref1,ref2,ref3又はref4)として記述できる。
1.2 閲覧系の想定
閲覧系は, XML1.0を解釈提示できるMS-IE4又はMS-IE5を当面,想定し,XML文書を割り付 けて見せられることを意図した。 1.3 SGML文書からXML文書への変換の概要 XML見本文書は,CALS実施ガイドのSGML文書実現値を PERLスクリプトによって,タグ変換して作成した。CSS(cascade Style Sheet)は使用しないで, 割付け処理はHTML4閲覧系に依存させた。更に第1.9版以降は,MS-Internet Explorer 5.0で作動する体裁指定をXSLに よることに変更し,ここで追加した”BR”はなくてよい。 A)HTML構文と衝突する共通識別子の変更  B)論理構造が終わると,行分割させる。   HTML3(MS拡張構文を含む)から借用した割付け指示は,次のとおりである。  (SGML-JIS, NCALS-DTD及びHTML3 の知識を要す。)。ただし,第1.9版以降は,XSLで体裁を指定するので,BRを追加しないで,それ ぞれ段落扱いとすることによって,改行させる。
  1. 前部(<FRONT>)
    • 前部</FRONT>--></FRONT><BR/>
    • 識別情報</IDINFO>--></IDINFO><BR/>
    • 警告ページ</WARNPAGE>--></WARNPAGE><BR/>
    • 変更命令書</CHGINSSHT>--></CHGINSSHT><BR/>
    • 文書集合</SETDOC>--></SETDOC><BR/>
    • 外部参照対応表</MAPEXTREF>--></MAPEXTREF><BR/>
    • 検証状態ページ</VERSTAT>--></VERSTAT><BR/>
    • 変更記録</CHGREC>--></CHGREC><BR/>
    • 目次</CONTENTS>--></CONTENTS><BR/>
    • 図並び<:/ILLSLIST>--></ILLSLIST><BR/>
    • 表並び</TABLELIST>--></TABLELIST><BR/>
    • 前書き</FOREWORD>--></FOREWORD><BR/>
    • 序文</PREFACE>--></PREFACE><BR/>
    • 序論</INTRO>--></INTRO><BR/>
  2. 体部(<BODY>)
    • 体部</BODY>--></BODY><BR/>
    • 見出し字句</CAPTION>--></CAPTION><BR/>
    • 章 </CHAPTER>--></CHAPTER><BR/>
    • 節 </SECTION>--></SECTION><BR/>
    • 項 </PARA0> --></PARA0><BR/>
    • 段落 </PARA> --></PARA><BR/>
    • 副段落1 </SUBPARA1>--></SUBPARA1><BR/>
    • 副段落2 </SUBPARA2>--></SUBPARA2><BR/>
    • 副段落3 </SUBPARA3>--></SUBPARA3><BR/>
    • 手順1 </STEP1> --></STEP1><BR/>
    • 手順2 </STEP2> --></STEP2><BR/>
    • 手順3 </STEP3> --></STEP3><BR/>
    • 手順4 </STEP4> --></STEP4><BR/>
    • 手順5 </STEP5> --></STEP5><BR/>
    • 手順6 </STEP6> --></STEP6><BR/>
    • 手順7 </STEP7> --></STEP7><BR/>
  3. 後部(<REAR>):文書又は部の下位構造となる。
    • 後部</REAR>--></REAR><BR/>
    • 附属書</APPENDIX>--></APPENDIX><BR/>
    • 用語集</GLOSSARY>--></GLOSSARY><BR/>
      </DEFLIST> --></DL><BR/>(Dの用語集参照) </TERM> --></DT><BR/>(Dの用語集参照) </DEF> --></DD><BR/>(Dの用語集参照)
    • 索引</INDEX>--></INDEX><BR/>
C)SGML/XMLの順序付き並び及び順序なし並びのHTMLへ対応 D)表(ROW,ENTRY)は,HTML4-TABLE(TR,TD)へ変換する。 備考 将来,CALS-TABLEが多くの閲覧系によって支持された環境に      なれば,この変換は不要になる。 C)図形 <GRAPHIC>--><IMG> なお図形への結合は,文書外で支援する(UNIXの記号結合を利用)。 D)用語集(GLOSSARY)   HTMLの用語集(DL,DT,DD)とする。  E)省略タグの禁止。 F)見せる内容と見せない属性値とを分離して,見せたい項番号   は,属性ではなく<CAPTION>配下で内容情報に置き直した。 G)その他は,NCALS-DTD(SGML)のとおりである。

3. XSLによる割付け(参考)

  1. 試験範囲 ここで示したXML-DTD適合文書にXSLによる体裁を作用させ,実時間で,HTML 変換してMS-Internet Explorer 5.0で表示する例を示す。 ここでは,次の機能のXSL記述例を提示する。 A)文面(text) フォントの指定,段落での改行 B)表組み HTML表の表示 C)写真 JPEG符号化形式の写真の再生 これは,WWW閲覧系が支援する符号化方式(例:GIF,MPEG)であれば 他の形式でもよい。 D)投錨 錨(anchor)機構 E)順序付き並び(ordered list) F)順序なし並び(unordered list)
  2. 対象ファイル XML文書(xslTest19.xml) このXML文書から,XML-DTD19及び体裁xslTest19.xslを呼出す。

3. XML文書の効用

A)SGML-NCALS-DTD適合文書は,タグが沢山あり,表示しても意味   を読むには不便であったが,XML変換することによって,表示   して読むことが可能となった。 前のsection2.の例のように,割付け体裁をXSLで記述すれば,SGML-Viewer はなくても,MS-IE5.0によって,割付け表示できる。  B)データベース中と表示中の文書が同じでよくなった。 SGMLの構造タグ,内容タグを温存しながら,表及び絵の割付け タグをももたせることができる。 実際に,XML文書実現値=SGML部分集合+ HTML3部分集合となった。
参考 これらのXML構文検査は,1998年12月に,Microstar社のNear&Far(Designer 3.0) によって,実施した。更に,1999年5月に,Microstar社のAElfred (Java版)によって,構文検証を実施した。 XSL構文検査は, MS-Internet Explorer 5.0によって,実施した。