SPDL構造

SPDLインスタンスをより小さな部分に繰り返し分割していった結果 得られる階層的な構造を、SPDL構造とする。

内容の表記法が手続き型言語の形式をとるのとは反対に、SPDL構造 の指定に用いる表記法は、本質的に宣言的なものとなる。 この構造は、文書を構成する構造要素群の並び順をも示す。

階層構造

次に示す概念及び用語は、階層構造及びその構造が暗黙のうちに もつ相互関係に関連する。

構造要素

文書構造に沿って識別されるSPDL文書の各要素を、構造要素と呼ぶ。

複合構造要素

より小さな構造要素群に分割される構造要素を、 複合構造要素と呼ぶ。 複合構造要素のそれぞれについて、それを定義する箇条では、 その下位に現れうる構造要素群を規定する。

基底構造要素

それ以上小さな構造要素群に分割することのできない構造要素を、 基底構造要素と呼ぶ。

それぞれの基底構造要素は、値をもつ。 . ]]>基底構造要素の値は、で定義する型のいずれかに属する。 基底構造要素のそれぞれについて、それを定義する箇条では、 その構造要素の値の型を規定する。

下位要素及び直接の下位要素

ある複合構造要素を分割して得られる各部分を、 その複合構造要素の直接の下位要素という。

複合構造要素の直接の下位要素は、再び複合構造要素であってもよい。 このため、複合構造要素をさらに分割していった結果として、 もとの構造要素の直接の下位要素ではない構造要素が得られる場合もある。 ある構造要素を分割していくことによって得られるすべての構造要素は、 複合か基底かにかかわらず、 もとの構造要素の下位要素である又はその下位にあると言 う。

ある構造要素の直接の下位要素を参照する場合には、 常に"直接の下位要素"又は"直接の下位にある"という表現を用いる。 "下位要素"という用語がこのような修飾なしに用いられている場合、 それは任意の階層水準における下位要素を意味する。

上位要素及び直接の上位要素

ある特定の構造要素をその下位にもつ 構造要素又は構造要素群への参照がしばしば必要になる。 構造要素Bが構造要素Aの下位要素であるとき、 AはBの上位にある(又はBの上位要素である)という。 構造要素Bが構造要素Aの直接の下位要素であるとき、 AはBの直接の上位にあるという。

ある構造要素の直接の上位要素を参照する場合には、 常に"直接の上位要素"又は"直接の上位にある"という表現を用いる。 上位要素という用語がこのような修飾なしに用いられている場合、 それは、任意の階層水準において上位にある構造要素を意味する。

最も近い上位の構造要素

