Copyright (C) 1995 Nihon Unisys,Ltd.

14. 適合


14.適合の案内

14.1 適合SGML文書 14.2 適合SGML応用 14.3 適合SGMLシステム 14.4 SGML検定構文解析系 14.5 文書提供 14.6 システム宣言(式200~204) SGML規格の最初へ戻る。

14.1 適合SGML文書

 この規格のすべてに従ったSGML文書を,適合SGML文書という。

14.1.1 基本SGML文書

 適合SGML文書であって,その全体にわたって規格 参照具象構文を使い,規格参照容量集合を使っていて,しかもSHORTTAG及びOMITTAGの 機構使用だけを行っている文書を,基本SGML文書という。 備考 基本SGML文書に対する典型的なSGML宣言を,
表8及び表9に示す。基本SGML文 書どうしでは,その文書文字集合引数が違いうるだけである。

14.1.2 最小SGML文書

 適合SGML文書であって,その全体にわたって規格参照具象構文を使い, 規格参照容量集合を使っていて,しかも機構使用を行っていない文書を,最小SGML 文書という。

14.1.3 変形適合SGML文書

 適合SGML文書であって,変形具象構文を使っている文書を,変形適合SGML文書という。

14.2 適合SGML応用

 
14.2.114.2.3の要件を満たすSGML応用を,適合SGML応用という。

14.2.1 応用規則

 適合SGML応用の応用規則は,この規格が応用に委ねた事項だけに関与するもので なければならない。 備考 例えば,要素及び実体についての命名の方法,構文参照文字集合にないデー     タ文字を直接に書くことを禁じて文字参照として書くように要求した内容に     関する規則など。

14.2.2 文書の適合性

 適合SGML応用は,その扱う文書について,適合SGML文書となっていることを要求 しなければならず,この規格が適合SGML文書に許容するどんなマークも禁止しては ならない。 備考 例えば,応用規則を設けて,特定の最小化機構だけを使うことを推奨しても 差し支えないが,この規格が許容する他の機構を禁止してはならない。

14.2.3 文書提供の適合性

 適合SGML応用は,文書提供に関して,この規格が規定する要件(
14.5参照)を満た していなければならない。

14.3 適合SGMLシステム

 
14.3.114.3.6の要件を満たすSGMLシステムを,適合SGMLシステムという。 備考 適合SGMLシステムは,最小SGML文書が処理できるSGMLシステムとなる。

14.3.1 文書提供の適合性

 適合SGMLシステムは,文書提供に関して,この規格が規定する要件(
14.5参照)を 満たしていなければならない。

14.3.2 システム宣言の適合性

 適合SGMLシステムは,そのシステムでのシステム宣言(14.6参照)と矛盾しない 限り,どんな適合SGML文書も処理できなければならない。 備考 この規格はデータ内容記法やシステムデータの具体的なものを規定していな いから,そのシステムがこれらを処理できなかったとしても,システムの適 合性には影響しない。

14.3.3 規格参照具象構文での処理

 適合SGMLシステムは,そのシステムが用意する変形具象構文に加えて,規格参照 具象構文で書いた文書の構文解析ができなければならない。 備考 この要件を満たすには,受け取った規格参照具象構文での文書をそのシステ     ムでの具象構文に変換してしまうことにするのでもよい。  適合SGMLシステムは,SGML文書を生成したり修正したりできる場合, 規格参照具象構文でのSGML文書も生成したり修正したりできなければならない。 備考 この要件を満たすには,文書を他に送るときにそのシステムでの具象構文か ら規格参照具象構文に変換してしまうことにするのでもよい。  適合SGMLシステムは,利用者がSGMLマークを編集できるようにしている場合, 規格参照具象構文でのSGMLマークも編集できるようにしておかなければならない。  短縮参照機構を提供していない適合SGMLシステムでは,14.3.3での“規格参照 具象構文”を“核具象構文”に読み替えてもよい。 備考1. この要件を満たすには,規格参照具象構文を処理する別のプログラム又はモ     ジュールを提供するだけでもよい。   2.
14.3.3の要件は,文書交換を規格参照具象構文に限定するものではない。文     書交換は,変形具象構文によっても可能である。

14.3.4 規格参照容量集合での処理

 適合SGMLシステムは,規格参照容量集合での容量値以下に収まっている文書を 構文解析することができなければならない。更に,SGML文書が生成できるのであれば, 規格参照容量集合での容量値以下に収まるSGML文書も生成できなければならない。

14.3.5 構文解析の一貫性

 適合SGMLシステムは,文書を操作する応用及び処理に関係なく,同じ文書を いつも同じに構文解析しなければならない。 備考1. 応用プログラムは,正規のインタフェースを介してSGML構文解析系を使い, その構文解析の状態に影響を与えられないようにしておくことが望ましい。 例えば,文を生成して,それをあたかも元の文書の一部であったかのように 構文解析させることは,できないようにしておくことが望ましい。応用開発 者に対して提供する文書では,この要件に留意することが望ましい。   2. この要件から,システムの適合性を検査するのに,すべての応用について試 めしてみる必要がなくなる。

14.3.6 応用規則

 適合システムは,その応用規則をあたかもこの規格の要求であるかのように強制して はならない。 備考 応用規則に違反しているときに警告を出しても差し支えないが,その警告は, マークの誤りに対する報告とは区別できるものでなければならない。

14.4 SGML検定構文解析系

 適合SGMLシステムのSGML構文解析系であって,
14.4.114.4.3の要件を満た すものを,SGML検定構文解析系という。 備考 適合SGMLシステムにSGML検定構文解析系がなくてもよい。したがって,その システムで検定を行うだけの余分な労力をかけるかどうかは,処理系作成者 が判断すればよい。例えば,SGML文書の検定又は整形ができる編集システム     をもっている利用者にとっては,清書システムでその文書を処理する際に検     定ができる必要がない。 14.4.1 誤りの検出 SGML検定構文解析系は,報告可能マーク誤りを検出してそれに 対する報告を出すことができなければならず,誤りがないときに報告を出してはなら ない。  SGML検定構文解析系は,選択によって,その他の報告を出してもよい。 備考 この規格は,マークの誤りに対して,その報告についての要件をどう処置す    るかを規定しない。特に,誤りのあった文をデータとして扱うべきかどうか,    誤りを見つけた後も処理を続けるべきかどうかについて,何も規定していな    い。  SGML検定構文解析系は,誤りの可能性のある状態を警告するが,誤りとしなくても よい。   モデル群中の選択字句である共通識別子が宣言されていない場合,文書中で    その要素が出現すれば,誤りとする。

14.4.2 SGML報告

 SGMLマークの誤りに対する報告を,誤りが生じる可能性を検出したときの警告を 含めて,SGML報告という。SGML報告は,そのシステムが出す他の報告と明確に区別 できるものでなければならない。

14.4.3 SGML報告の内容

 SGMLマークの誤りに対する報告は,この規格で許容する報告を含めて, その誤りが訂正できるに足る位置の情報及び種別の情報を述べていなければならない。 備考 この要件は,処理系作成者に,その利用者及びシステムからの要求に答えら れるだけの最大の自由度を残している。詳しくは,参考7を参照のこと。

14.5 文書提供

 この規格は,SGML文書が特定の応用又は構文解析系に依存することなく規格に 合致していることにそのすべての階層の利用者が注意を払うとき,初めてその目的 を達することができる。適合SGMLシステム及び適合SGML応用が提供する文書は, この注意を促すものでなければならない。

備考

 この要件は,利用者がSGMLシステムから得た知見を他のSGMLシステムにも適 用できるようにすることを意図したものであって,親しみやすく読みやすい SGML文書の作成を阻害するものではない。