構造要素Aの構造又は処理に関する記述中における Aに

  • BはクラスXの構造要素である。
  • BはAの上位にある。
  • Aの上位にあり、かつBの下位にある、 クラスXに属する他の構造要素は存在しない。

    同位要素

    同じ構造要素に対して直接の下位にある構造要素群を、同位要素と呼ぶ。 互いに上位にも下位にもなく、 また同じ直接の上位要素を共有してもいない構造要素群を、 互いに無関係であるという。

    最上位構造水準

    他のいかなる構造要素の下位にもない構造要素を、 最上位構造水準にあるという。

    文書内構造要素

    文書構造要素の下位にある構造要素を、文書構造要素と呼ぶ。 事例のほとんどは "Document DPI" ]]>クラスXの構造要素であって文書内構造要素であるものを、 文書内Xと呼ぶ。

    有効範囲

    文書構造要素の有効範囲は、 文書中でその構造要素の影響を受ける部分とする。 文書構造要素の有効範囲の末尾は、 その最も近い上位ブロックの末尾とする。 文書処理の同一の側面に影響を与える二つの文書構造要素 (例えば、二つの文書作成命令)の有効範囲が重複していてもよい。 有効範囲の重複による影響は、構造処理の規定によって暗黙のうち に決る。

    ある識別子を資源又は外部構造要素に結びつける結合の有効範囲は、 文書中でその識別子を、結びつけられた資源又は外部構造要素への 参照として用いることのできる部分とする。 識別子を資源又は外部構造要素に結びつける結合の有効範囲の末尾は、 その結合を行なっている構造要素の最も近い上位ブロックの末尾とする。 そのような二つの結合の有効範囲が重複していてもよい。 有効範囲の重複による影響は、構造処理の規定によって暗黙のうち に決る。

    並び順

    SPDL構造は、階層構造に加え、 各複合構造要素の直接の下位要素群について、その並び順を定める。

    階層構造と、同位構造要素間の並び順との組合せにより、 この並び順の上で後に来る構造要素を、前方にある構造要素に続くという。 これに対して、前方にある構造要素を、後方にある構造要素に先立つという。

    並び順及び階層構造

    並び順は、次の二つの規則によって、階層構造と関連付けられる。

    • 個々の構造要素に対して、そのすべての下位要素が続く。
    • ある構造要素に対して、その任意の同位要素が先立つとき、 その同位要素のすべての下位要素もまた、もとの構造要素に先立つ。

    この結果、並び順は、 階層構造に対して"行き掛け順深さ優先(pre-order depth first)"である という特性をもつ。

    . ]]>並び順の、階層構造に対する関係の一例を、に示す。 この例では、各構造要素は箱で示され、その下位要素群と線で結ばれている。 各構造要素の直接の下位要素間における順序は、 矢印で示すとおり、左から右への順とする。 構造要素の並び順は、箱の中の数字で示す。 並び順における階層構造の関係

    提示順序

    構造要素群のこの並び順を、SPDL文書の提示順序とする。 この順序は、文書の提示に際して、 構造プロセサが構造要素群を処理していく順序となる。

    提示順序という用語は、SPDL文書内において、 構造要素群のある部分集合内の並び順を参照する際にも用いてよい。 例えば、SPDL文書の提示順序内において ページ構造要素が現れる並び順のことを、 SPDL文書内における"ページ構造要素の提示順序"という。 ページ構造要素の提示順序は、 文書内の各ページが利用者に対して提示される、その順序とする。

    ページ順序番号

    ページ構造要素には、 そのページ構造要素を文書提示の際に識別するための ページ順序番号が割り当てられる。 ページ順序番号は、 文書中におけるページ構造要素の提示順序に従って割り当てられ る。

    ページ及び面付け

    面付けプロセスは、2個以上の"論理ページ"を単一のシート上に置いてもよい。 そのような面付けプロセスは、組版割り付けプロセスの一部とする。 その結果得られるSPDL文書中では、 各ページ構造要素は、1個のシート全体の上に置かれるべき像を記述する。 これは、幾つかの"論理ページ"を含んでいてもよい。 SPDL提示プロセスは、文書を構成する論理ページに関する知識はも たず、ページ構造要素と、関連するページ像についてだけ知っている。 文書提示で用いられるページ順序番号は、ページ構造要素を参照しており、 文書の"論理ページ"と関連付けられるいかなるページ番号とも関係をもたない。

    情報オブジェクトの識別

    文書の提示時に用いられる情報オブジェクトは、 提示プロセスの環境中において、次に示すものによって識別される。

    • &isoiec8824;で構文を定義するASN.1オブジェクト識別子
    • ISO/IEC 9070で構文を定義する公開識別子
    • この規格で構文を定義する環境内名前

    これらの情報オブジェクトの幾つかはこの規格で定義するが、 それ以外はどこか他のところで定義される。

    公開オブジェクト識別子

    ASN.1オブジェクト識別子及びISO/IEC 9070で定義する公開識別子を、 公開オブジェクト識別子として参照する。

  • 公開オブジェクト識別子は、開放型情報交換において、 たとえ識別対象となる情報オブジェクトが未知の状況であっても 情報オブジェクトのあいまいさのない識別を提供する。
  • ASN.1環境中で用いられる情報オブジェクトには、 通常ASN.1オブジェクト識別子値が割り当てられる。
  • SGML環境中で用いられる情報オブジェクトには、 通常ISO/IEC 9070公開識別子値が割り当てられる。
  • 一般的には、あるASN.1オブジェクト識別子値を、 同一の情報オブジェクトを識別する ISO/IEC 9070公開識別子に変換するために用いることができる 変換又は対応付けは存在しない。 同様に、あるISO/IEC 9070公開識別子を、 同一の情報オブジェクトを識別する ASN.1オブジェクト識別子値に変換する手段も存在しない。
  • 両方の構造表現交換様式で両種の公開オブジェクト識別子を扱える ようにするため、2進構造表現交換様式ではISO/IEC 9070公開識別子の 表現を定義しており、平文構造表現交換様式ではASN.1オブジェクト識 別子の表現を定義している。 これらの表現は、この規格にだけ適用する。

    公開オブジェクト識別子の割当て

    この規格では、幾つかの情報オブジェクトについて、 それらを識別するための公開オブジェクト識別子を定める。 この規格では、そのような情報オブジェクトのそれぞれについて、 その情報オブジェクトを識別する次の両方のものを定義する。

    • &isoiec8824;で定義されたASN.1オブジェクト識別子値
    • ISO/IEC 9070で定義された公開識別子

    この規格で公開オブジェクト識別子を定める各情報オブジェクトは、 オブジェクト名を用いて識別される。 このオブジェクト名は、そのオブジェクトに割り当てられている ISO/IEC 9070公開識別子の"オブジェクト名(object name)"部分とする。 . ]]>情報オブジェクトを識別するISO/IEC 9070公開識別子 及びASN.1オブジェクト識別子値は、で定義する。

    この規格が定義する情報オブジェクトを SPDL構造のインスタンス中で識別する際には、 次のものを用いるのが望ましい。

    • 平文構造表現交換様式が用いられている場合、 ISO/IEC 9070で定義する公開識別子値を用いる。
    • 2進構造表現交換様式が用いられている場合、 &isoiec8824;で定義するASN.1オブジェクト識別子値を用いる。

    表記法

    この規格では、 公開オブジェクト識別子を用いて指定された幾つかのパラメタ値の 効果について述べている。 そのような場合、 公開オブジェクト識別子によって表されたパラメタ値は、 その公開オブジェクト識別子に対応するオブジェクト名を斜体で表記したもの (例えば、dpi:plex:simplex)を用いて表現する。

    環境内名前

    提示プロセスの環境中にある情報オブジェクトは、 環境内名前を用いて識別してもよい。 環境内名前は、ISO/IEC 9070で定義する単一のオブジェクト名部からなる。

    環境内名前は、その所有者名が"UNREGISTERED"であり、 かつオブジェクト名が単一のオブジェクト名部からなる ISO/IEC 9070公開識別子と、意味的に等価とする。 すなわち、環境内名前"objectname"は、 次に示す条件を満たす公開識別子と意味的に等価とする。

    • 所有者名は、未登録所有者接頭辞"UNREGISTERED"からなり、 所有者名部をもたない。
    • オブジェクト名は、単一のオブジェクト名部"objectname"からなる。
    環境内名前は、特定の利用領域内においてだけ意味をもつ。 この領域は、単一のシステムからなっていてもよく、 互いに関連するシステムの集合からなっていてもよく、 又は名前付けに関して一連の取決めをもつ、より広い領域からなっていてもよい。 開放型情報交換において用いられた場合、 環境内名前はあいまいなものとなってもよい。

    表現交換様式

    SPDL構造は、さまざまなプロセスによって簡単に解析できる。 これらのプロセスには、提示プロセスだけでなく、 面付けプロセス及びSPDL文書からページや ピクチャを取り出すプロセスをも含む。 さまざまな環境においてさまざまなプロセスによるSPDL構造の解析を行なうために、 ASN.1及びSGMLの両方によるSPDL構造の符号化方式が規格化されている。 この規格に適合するためには、 SPDL提示プロセスは、このいずれか一方の表現を処理できればよい。

    SPDL構造は、 プロセスがページやピクチャの像を指定する内容要素群を解釈することなく、 SPDL文書から要素を関連する属性とともに取り出すこと、 及び必要な外部資源を決定することを可能にする。 SPDL提示プロセス以外のプロセスは、いずれも、 内容表記法を処理できる必要はない。

    SPDL構造は、SPDLインスタンスの論理構造を指定する。 各SPDLインスタンスの論理構造があいまいさなく表現されている限り、 構造表現交換様式中においてすべての構造要素が明示的な表現をもつ必要はない。

    この規格は、SPDL構造を符号化するために、 次に示す二つの表現交換様式を規定する。

    • 2進構造表現交換様式と呼ばれる2進符号化。
    • 平文構造表現交換様式と呼ばれる平文符号化。

    2進構造表現交換様式は、ASN.1に基づいている。 平文構造表現交換様式は、SGMLに基づいている。 2進構造表現交換様式と平文構造表現交換様式は、完全に等価とする。 一方で表現することができる機能は、どのようなものであっても、 簡単な構文変換によってもう一方で表現することができる。

    構造表現交換様式は、すべてのSPDLインスタンスが その構造表現交換様式が基づく構造表記法の利用領域内において 自己識別的であることを保証する。

    この規格は、また、内容を構成するトークン列の符号化について、 次に示す二つの表現交換様式を定めている。

    • 2進内容表現交換様式と呼ばれる、 コンパクトな2進符号化。
    • 平文内容表現交換様式と呼ばれる、 人間可読な平文符号化。

    コンパクトさ及び解釈の効率化のために、 コンパクトで容易に解釈できるように最適化した特別な表現を使用する。

    2進内容表現交換様式は、2進構造表現交換様式とともに使用する。 平文内容表現交換様式は、平文構造表現交換様式とともに使用する。

    SPDLのインスタンス

    標準ページ記述言語(SPDL)のインスタンスは、 1個の文書を表現してもよく、 1個の資源を定義若しくは定義解除してもよく、 又は参照によって他のSPDLインスタンスに包含しうる構造要素を カプセル化してもよい。

    SPDLインスタンスは、 1個のSPDL識別子と1個の最上位構造構造要素とから構成される。 SPDL識別子は、 構造表現交換様式で用いられる構造表記法(ASN.1又はSGML) を用いて符号化されたデータ構造群の間において、 1個のSPDLインスタンスをあいまいさなく識別する。 最上位構造構造要素は、 SPDLインスタンスの最上位構造水準にある構造要素とする。

    2進構造表現交換様式

    2進構造表現交換様式におけるSPDLインスタンスは、 次に示す条件を満たすASN.1の外部型のインスタンスとして符号化される。 ASN.1関係の用語は、JIS X 5603に従った。

    • 直接参照はオブジェクト識別子 { iso(1) standard(0) 10180 external-id(0)}。
    • 間接参照はなし。
    • データ値記述子はなし。
    • 符号化は、 2進構造表現交換様式で表された1個の最上位構造構造要素からなる asn1単一形式値。

    平文構造表現交換様式

    平文構造表現交換様式におけるSPDLインスタンスは、 次に示す条件を満たすSGML文書インスタンスとして符号化される。

    • SGML文書型宣言は、文字列"<!DOCTYPE SPDL"で始まる。
    • SGML文書型宣言部分集合は、 その実体文がSGML外部実体指定からなる実体宣言だけをもつ。
    • SGML文書型宣言の後ろには、その内容として 最上位構造構造要素を平文構造表現交換様式で表現したもの をもつ単一のSGML文書要素が続く。

    最上位構造

    最上位構造構造要素は、 他のいかなる構造要素の下位にもない次のいずれかの構造要素とする。

    • 文書構造要素
    • 環境内資源構造要素
    • 包含可能構造構造要素

    注釈

    構造表現交換様式は、任意のSPDLインスタンス中に 注釈を含めることを許す。 SPDLインスタンス中に注釈を含める方法は、 そこで用いられている構造表現交換様式に依存する。 注釈は、構造処理及び内容処理のいずれにも何の影響も与えない。

    注釈は、選択されている構造表現交換様式の解析を妨げないIA5文字 列からなる。 IA5文字列は、&isoiec8824;で定義する。 IA5Stringの訳語について、8824対応のJISを調査すること。 現れても良い注釈の集合は、用いている構造表現交換様式に依存する。 注釈は、構造プロセサによって無視されるので、 SPDL文書の提示には影響を与えない。