14.5.1 規格表示

 提供する文書には,次の規格表示を行っておかなければならない。  規格表示は,次の(1)~(3)に対して,明確に行っておかなければならない。 (1)提供するすべての文書の表書き(通常は,表紙及び扉)の目立つ場所。 (2)プログラムの名称を表示する画面。 (3)その他,宣伝材,教材など。  応用での規格表示は,次のとおりとする。 An SGML Application Conforming to International Standard ISO 8879 -- Standard Generalized Markup Language  システムでの規格表示は,次のとおりとする。 An SGML System Conforming to International Standard ISO 8879 -- Standard Generalized Markup Language 適合SGMLシステムは,そのシステム宣言(
14.6参照)を文書として提供しなけ ればならない。

14.5.2 SGML構成要素の表示

 提供する文書では,SGML構成要素と応用規則及びシステム機能とを明確に区別し, SGML構成要素がこの規格によるものであることを明確に表示しておかなければならない。 備考 この要件は,すべてのSGMLシステムに共通する構成要素と,そのシステム特    有の構成要素とを,利用者に意識させることを意図している。これによって,    SGMLの経験者は,短い学習時間で新しいシステムや応用に対処することがで    きる。  提供するSGML構成要素については,そのシステム又は応用でその仕様を文書として 提供しない限り,その仕様としてこの規格を引用しておかなければならない。例えば, 物事を簡単にするため,特定の機構についてその一部だけを提供する(例えば,実体 宣言での選択項目を制限する。)としたら,その他の選択項目はこの規格のとおりに 使うことができることを明確に述べておかなければならない。

14.5.3 用語

 すべてのSGML構成要素は,この規格の用語を使って記述しなければならない。  提供するすべての文書は,この規格での用語を使って記述することが望ましい。 そうできない場合でも,用語は,明確に定義した上で使わなければならないし, 提供していない構成要素及びその文書で使っていない構成要素も,この規格の用 語に抵触してはならない。

14.5.4 変形具象構文

 提供する文書に変形具象構文を使うときは,その旨を明確にしておかなければ ならないし,その変形具象構文の規則がSGMLそのものであるとしてはならない。

14.6 システム宣言

  システム宣言 = mdo, “SYSTEM”,           ps+, 最小表記,           ps+, 文書文字集合,           ps+, 容量集合,           ps+, 機構使用,           ps+, 具象構文範囲,           ps+, 提供具象構文,           ps+, 検定能力,           ps+, SDIF能力,           ps*, mdc ―(200)  システム宣言は,そこに使う具象構文及びデータ文字について,SGML宣言と同じ構文上 の要件を満たしていなければならない。  システム宣言の最小表記の最小データは,次のとおりとする。 ISO 8879-1986  システム宣言の文書文字集合は,SGML宣言の場合と同様の方法で指定しなけれ ばならない。ただし,文書についての文書文字集合ではなく,そのシステムの文 書文字集合を指定しなければならない。システム宣言の文書文字集合は,その提 供具象構文引数に記述するすべての具象構文のすべての重要なSGML文字に対して, 単一のビット組合せの符号化表現を含んでいなければならない。  システム宣言の容量集合引数は,SGML宣言の場合と同様の方法で指定しなけれ ばならない。ただし,文書についての容量要求ではなく,そのシステムの容量値 を指定しなければならない。  システム宣言の機構使用引数は,SGML宣言の場合と同様の方法で指定しなけれ ばならない。ただし,文書が使っている機構ではなく,そのシステムが提供する 機構を指定しなければならない。  システム宣言の具象構文範囲引数は,SGML宣言の場合と同様の方法で指定しな ければならない。ただし,文書が二つの具象構文を使っていることを示すのでは なく,そのシステムで二つの具象構文が使えることを示すものでなければならない。 備考 システム宣言には,そのシステムが処理できるシステムデータの形式やその データ内容記法を注釈として書いておくことが望ましい。 14.6.1 提供具象構文 この引数は,そのシステムのSGML構文解析系が構文解析する ことのできる具象構文又はその許容する変更点を指定する。   提供具象構文 = (ps+, 具象構文,           (ps+, 具象構文変更点)? )+ ―(201)  提供具象構文の具象構文引数は,SGML宣言の場合と同様で,必ず指定しなければ ならず,構文解析できるそれぞれの具象構文について指定しなければならない。 その指定する具象構文の一つとして,どんな具象構文に対しても短縮参照を許容す るならば規格参照具象構文を,そうでなければ核具象構文を含まなければならない。

14.6.1.1 具象構文変更点

 この引数は,そのシステムが提供する具象構文に若干の変更を加えた具象構文のうち, そのシステムが構文解析することができるものを指定する。
  具象構文変更点 = “CHANGES”, ps+,            (“SWITCHES”|            (“DELIMLEN”, ps+, , ps+,            “SEQUENCE”, ps+, (“YES”|“NO”), ps+,            “SRCNT”, ps+, , ps+,            “SRLEN”, ps+, ) ) ―(202)  具象構文変更点での見出し語の意味は,次の(1)~(5)のとおりとする。 (1)SWITCHES SGML宣言の“SWITCHES”引数で指定することができる変更を 許容する。 (2)DELIMLEN 一般区切り子機能に対して,その後ろに指定した数の値(1以上とする。  )以下の長さの文字列を割り当ててもよい。 (3)SEQUENCE 短縮参照区切り子の中に空白列があってもよい。“YES”の場合には, 短縮参照区切り子の中の空白列を長さ1の文字列として扱う。 (4)SRCNT 短縮参照区切り子に,その後ろに指定した数の値(0以上とする。)以下 の長さの文字列を割り当ててもよい。 (5)SRLEN 新たに短縮参照区切り子に割り当てる文字列の長さが,その後ろに指定し  た数の値(1以上とする。)以下でなければならない。

14.6.2 検定能力

 検定能力引数は,そのシステムにSGML検定構文解析系があるかどうかを指定し, 更に,この規格で任意選択としている検定能力についてどれを備えているのかを 指定する。
  検定能力 = “VALIDATE”,         ps+, “GENERAL”, ps+, (“NO”|“YES”),         ps+, “MODEL”, ps+, (“NO”|“YES”),         ps+, “EXCLUDE”, ps+, (“NO”|“YES”),         ps+, “CAPACITY”, ps+, (“NO”|“YES”),         ps+, “NONSGML”, ps+, (“NO”|“YES”),         ps+, “SGML”, ps+, (“NO”|“YES”),         ps+, “FORMAL”, ps+, (“NO”|“YES”) ―(203)  検定能力での見出し語の意味は,次の(1)~(9)のとおりとする。 (1)NO その検定能力を備えていない。 (2)YES その検定能力を備えている。 (3)GENERAL マークの誤りを検出し報告する能力。 (4)MODEL あいまいな内容モデルを報告する能力。 (5)EXCLUDE 内容モデルについて,字句が文脈上必すであるか任意選択であるかを変  えてしまう排除要素の指定を報告する能力。 (6)CAPACITY 容量についての超過を報告する能力。 (7)NONSGML 非SGML文字が一つでもあったとき,それを報告する能力。 (8)SGML SGML宣言の中での誤りを報告する能力。 (9)FORMAL 公的公開識別子の誤りを報告する能力。 14.6.3 SDIF能力 SDIF能力引数は,そのシステムがISO 9069によるSGML 文書交換様式(SDIF)に従った文書の交換能力を備えているかどうかを指定する。   SDIF能力 = “SDIF”,         ps+,“PACK”, ps+,(“NO”|(“YES”,(ps+,“ASN1”)?)),         ps+,“UNPACK”,ps+,(“NO”|(“YES”,(ps+,“ASN1”)?))          ―(204)  SDIF能力での見出し語の意味は,次の(1)~(5)のとおりとする。 (1)NO そのSDIFの能力を備えていない。 (2)YES そのSDIFの能力を備えている。 (3)PACK 一つ又は複数の実体からSDIFでのデータ流を生成する能力。 (4)UNPACK SDIFでのデータ流からその実体を復元する能力。 (5)ASN1 JIS X 5604によるASN.1基本符号化規則に従った能力。 14.適合の最初へ戻る。 SGML規格の最初へ戻る。