JPH0512095A - コンピユータ・システム用階層構造データ処理情報の符号化、記憶、及び回復手段及び方法 - Google Patents

コンピユータ・システム用階層構造データ処理情報の符号化、記憶、及び回復手段及び方法

Info

Publication number
JPH0512095A
JPH0512095A JP4018152A JP1815292A JPH0512095A JP H0512095 A JPH0512095 A JP H0512095A JP 4018152 A JP4018152 A JP 4018152A JP 1815292 A JP1815292 A JP 1815292A JP H0512095 A JPH0512095 A JP H0512095A
Authority
JP
Japan
Prior art keywords
definition
data
dictionary
tree
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP4018152A
Other languages
English (en)
Other versions
JP3272014B2 (ja
Inventor
T Dora Velissaropoulos
テイー・ドーラ・ベリサロポーラス
Peter K Shum
ピーター・ケイ・シユーム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH0512095A publication Critical patent/JPH0512095A/ja
Application granted granted Critical
Publication of JP3272014B2 publication Critical patent/JP3272014B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/278Data partitioning, e.g. horizontal or vertical partitioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99932Access augmentation or optimizing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99939Privileged access
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99948Application of database or data structure, e.g. distributed, multimedia, or image

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Devices For Executing Special Programs (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【目的】 データ処理システムのデータ伝送に使用す
る、オブジェクトの変数,値、及び他の特性を指定する
定義をコンパクトにし、各種制約をなくして効率的なデ
ータ伝送を図る。 【構成】 送信情報に関するコンピュータ・サーチ可能
な定義トリーを含み、該トリーはコマンド,応答、又は
データの特性を含む最初の定義群から引出され、該特性
は構造及び値の特質及び制限を含み、前記データ等に供
給され、前記トリーは前記データ等の定義を表わし、名
称で識別されるルート・ノードを含み、該ルート・ノー
ドは前記定義トリーの型式を記述する情報(コマンド
か、応答か、データか)を含むことを特徴とする、デー
タ送信情報を処理するコンピュータ・システムに適合す
るデータ送信辞書及びそれを使用したデータ処理手段。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明はデータ処理及び記憶シ
ステムに関し、特にかかるシステムのデータ伝送に使用
する階層構造の言語構文を明示する方法及び手段に関す
る。
【0002】
【従来の技術】例えば、分散処理のようなデータ処理は
特定のフロー及び相互作用を規定する接続プロトコルを
要求する。これらフロー及び相互作用は分散処理要求の
目的及び結果を伝達する。分散環境におけるアプリケー
ションとプロセッサとの間の語義上の結合性のためにプ
ロトコルが必要である。プロトコルはフローが発生する
べきときを明示する関係者とそれらの内容との間の責任
を規定しなければならない。分散型アプリケーションは
協同するプロセッサのネットワークに亘って行われるオ
ペレーションの処理を可能にする。
【0003】クライアント及びサーバはプロトコルを組
合わせ使用して相互に情報を送信する。これらプロトコ
ルは送信し受信することができるメッセージの順序,メ
ッセージに伴うデータ,遠隔プロセッサの接続フロー、
及び外部環境から受信したデータの変換手段等を規定す
る。
【0004】クライアントはプロトコルを介してアプリ
ケーションとサーバとの間を接続する。それは次の事項
を行うことによって、その接続のアプリケーション終端
を支持する。すなわち、それは(1)遠隔接続を始動す
る、(2)アプリケーションからのリクエストを標準化
したホーマットに翻訳する。それはジェネレーション(g
eneration)(発生)として知られる、(3)応答を標準
化されたホーマットからアプリケーション・ホーマット
に翻訳する。それは解析として知られ(パーサ(parser)
は解析機能)、(4)アプリケーションが終了したと
き、又はそれがプロセッサに切換えられたときに遠隔プ
ロセッサからの連結を切る、等である。
【0005】サーバはクライアントから受信したリクエ
ストに応答する。それは次の事項を行うことによって、
その接続のサーバ端を支持する。すなわち、それは
(1)接続を受諾する、(2)入力リクエスト及びデー
タを受信してそれらを自己の内部ホーマットに変換する
(文の解析)、(3)標準化した応答メッセージ及びデ
ータを構成し、送信する等である。
【0006】とりわけ、分散データ処理アーキテクチャ
はメッセージの標準化ホーマットに対して使用される分
散データ管理アーキテクチャ(DDM)を使用する。D
DMはクライアントとサーバ間のコマンド及び応答の交
換に用いる共通のインターフェイスを構成する概念上の
骨格を与える。
【0007】定義 以下の定義は後述する本発明の理解を助けるために与え
られる。それ以上の情報は“IBM分散型データ管理ア
ーキテクチャ・レベル3(参照番号SC21−952
6)”というマニュアルに記載されている。
【0008】DSS(データ・ストリーム構造):DD
Mは異なるデータ処理システムに置かれているサーバ間
でデータ管理リクエストを通信する多層アーキテクチャ
として見ることができる。すべての情報はDDMが使用
している通信施設に適したデータ・ストリームにマップ
されたオブジェクトの形式に変換される。データ・スト
リームの構造は、他の情報間に包含する構造はリクエス
トか、応答か、又はデータ(オブジェクト構造)かどう
か、該構造は他の構造に連鎖されているかどうか、等に
関する情報を含む一組のバイトである。DDMデータ・
ストリーム構造の3つの一般的な形式は処理するターゲ
ット(目標)システムに対するすべてのリクエストにつ
いて使用される“リクエスト構造”(RQSDSS)と、リクエ
ストの処理中に検出された状態に関するターゲット・シ
ステムからソース・システムに対する応答のすべてに使
用される“応答構造”(RPYDSS)と、システム間で送信さ
れるすべてのオブジェクトに使用する“オブジェクト構
造”(OBJDSS)とがある。
【0009】メモニック(Mnemonic):オブジェクトDD
Mの完全名称の簡略形式を指定する(簡略記憶法)。
【0010】クラス(Class) :共通構造を有し、同一コ
マンドに応答する一組のオブジェクトを記述する。
【0011】コードポイント(Codepoint) :コードポイ
ント(コード・ポイント)は辞書クラスのデータ表示を
指定する。コードポイントはDDMアーキテクチャの名
称付言語のための16進法同義語である。コードポイン
トはメモリー及びデータ・ストリームにおけるオブジェ
クトのクラスを識別するために要求されるバイト数の減
少に用いられる。
【0012】コマンド:コマンドはあるサーバによる機
能の実行をリクエストするため、そのサーバに送信する
メッセージである。例えば、“ Get Record”コマンド
はファイル・システムに送信することができる。各DD
Mコマンドは、通常、1又は1以上の応答メッセージ又
はデータ・オブジェクトを返信する。
【0013】コマンドDDMは以下4つの主題に基づき
記述可能: 1.記述:記述部は、通常、コマンド名又は“OPNQRY”
のようなコマンドの略名と、“Open Query”のようなコ
マンドの機能を説明する拡張名とを含む。
【0014】2.パラメータ:パラメータ又は列挙する
変数はコマンドのパラメータとして送信することがで
き、又は送信されなければならないオブジェクトを記載
する。パラメータはそれらのクラス・コードポイントに
よって識別されるのでいかなる順序で送信することもで
きる。パラメータは、全体的に一組の属性(特性)と共
同する。
【0015】(a)要求された、選択的な、又は無視可
能。要求されたという属性はパラメータの使用又は支援
が要求されるということを指定し、コマンドのパラメー
タ・リストに要求されているとパラメータが指定された
とき、そのパラメータはそのコマンドを送信しなければ
ならない。コマンドを支援するすべての受信者は規定ど
うりにパラメータを認識し、処理しなければならない。
応答メッセージのパラメータ・リストに指定されている
と、そのパラメータは該応答メッセージのために送信さ
れなければならない。すべての受信者は該パラメータを
受諾しなければならない。選択的属性はパラメータの使
用又は支援が選択的であるということを指定する。パラ
メータがコマンドのパラメータ・リストに選択的と指定
されると、該パラメータはそのコマンドに対し選択的に
送信することができる。該コマンドを支援する全受信者
は規定どうりにパラメータを認識し、処理しなければな
らず、そして送信されなかった場合、不履行値を使用し
なければならない。パラメータ、応答メッセージのパラ
メータ・リスト内に指定されると、該応答メッセージの
ために選択的に送信されることが可能である。全受信者
がそのパラメータを受諾しなければならない。無視可能
な属性は、受信者が支援リクエストを供給しなかった場
合、コマンドの受信者はパラメータを無視することがで
きるということを指定する。すべての発信者はパラメー
タを選択的に送信することができる。全受信者はパラメ
ータを認識しなければならないが、企画された不履行値
を支持することを要求されず、指定した値を有効としな
くてもよい。
【0016】(b)反復可能又は反復不能:反復可能属
性はそのオブジェクト変数の値でパラメータを繰返すこ
とができるということを指定する。リストの要素は特有
であるか、順序があるかということは要求されない。
【0017】(c)長さ(length レングス)特性:これ
は対応するデータ送信の長さ要求又は制限について記載
する。
【0018】3.コマンド・データ:コマンドと共同し
うるすべての可能性のあるクラスのデータ・オブジェク
ト(例えば、記録)である。各データ・オブジェクトは
普通、パラメータの如く、一組の属性(特性)と共同す
る。
【0019】4.応答データ:応答データ部はコマンド
のために返送することができるすべての可能なクラスの
データ・オブジェクトを列挙する。該リストは返送すべ
きデータ・オブジェクトの選択についての注釈を含むこ
とができる。応答データ・オブジェクトは通常コマンド
のために返送される。例外状態が発生したとき、応答デ
ータ・オブジェクトは返送されなくてよいが、その代り
応答メッセージは例外状態の説明を返信することができ
る。
【0020】全DDMコマンドは送信前にRQSDSSに封入
可能:RQSDSS(command(コマンド・パラメータ))
【0021】全DDMコマンド・データ・オブジェクト
及び応答データ・オブジェクトは送信用OBJDSS構造に封
入しうる:OBJDSS(command-data-object(オブジェクト
・パラメータ)) OBJDSS(reply-data-object(オブジェクト・パラメー
タ))
【0022】全DDMコマンド応答は送信用RPYDSS構造
に封入しうる:RPYDSS(command-reply(応答パラメー
タ))
【0023】解析(Parsing) :DDMストリング(DD
Mストリーム)の統語上の修正を照合し、それを識別し
うる内部ホーマットに翻訳する処理。
【0024】ジェネレーション(generation):内部ホー
マットから有効なDDMストリングを創成する処理。
【0025】トリー(Tree):トリー構造(樹形構造)は
(a)空(empty) 構造か、(b)非循環のトリー構造で
ある多数のサブトリーを有するノードか、のいずれかで
ある。ノードx直下のノードyはxのディセンダント(d
escendant,子孫)と呼ばれ、xがレベルiにあり、yが
レベルi+1にあると、xはyのペアレント(parent,
親)であり、yはxのチャイルド(child, 子)であり、
xはyのアンシスタ(ancestor,先祖)という。トリー
(木)のルート(根)はペアレントのない単なるノード
である。ノードがディセンダントを持たない場合、それ
はターミナル・ノード又はリーフ(樹形構造の葉)と呼
ばれる。ターミナル・ノードでもルート・ノードでもな
いノードは内部ノードである。
【0026】DDMアーキテクチャ辞書:アーキテクチ
ャ辞書はオブジェクトの一組の名称付記述を記載する。
辞書に列挙された初期的オブジェクトは“CLASS"(クラ
ス)及び“HELP”(ヘルプ)というクラスに分割され
る。これらオブジェクトの各々はその捜出に使用するこ
とができる外部名称及び外部コードポイントを有する。
多くのサブオブジェクトの複雑なオブジェクト(ネステ
ッド・コレクション,nested collection)がある。辞書
のエントリの長さは変化し、その各々は単一の完全なオ
ブジェクトを含む。スカラ・オブジェクトのために、オ
ブジェクトの全データはオブジェクトの長さ及びクラス
・コードポイントの直後に続く。コレクション(集合)
・オブジェクトのために、長さ及びクラス・コードポイ
ントに続くコレクション・データはコレクションを記憶
する辞書のエントリ番号を指定する4バイト・バイナリ
数から成る。DDMアーキテクチャ辞書は、又DDMア
ーキテクチャ書類とも呼ばれる。
【0027】DDMアーキテクチャ:DDMアーキテク
チャはDDMアーキテクチャ辞書に完全に記載されてい
る。
【0028】森(Forest):トリーの集合群。
【0029】パラメータ:図1に示すように、3種のD
DMオブジェクトがある。第1に、単一の数又は単一の
文字ストリングのような1つのDDMデータ・クラスの
単一事項のみを含む簡単なスカラである。長さ、アライ
メント,及び尺度のようなDDMの属性は簡単なスカラ
である。
【0030】次に、DDMデータ・クラスの識別、要
素、及び他の属性を指定する外部デスクリプタによって
バイト・ストリームにマップされた該クラスの一連の事
項を含むマップド・スカラがある。
【0031】最後に、一連のカスラ及びコレクション・
オブジェクトを含むコレクションがある。DDMコマン
ドはメッセージに応答し、属性リストはコレクション・
オブジェクトのすべての例である。
【0032】すべてのオブジェクト(パラメータを含
む)は下記ホーマットを有する隣接バイト・ストリング
として送信: (a) 2バイト・バイナリ長。オブジェクトの長さフ
ィールド(length)は常に長さフィールドの長さと、コー
ドポイント・フィールドの長さと、オブジェクトのデー
タ値の長さとを含む。
【0033】(b) オブジェクトを説明するクラスの
コードポイントを指定する2バイト・バイナリ値。すべ
てのオブジェクトはオブジェクトの変数を指定し、それ
に対しオブジェクトが応答しうるコマンドを指定し、メ
ッセージに応答するようプログラミングを供給するオブ
ジェクト“CLASS"の事項である。
【0034】オブジェクトのデータ領域は、数及び文字
ストリングのようなオブジェクトか又はコレクションの
要素オブジェクトの基本的クラスのデータ値から成る。
パラメータはスカラかコレクションのどちらでもよい。
【0035】DDMオブジェクトのクラスはそのパラメ
ータを説明するので、それによって図2に示すように変
換データ・ストリームの形成を規定する。これは1メッ
セージから他のメッセージへ複数スカラ・パラメータか
らなるコマンドを送信することを可能にする。
【0036】定義(Definition) :データ処理構造に対
して使用される定義及びここでいうオペレーションは属
性リストを有する名称を連想する。定義はオブジェクト
の変数,値及び他の面の特性の指定に用いられる。
【0037】データベース管理システム(DBMS):それが
管理するデータを説明するカタログを有するソフトウェ
ア・システム。そこに記憶されているデータに対するア
クセスを制御する。DBMSは又データの完全性を保護する
トランザクション管理及びデータ回復機能を有する。
【0038】SQL(構造化された質問言語):データ
ベースのデータをアクセスするためデータベース管理シ
ステムに使用される言語。
【0039】デプス・ファースト・サーチ(Depth Firsy
Search):トリーの組織的な訪問ノードを意味する。そ
の順序は、(1)ルート・ノードを訪問し、(2)ルー
ト・ノードのチルドレンを訪問し、(3)チルドレンを
訪問するようそのチルドレンを選択し、それらを順次訪
問する。一般に、同一レベルかそれ以下における他の代
替物は訪問している現在のノードがターミナル・ノード
でない限り無視される。デプス(深さ)ファースト・サ
ーチを実現するための1つの方法を図3に示す。
【0040】対応する擬似コード: 1.ルート・ノードから成る1要素キュー(待行列)を
形成する。 2.キューが空になるまでキューから第1の要素を除去
し、存在する場合、キューの前に第1の要素のチルドレ
ン(children)を加える。
【0041】ブレッヅ(幅)ファースト・サーチのよう
な他の型のサーチが可能である。ブレッヅ・ファースト
・サーチのノード間の弧の数によって測定され、開始ノ
ードに近いためにノードを拡張する。
【0042】アプリケーション・リクエスタ(Applicati
on Requester;AR):遠隔の関係するデータベース管理シ
ステム(DBMS)に対するリクエスト源であり、ARはクラ
イアントと考えられる。
【0043】アプリケーション・サーバ(AS):AS
からのリクエストの目標であり、ASサイトのDBMSはデ
ータを提供する。ASはサーバと考えられる。
【0044】IBM分散データ管理(DDM)言語の説
分散データ管理(DDM)アプリケーション(IBM刊
行物“IBM分散データ管理アプリケーション・レベル
3:参照番号SC21−9526”に記載されているよ
うな)は分散アプリケーション用標準化言語を記述す
る。この言語は他方からデータ・サービスをリクエスト
するため、現存するシステムのデータ管理成分によって
使用される。それは異なる種類の現存システム間におけ
るデータ交換、同一種類のシステム間の効率的データ交
換,新システムに対する共通のデータ管理設備、及び新
型式のデータ管理の展開等を取扱う。DDMは全く異種
の実在するオペレーティング・システムの実行間のギャ
ップを橋渡しするに必要な概要モデルを提供する。DD
M分散データベース・モデルによって提供される幾つか
のサービスは: (a) 遠隔データベースとの接続を設定すること; (b) データベースにそのアプリケーションに特定の
アクセス法(パッケージ)を創作し、又はデータベース
からそれらを除去すること。これらパッケージはアプリ
ケーション・リクエスタによって規定されたSQLステ
ートメントの入力及び出力のために使用されるアプリケ
ーション変数の定義を含む; (c) 応答設定データの記述を回復(読出)するこ
と: (d) データベース・パッケージに拘束されているS
QLステートメントを実行すること; (e) データベースのSQLステートメントをダイナ
ミックに準備し、実行すること; (f) アプリケーション・リクエスタとデータベース
間の作業境界の一貫した単位を維持すること; (g) データベースとの接続を終結すること、などで
ある。
【0045】DDMオブジェクトの詳細 DDMアーキテクチャはDDMの概念,構造、及びプロ
トコルを記述するタームの“辞書”によって規定され
る。それらは又同義語的にタームとも呼ばれる。図4及
び図5はDDMオブジェクトのサンプルである。同図の
オブジェクトはEXCSATRD(Exchange Server Attributes
Reply Data) である。オブジェクトEXCSATRDについてそ
れ以上の情報を得たい場合は、EXCSATRDを形成するオブ
ジェクトを見るべきである。例えば、EXCSATRDのパラメ
ータを構成するオブジェクトEXTNAM,MGRLVLLS,SRVCLSN
M,SRVNAM,及びSRVRLSLVはそれら自体がDDMオブジェ
クトであり、アルハベット順にアーキテクチャ(アーキ
テクチャ辞書)の別の場所で見出すことができる。どの
オブジェクトも変数“help”を有する。この変数は追加
の情報のためのものであり、オブジェクトの目的及び語
義を説明する。DDMアーキテクチャを参照する書類と
してのDDMコマンドの他の例は図6乃至図8に示して
いる。
【0046】オブジェクト指向言語同様、DDMはそれ
をオブジェクト指向にする3つの特性を有する。それら
は、エンカプスレーション(encapsulation) ,インヘリ
タンス(inheritance) 、及びポリモフィズム(polymorph
ism)である。
【0047】エンカプスレーションは厳格な外部インタ
ーフェースを規定することによって、別個に書かれたオ
ブジェクト間の相互依存を最少にする方式である。DD
Mはこの概念を使用して、アーキテクチャの一部である
各オブジェクトのクラス(オブジェクトである事項)を
規定する。ほとんどのDDMオブジェクトのクラスは属
性inscmd(インスタンス・コマンド),clscmd(クラス
・コマンド),insvar(インスタンス変数),clsvar
(クラス・インスタンス変数)等の属性を有する。それ
に加え、他の属性、すなわち長さ(Length,レングス)及
びクラス(Class)がある。
【0048】レングス(Length)はオブジェクトの長さ又
は寸法を示す。ほとんどのオブジェクトに関連する2つ
の長さ属性がある。その1つはヘルプ文を含み全オブジ
ェクトのクラスが送信されるべきであったかどうかの事
実を参照する概略長さであり、属性で指定した長さと同
じ長さである。これは常に、その概略性のため不確定を
表わす“*”がある。第2の長さ属性はインスタンス変
数リストの一部である。それはプロトコルの一部として
送信されるときにオブジェクトの長さを指定する。ある
オブジェクトの長さは定義のときに明らかに“固定”で
ある。しかし、ほとんどのオブジェクトはその使用に従
って定められる可変長である。かくして、これらオブジ
ェクトはオブジェクトの送信時においてのみ使用可能な
長さを有する。
【0049】クラス(Class) はクラス名又はコードポイ
ントを表示する。各オブジェクト・クラスはその型式を
簡単に記述する名称を有する。各オブジェクト・クラス
は、又より効果的な(送信のため)名付け方法及び交換
可能なコードポイントを有する。この属性は各オブジェ
クト・クラスごとに2回指定される。最初は概略説明と
して、次にインスタンス変数リストの一部(16進数に
より)として指定される。あるDDMオブジェクトは送
信されるときに自動的に説明はしない。すなわち、これ
らオブジェクトは送信されたとき、受信者が前後の関係
から認識することができる。これら属性はDDMによる
オブジェクトのために規定されたとしても、受信者によ
るオブジェクトの認識のために本質である長さ及びコー
ドポイントは送信されない。
【0050】次に第2の特性について説明する。インヘ
リタンスは現存するクラスから構築されるべき新たなよ
り専門的クラスを可能にする方式である。DDMはイン
ヘリタンス構造を使用して定義の再使用可能性(そして
実施がオブジェクト指向であれば、ついにはコードとな
る)を促進する。例えば、クラス“ COMMAND”はすべて
のクラスの上級クラスである。サブクラスは上級クラス
からその構造を引き継ぐ。
【0051】第3の特性であるポリモフィズムは同一コ
マンドが異なるオブジェクト(異なるように応答する)
によって理解することを可能にする方式である。
【0052】本発明においては、次のものが使用され
る。 N:辞書のタームの数(トリーの数), m:拡張したDDMコマンド又は応答メッセージ(トリ
ーのノード数)の合計ノード数, k:最上レベル・ノードの数,ここで説明する特定の応
用では約N/10, j:ノード当りのチルドレンの平均数。
【0053】他の方法 この説明では、緩結合ファイル(LCF)及びルート記
憶方法(RSM)を含む階層構造の言語記憶及び回復法
の他の方法を説明する。
【0054】緩結合ファイル(LCF) DDMモデルは処理から辞書を分離するということが与
えられ、LCFの設計はマクロス(macros)によって発生
しうるスタティック・データ構造のコレクションによる
DDM辞書を表わす。各DDM辞書はアセンブリされ、
別個の負荷モジュールに連結編集される。DDMオブジ
ェクトの分離はサーチの理由から(a)オブジェクト名
(文字ストリング)、及び(b)辞書の識別性が要求さ
れる。辞書はすなわちノードのネットワークから成るD
DM書類作成の構造と極く類似している。かくして、D
DM書類作成に精通すると、DDM概念(スカラ,コレ
クション,コードポイント)をLCF DDM辞書に相
関することができる。
【0055】LCF回復方法:しかし、各DDMオブジ
ェクトに1つの定義があるので、オブジェクトを発生す
るべき又はその存在を認識するべき要求はその1つの定
義に依存することになる。かくして、LCFはDDM辞
書によって全体的に駆動される発生及び解析法を創作す
る。最初作成されるべきDDMオブジェクトは適当な辞
書内でオブジェクトの定義を分離する。そこで、オブジ
ェクトがコレクションの場合、長さ及びコードポイント
属性をスタックに“押し込み”、コレクションのインス
タンス変数すべてを通して反復可能に進行し、スカラ
(リーフ又はターミナル・ノード)に遭遇したときに停
止する。スカラ(ターミナル・ノード)に到達したと
き、ジェネレータ・ルーチンは呼出され、スカラの長さ
及びコードポイントとスカラ値とをスタックに対して
“押し込む”。長さはより高いレベルで呼出者(インボ
ーカ)に戻される。この方式において、コレクションの
すべてのインスタンス変数が処理されたとき、コレクシ
ョンの長さは個々の呼出しから戻された長さの和であ
る。下記の例は走行時に定義を設定するLCF擬似コー
ドを示す。ここで再帰(recursion) が使用され、再帰の
ない他の方法(すなわち、再帰は擬似される)を図9に
示す。
【0056】 Newdef LCF Construct (コードポイントにおいて) (* 定義を構成するLCF方法* ) コードポイントによって識別されるファイルのためのサ
ーチ そのパラメータ(又はインスタンス変数)すべてのため
のスキャン, if any If 何かがある then Do; インスタンス変数のためのファイルをスキャン Do インスタンス変数すべてのため Definition=Definition+ LCF Construct (コードポイント) End Do ; End If ; End LCF Construct ;
【0057】LCFフローを例示し、辞書アクセスのイ
ンパクト及びパス・レングスの再帰に関するある見識を
与えるため、構築されるべき定義トリーを示す図10の
例示を考慮する。LCFフローはこのトリーのために1
3ファイルを保持する。又、LCFフローを例示し、辞
書アクセスのインパクト及びパス・レングスの再帰に関
するある見識を与えるため、図11に示す例を考慮す
る。
【0058】故に、LCFは各ファイルを回復し、各フ
ァイルのパラメータを順次サーチ又は検索し(サーチの
主題は可変長文字ストリングか、又は上例のRDBNAMのよ
うなDDMメモニック(Mnemonic)である)、次に、捜出
された各パラメータに対するファイルを取得し、そのパ
ラメータを抜出す。これは再帰法である。この再帰ステ
ップはDDMストリームをジェネレータ又は解析するこ
とを希望する各ラン(走行)時において行われる。これ
は、DDM辞書定義を構成するための方法は全ファイル
を完行する徹底的サーチであることを意味する。故に、
定義を構成するために、LCFはm回復を要求し、各回
復によりパラメータを捜出するための順次サーチがあ
る。
【0059】LCF記憶方法:LCFは図6乃至図8に
示すホーマットに従い、各DDM定義をファイルに記憶
する。これは、各タームは解析及びジェネレータ処理に
より必要とされないという情報と共に別のファイルに記
憶されるということを意味する。又、そのインスタンス
変数は同一形式等で記憶される。
【0060】LCFに対する記憶の要求は辞書において
ターム当り約1000+100mバイト、すなわち内部
ノード当り1000バイトの総体+100バイトを推定
している。故に、全辞書のための記憶要求は約(100
0+100m)Nである。
【0061】ルート記憶法 ルート(Root)記憶法(RSM)は、適当な実現方式(nes
tedCASE statements,CASE within CASE within CASE)
によってDDMオブジェクトの定義構造の再帰の様相に
接近し、シミュレーションする。この指示を与えて、D
DM辞書内に規定されたオブジェクトは与えられた型式
のオブジェクトに全体的に除去され、又は制限すること
ができる。RSMはサーチの主題の要素として辞書識別
要素をまず除去することによりDDM辞書を再構成し、
故にすべての辞書は共に併合される。次に、辞書の検索
主題は文字ストリングからコードポイントに変更され
る。文字ストリングはなお辞書内に維持される。最後
に、辞書内に規定されるオブジェクトはルート・ノード
のみに制限される。かくして、DDMコマンド,コマン
ド・データ、応答メッセージ及び応答データのみが規定
される。しかし、いかなる与えられたDSS(又はパラ
メータ)のその構成するインスタンス変数も、コレクシ
ョン又はスカラも規定されない。
【0062】RSM回復方法 オブジェクトが一度識別されてリクエストを満足する
と、各ルート・レベル・オブジェクトのため、独特なル
ート・レベル・オブジェクト・ジェネレータが現れ、そ
れが1つの完全なオブジェクトを発生させる。オブジェ
クト・ジェネレータはオブジェクトを構成するインスタ
ンス変数(コレクション及びスカラ)を非再帰的に構成
する。従って、ジェネレータはそのオブジェクトを構成
するすべてのインスタンス変数のジェネレーションに固
有の再帰をシミュレートしなければならない。図12は
CASE uithin CASE法を示す。図13はRSMオブジェク
ト構造の流れ図である。この試みにより、DDM辞書
は、そのオブジェクトがスタティック・データ構造内に
規定され、その構成するインスタンス変数は固定符号化
(又はハードコード化)されるように区画される。この
方法において、各種パラメータの定義は複数回ハードコ
ード化されること、及びこの方法はDDMのすべての可
能性ある変化に対して拡大されないということに注意を
要する。例えば、CASEステートメントが許されたネステ
ィングのレベル数には制限がある。
【0063】ACCRDBRM用定義を構成するため(図10の
ように)、RSMは図14に示すステップを実行する。
【0064】定義を構成するため、Log N対ベース2に
比例した1つのretrieval with cost 、及びm CASE st
atement を実行しなければならない。かくして、RSM
はルート・タームの定義を回復する。その後、パラメー
タの拡大が手順の中にハードコード化される。この方法
は、実施方式(すなわち、CASE within CASE…等)によ
るDDMオブジェクト・ジェネレータの再帰様式に接近
する。プログラミング言語の制限のため、可能性のある
CASE statementsのそのように多くのネスティング・レ
ベルのみがある。これはハード限定であるように見え
る。DDMを更に多くのレベルに拡大すると、RSMは
その有益性が排出される。DDMストリングがネスティ
ング限界を越えた深さ(デプス)に達すると、コードの
再設計を行わなければならない。その上、この方法は、
DDMがスタティックでないため、解析に十分適してい
ない。DDMストリングを解析するとき、トリーのDD
Mタームの各レベルにおけるパラメータはいかなる順序
に現われてもよい。CASE within a CASE…はすべての可
能性あるパラメータの順序の組合わせは与えない。又、
辞書のパラメータの各発生のため、それに関連する語義
上の手順が複製される。プログラムはハードコード化さ
れ、故に維持が難かしい。大きさが増大するため、プロ
グラムはより複雑となる。プログラムを維持するため、
各時の再コンパイルを実行する。従って、DDMターム
の定義を得るため、トップ・レベルのファイルに1つの
回復及び1つの順次サーチが必要である。そこで、一連
の埋れたCASE statementは残りのDDM定義を提供す
る。
【0065】RSM記憶方法 RSMはルート又は“トップ・レベル”定義のみを記憶
する。パラメータの構成するインスタンス変数は規定さ
れない。これは、トップ・レベル・コードポイントの定
義のみがデータとして記憶されるということを意味す
る。ルートを通して引出されたパラメータすべてのプロ
グラムにハードコード化される。これはDDMストリン
グを解析し発生するに必要なある情報を含む情報を失う
結果となる。すなわち、パラメータの構造に関するすべ
ての情報はデータとして使用できないということであ
る。もし、辞書において変更があれば、確実な問題をも
たらすかもしれない。LCFはコードポイントすべての
ために情報すべてを記憶したが、この方法はトップ・レ
ベル・コードポイントのための構造的情報を記憶するの
みである。それは、RSMのための記憶要求はトップ・
レベル・ターム当り約1000+100mであり、総体
のための1000バイド+内部ノードのための100バ
イトであると推定する。従って、全辞書のために約(1
000+100m)kである。パラメータ構造のための
残りの情報は図9に示すようにプログラムにハードコー
ド化される。N/10トップ・レベル・オブジェクトが
あると仮定すると、記憶のコストは(1000+100
m)N/10バイトである。
【0066】
【発明が解決しようとする課題】LCF及びRSM法の欠点 LCFは定義を構成することなく一組のファイルを維持
する。これは、オブジェクトの定義が要求された各時
に、LCFは上記の方法を使用してそれを再構成しなけ
ればならないということを意味する。同一定義が何回も
要求されるだろうから、それが要求された各時に、定義
の再構成に対し加えられる値はない。その上、LCFは
各パラメータの定義の各々の非常にコンパクトな形を維
持することはない。それは、解析及びジェネレーション
に本質的でない情報、すなわち必要でない情報を記憶す
るためである。本発明はデータ構造内部のDDMコマン
ドの定義を拡大することによって上記の欠点を除去し、
各アクセスの時にその再構成を要求せず、短いホームの
データを規定することによって、数バイトで定義の本質
を記述することができる。
【0067】RSMはトリーのトップ・レベル・ノード
の定義のみを記憶する。残りの定義はプログラム内にハ
ードコード化される。これはLCF法に比較してスペー
スを節約しうるが、RSMはコンパクトな形式でルート
・ノードの情報を記憶しない。RSMのメンテナンスは
各パラメータのハードコード化のため、及びパラメータ
の各インスタンスのためのコードを辞書に複製するため
に困難かもしれない。RSMは、又CASE statementのネ
スティング・レベルのようなプログラミング言語の制限
を受ける。
【0068】本発明は上記の課題に鑑みてなされたもの
で、各種制約のないコンピュータ・システム用階層構造
データ処理情報の符号化,記憶,及び回復方法及び手段
を提供するものである。
【0069】
【課題を解決するための手段】本発明は以下で要約する
ように構成して上記の課題を解決した。この発明の一面
によると、階層構造(ハイアラキ)に関係するデータ送
信情報を符号化し、記憶し、回復するコンピュータ・シ
ステムによって使用するように適応されたデータ送信辞
書が設けられる。該辞書はコンピュータ・システムの送
信情報に関する一群の1又は1以上のコンピュータ・サ
ーチ可能な定義トリーから成る。該トリーはコンピュー
タ・システムによって使用可能なコマンド,応答、又は
データの特性を含む最初の定義群から引出される。該特
性は、もしある場合、コマンド,応答、又はデータに対
して適用する構造及び値の特性及び制限を含む。各トリ
ーはそれに対して関係するコマンド,応答、又はデータ
の夫々定義を表わす。各トリーはコードポイントのよう
な名称によって識別されるルート・ノードを含む。ルー
ト・ノードは関係する定義トリーの型式を説明する情報
を含み(すなわち、それはコマンド,応答、又はデータ
に関係するかどうか)、1又は1以上の内部又はターミ
ナル・ディセンダント・ノードを包含してもよく、該ノ
ードはトリーによって表示された定義の成分を表わす。
ディセンダント・ノードはそのトリー内のノードのレベ
ルを説明するレベル情報を含む。ノードは属性情報を含
むことができ、ノードによって表わされる送信情報に関
係する値の要求を含んでもよい。
【0070】辞書の各定義のルート・ノードはその定義
トリーによって表わされる送信情報の長さ(レングス)
制限に関する情報を含むこともできる。
【0071】属性情報は、ノードによって表わされるデ
ータ送信情報が要求されるか、選択的か、又は無視しう
るかどうかに関する要求を含む。
【0072】属性情報は、又ノードによって表わされる
データ送信情報の長さ,反復性、又は非反復性に関する
情報を含む。
【0073】都合よく、定義トリーの各々のルート・ノ
ードはトリーのために単独でアクセス可能なエントリが
作られてよい。
【0074】それらの大きさは定義トリーをコンパクト
にしょうとする傾向にあるので、コンピュータ・システ
ムのためにデータ送信を処理するためのプログラミング
を解析し、又はジェネレーションすることによる使用の
ため、該大きさを使用してコンピュータ・システムのメ
イン・メモリーに記憶させるようにすることができる。
【0075】都合よく、定義トリーはデプス・ファース
ト・サーチ形式で明示されるのが好ましいコンパクトな
リニヤ形式で記憶される。
【0076】本発明の他の面によると、それはコンピュ
ータ・システムによって使用可能なコマンド,応答又は
データのノード規定部の第1定義グループから一群の1
又は1以上のコンピュータ・サーチ可能な定義トリーを
引出すことにより定義トリーによるデータ送信ストリー
ムの処理のために必要な情報のみ維持することにより各
ノードをコンパクトにし、リニヤ形式でコンパクトにし
たノードを順に配列することにより、各定義トリーのル
ート・ノードからスタートし、各コンパクトにしたノー
ドに含まれる情報を結果的に発生実現した辞書に配置す
ることにより及び順次定義トリーの各チャイルド・ノー
ドをアセンブリすることによって各定義トリーをアセン
ブリする各工程によりデータ送信辞書を創作する方法を
提供する。各チャイルド・ノードをアセンブリする方法
はチャイルド・ノードに含まれている情報を結果的に発
生実現した辞書に配置すること、及びチャイルド・ノー
ドの各々を順にアセンブリすることを含む。ターミナル
・ノードをアセンブリする方法はターミナル・ノードに
含まれている情報を結果的に発生実現した辞書に配置す
ることを含む。
【0077】更に、本発明の他の面によると、それはコ
ンピュータ・システムによって使用可能なコマンド,応
答、又はデータのノード規定部の第1の定義群から一群
の1又は1以上のコンピュータ・サーチ可能な定義トリ
ーを引出すためのエクストラクタを構成するようにして
上記のデータ送信辞書を構成するために設けられる。定
義トリーによるデータ送信ストリームの処理のために必
要な情報のみを保持している間に各ノードをコンパクト
にするコンパクタが設けられる。各トリーに対してルー
ト・ノードから始まる各定義トリーをアセンブリするア
センブラが設けられる。アセンブラは各コンパクト化し
たルート・ノードに含まれている情報を結果的に発生実
現した辞書に配置すること、及び、次に、存在する場
合、コンパクト化したノードのチャイルド・ノードの各
々をアセンブリすることができる。アセンブラは各チャ
イルド・ノードに含まれている情報を結果的に発生実現
した辞書に配置すること、及び、次に、存在する場合、
前記チャイルド・ノードの各々をアセンブリすることに
用いられる。
【0078】更に、本発明の他の面によると、それはコ
ンピュータによって使用するためにコンピュータ・シス
テムに組込まれ、他のコンピュータ・システムとの通信
に又は内部でコンピュータ・システムにより使用するた
めに、階層構造に関係するデータ送信情報を符号化し、
記憶し、回復するようにした前述の辞書を提供する。
【0079】更に、本発明の他の面によると、それは下
記のステップを使用して、上記の辞書を使用する1又は
1以上のコンピュータ・システムのデータ送信を符号化
し復号化する方法を提供する。
【0080】それは、辞書の個々の定義に従い、データ
送信をコマンド部,応答部又はデータ部に分割し、該各
部はシステムで使用するデータ送信プロトコルの仕様の
要求に合致することを保証する。
【0081】前記各部のため、辞書から対応する定義ト
リーを回復し、データ送信中にステップして、要求する
情報が存在すること、及びデータ送信中に遭遇した各前
記ノードのためのトリー構造に対し関連ルールがあるこ
とを確かめ、及びノードに対応する定義で説明したよう
に、ノードに関する構造及び値のルールが付随している
ことを確かめる各工程を含む。
【0082】更に、都合よく、上記の方法がデータ送信
を符号化するために使用されたとき、辞書の定義はコン
ピュータ・システムの内部データ構造を定義の要求に合
致するデータ送信に変換するためのロードマップとして
作用する。
【0083】上記方法と同様、都合よく、データ送信の
復号化に使用されたとき、辞書の定義は定義要求による
データ送信、及びコンピュータ・システムの内部データ
構造への変換の照合のためのロードマップとして作用す
る。
【0084】更に、本発明の他の面によると、それはソ
ース(発信元)システムとデスティネーション(着信
先)システムとから成る分散コンピュータ・システムを
提供する。ソース・システムはアプリケーション・リク
エスタと、パーサと、アプリケーション・リクエスタを
サポートするジェネレータとを含む。デスティネーショ
ン・システムはサーバと、パーサと、サーバをサポート
するジェネレータとを含む。パーサ及びジェネレータは
ソース及びデスティネーション・システム間のデータ送
信を処理するため、上記の辞書に従って構成された1又
は1以上の辞書に対するアクセスを有する。
【0085】上記の分散コンピュータ・システムは1つ
の又は局部コンピュータ・システム内にソース及びデス
ティネーション・システムを含めることができる。
【0086】更に、なお、本発明の他の面によると、そ
れは関係するデータ処理情報を階層構造に符号化し、記
憶し、又は回復するため、コンピュータ・システムによ
る使用に適応するようにしたデータ処理辞書を提供す
る。該辞書はコンピュータ・システムのデータ処理情報
に関する一群の1又は1以上のコンピュータ・サーチ可
能な定義トリーから成る。該トリーはコンピュータ・シ
ステムによって使用可能なコマンド,応答、又はデータ
の特性を含む第1の定義グループから引出される。該特
性は、存在する場合、コマンド,応答、又はデータに通
用する構造及び値の特性を含む。各トリーは、夫々それ
に関係するコマンド,応答、又はデータの定義を表わ
す。各トリーは名称によって識別されるルート・ノード
を含む。該ルート・ノードは関係する定義トリーの型式
を表わす情報を含み(すなわち、それがコマンドに関係
するか、応答に関係するか、又はデータに関係するかど
うか)、トリーによって表わされる定義の成分を表わす
1又は1以上の内部又はターミナル・ディセンダント・
ノードを含むことができる。ディセンダント・ノードは
そのトリー内のノードのレベルを説明するレベル情報を
含む。該ノードは属性情報を含むことができ、ノードに
よって表わされるデータ処理情報に関する値の要求を含
むことができる。
【0087】記憶されたデータを表示し、又はアクセス
するデータ処理システムによって記憶されたデータに対
してリンクされるべきトリーのあるノードについての有
益性を証明することができる。
【0088】
【実施例】以下、添付図面に基づき本発明の実施例を詳
細に説明する。以下に述べる本発明において、DDMコ
マンド,応答、及びデータの定義は夫々コマンド・トリ
ー,応答トリー、及びデータ・トリーに記憶される。
【0089】本発明は、又DDM辞書構造オプティマイ
ザ(方法及び手段を含む)(DDSO)とも称し、DDMデー
タ・ストリームの解析及びジェネレーション(発生)に
必要な情報のみを保持することにより、DDMコマンド
及び応答データ・トリーのノードの定義をコンパクトに
することができる。DDSOは、又デプス・ファースト
・サーチ方法により対応するトリーのコンパクト化した
ノードを順序付けすることによって、DDMコマンド,
応答、又はデータの定義をアセンブリ(組立)する。定
義は最初都合よくライン上にあるかもしれないDDMア
ーキテクチャ・ドキュメントをスキャンすることによ
り、次に必要な情報を抜き出すことによって創作(Creat
e)される。そこで、各定義がアセンブリされる。DDS
Oを説明するため、まずDDMアーキテクチャ・ドキュ
メントから本発明のDDM辞書構造を如何に創作される
かを説明し、次に記憶及び回復方法はどうか、及び定義
構文の正式な仕様等を説明する。最後に、DDSOの利
点及び欠点について説明する。
【0090】DDM辞書データ構造はDDMアーキテク
チャ・ドキュメントによって規定された辞書の選択から
引出された定義のコンパクトなホーム又は形式である。
各定義はリニヤ形式のトリー(1又は1以上のノードを
有する)として表わされ、各ノードがコンパクトな形式
で規定されたデプス・ファースト・サーチ形式でそれを
表現するのが好ましい。一般に、下記のステップがあ
る。
【0091】ステップ 0:(抜出段) 森林又はホーレスト(forest)で要求されるトリーのため
のコードポイント(ノードの識別要素)すべてを得る。
DDMアーキテクチャは相互に指示するノードの通信綱
を用意する。本段はアプリケーションのトリーのために
必要なノードを抜出す。ルート・ノードのみが抜出段に
与えられる。この段はどのノードが定義に必要かを計算
する。
【0092】ステップ 1:(コンパクション段) 本質的な情報、すなわち各ノードのトップ・レベル・コ
ードポイント及び全ノード・パラメータに対しステップ
0で創作されたDDMファイルすべてをスキャンする。
パラメータのためその情報をDDSOホームで保持す
る。DDSO形式の詳細は後述する。DDSOホームの
例は“RN1:2401, *255”があり、それは属
性(RN),トリーのレベル(1),独特な識別要素
(2401)及び長さ属性( *255)である。
【0093】ステップ 2:(アセンブリ段) 本段は各パラメータを組立又はアセンブリ(拡張)す
る。これは、パラメータ自体がパラメータを有する場合
(すなわち、それはペアレントである)、チルドレンは
デプス・ファースト・サーチ方法で加えられ、ペアレン
トのそれより1レベル高いレベルが与えられるというこ
とを意味する。
【0094】ADDG(自動DDM辞書ジェネレータ)
はDDMアーキテクチャ・ドキュメントから1又は1以
上のDDM辞書データ構造(辞書)を創作することに使
用することができる便利なツールである。ADDGは図
15に示すような3つの段を有する。
【0095】1.DDMTXT発生(Generate DDMTXT):この
実行はユーザが要求する情報を抜出すDDMアーキテク
チャ・ドキュメントを通してステップする。これはユー
ザ指定のルート・ノードと、ルート・ノードの拡張で要
求されるノードのすべてを含む。各これらノードはDD
Mメモニック・タームに等しいファイル名を有するファ
イルとファイル形式のDDMTXTとに抜出される。拡張して
いる全DDMタームのリストを与えるDDM FLVL
と、すべての有効な部分仕様(DDMオブジェクトがコ
マンドか、応答か、又はデータ・オブジェクトかを指定
する)のリストを与える EXPCDPT FILE と、それらに対
応するコードポイントと該対応するコードポイントを有
する全DDMメモニックのリストを与えるDDM HE
Xのような他のファイルを発生させる。図16はハイ・
レベル・フローチャート(流れ図)generate DDMTXTを
示す。
【0096】2.DDM定義創作(Create DDM Definiti
ons):Generate DDMTXTの実行は Create DDM Defi
nitions の実行前にラン(走行)しなければならない。
Create DDM Definitions は各DDMターム用のDD
M定義を含むDDM DEFファイルを創作する。それ
は辞書のためのDDSOホームに設定された特定の規則
に従う。Create DDM Definitions は図17に示す。
【0097】DDM定義のアセンブリ:Generate DDMT
XT及びCreate DDM Definitions はこの実行をランす
る前に実行しなければならない。この実行は複数のDD
M定義の一部をアセンブリすることによってすべてのト
ップ・レベルDDMタームをアセンブリする。それは、
又各定義を記憶するために、ソース言語特別ステートメ
ントを含む。定義はファイルに記憶される。Assemble
DDM Definitions のための擬似コードを図18に示
す。
【0098】図19及び図20にADDGツール用の擬
似コードを示す。故に、定義の構成に包含される2つの
メイン・オペレーションがあり、それらはコンパクショ
ン(簡潔化)及びアセンブリ(組立)である。コンパク
ションは各パラメータをコンパクトな形式に記憶するこ
とを含み、アセンブリはルート・ノードの完全な定義を
デプス・ファースト・サーチ・ホーマットに再アセンブ
リする拡張処理である。アセンブリを行わずに各パラメ
ータの定義をコンパクトにすることは可能である。その
結果、LCF以上の記憶の節約を生じることになる。し
かし、この定義は、本発明において行われるように、ラ
ンタイム前に定義を創作することに反して、ランタイム
に創作しなければならないので、定義を作成するための
LCFの実行コストが課されねばならないであろう。そ
れは、又それをコンパクトにせずに、定義をアセンブリ
することが可能である。ある内部ノードの複製及び各ノ
ードのための大きな記憶要求のために、この代替案は魅
力あるものではない。しかし、コンパクション及びアセ
ンブリが両方共行われるならば、本発明から最高の利益
が得られるであろう。
【0099】DDSOは図21乃至図32に示すホーマ
ットでDDM定義ファイルを記憶する。DDM定義はデ
プス・ファースト・サーチ方法でアセンブリされたトリ
ーのリニヤ表示であり、要求された情報、すなわちルー
ト・ノードのために必要な情報及び非ルート・ノードの
ために記憶される情報を含む。ルート・ノードはその定
義のために6バイトを必要とし、各非ルート・ノードは
11バイトを必要とする。そのトリーにmノードがある
場合、トリーは11m+6バイトを必要とする。故に、
辞書にNトリーがあると、11mN+6Nバイトが要求
される。その上、小さなサーチ・テーブルはトリー当り
6バイトを必要とするから6Nバイトとなる。故に、合
計実施は11mN+12Nバイトを要求する。
【0100】上例において、定数11及び6、すなわち
内部及びルート・ノード当りのバイト数は夫々わずかに
高いということに注意を要する。ある追加の文字
(“/”)及び句読点(“,”)を加えて人間が読み易
くするよう改良してもよい。
【0101】アプリケーションの例として、辞書自体の
ために約5088バイトのデータが要求され、サーチ目
的のために約510バイトの小さなルックアップ・テー
ブルが要求される。定義は既に構成されているので、回
復のコストは、例えばバイナリ・サーチを仕様するコス
トのようなルックアップ・テーブル中をサーチするコス
トを節約することができる。
【0102】1.ルート・ノードのために記憶される情
報:下記の属性情報がルート・ノードのために記憶され
る。
【0103】(a) キャリヤ(Carrier) の型式:すな
わち、それはリクエストか、応答か、又はデータ・オブ
ジェクトかどうかである。DDMにおいては、リクエス
ト・データ・ストリーム構造に対し1つの一般的ホーマ
ットがある。このリクエスト・エンベロープ(RQSDSS)フ
ィールドは、自己規定構造ではないため、ある順序で指
定しなければならない。RQSDSSは1つのコマンドのみを
搬送することができる。同様に、DDMにおいて、応答
データ・ストリーム構造に対しても1つ一般的ホーマッ
トがある。全フィールドは、応答エンベロープ(RPYDSS)
が自己規定構造ではないため、要求された順序に従って
指定しなければならない。同様に、データ・オブジェク
ト・エンベロープ(OBJDSS)は前指定ホーマットであり、
コマンド及び応答メッセージを除き、全オブジェクトを
搬送する。しかし、OBJDSSは複数オブジェクトを搬送す
ることができる。
【0104】(b) ルート・ノードのコードポイン
ト:
【0105】(c) 長さ(レングス)特性:長さ特性
は固定長オブジェクト,可変長オブジェクト,最大長オ
ブジェクト,最小長オブジェクト用の説明を含む。
【0106】2.内部ノード及びリーフ(ターミナル・
ノード)のために記憶された情報:非ルート・ノードの
ために下記属性情報が記憶される。 (a) ノードが要求されているか、選択的か、無視可
能かどうか。 (b) ノード(及びそのディセンダント)は反復可能
か否か。 (c) トリーのノードのレベル又はデプス。 (d) 該ノードの長さ特性。
【0107】最初に記憶された属性は要求された属性
か、選択的属性か、又は無視可能な属性かである。要求
された属性はパラメータの支援又は使用が要求されると
いうことを指示する。コマンド用のパラメータ・リスト
で要求されるようにパラメータが指定されると、そのコ
マンドのために該パラメータを送信しなければならな
い。そのコマンドを支援する送信の全受信機は規定した
パラメータを認識し、処理しなければならない。パラメ
ータは、応答メッセージのパラメータ・リストに指定さ
れていると、その応答メッセージのために送信しなけれ
ばならない。全受信者はそのパラメータを受容しなけれ
ばならない。
【0108】選択的属性はパラメータの支援又は使用が
選択的であることを指定する。コマンド用のパラメータ
・リストにそのパラメータはパラメータに対して選択的
であると指定されていると、そのパラメータはそのコマ
ンドに対する送信を選択的に行うことができる。コマン
ドを支援する全受信機は規定するようにパラメータを認
識し、処理しなければならず、それが送信されない場
合、不履行値を使用しなければならない。応答メッセー
ジのパラメータ・リストにそれを指定すると、その応答
メッセージにおいてそのパラメータを選択的に送信しな
ければならない。全受信機はパラメータを受信しなけれ
ばならない。
【0109】無視可能な属性は、受信機が支援リクエス
トを与えなかった場合,コマンドの受信機はパラメータ
を無視することができる。すべての送信機はパラメータ
を選択的に送信することができる。全受信機はパラメー
タのコードポイントを認識しなければならない。受信機
はそのパラメータ値を無視することができる。
【0110】次は反復可能属性か、又は反復不能属性で
ある。反復可能属性はパラメータが反復可能であること
を指定する。そうでないと、反復できない反復不能と指
定される。リストの要素は唯一であるということ、リス
トの要素はいかなる順序にあるかということについては
要求がない。ルート・ノード及び非ルート・ノードのた
めに記憶される情報は論理的に図36乃至図38に示
す。
【0111】例えば、記述“1,200C,****”を有
するトップ・レベル・ノードは1のキャリヤ(リクエス
ト)、 hex′200C′のコードポイント、及び可変長
(すなわち、不指定の限界まで)を有する。
【0112】その上、記述“RN2:2408, *25
5”を有するパラメータ又は内部ノードは、該パラメー
タは要求され、反復不能であり、hex′2408′のコ
ードポイントを有し、255までの可変長を有するとい
うことを意味する。
【0113】パラメータの順序付け 本実施例においては、各完全トリーのためのパラメータ
はリニヤ形式でリストされる。例えば、図33に示すト
リーについて、デプス・ファースト・サーチ用のトリー
のパラメータの定義はN0,N1,L1,N2,N2.
1,L2,N2.2,L3,N3,L4,N4,N4.
1,N4.1a,L5,N4.1b,L6,N5,L7
であり、そこでNはノード、Lはリーフを意味する。ト
リーの順序が維持される。トリーは、デプス・ファース
ト・サーチ順次が使用され、デプス情報が維持されてい
るので階層構造形式で再構成することができる。
【0114】その他のパラメータ順序付け:DDMパラ
メータが送信された有効な順序付けのすべてはデプス・
ファースト・サーチの順序付けのすべてであるから(左
から右への表記法慣例に制限されない)、定義をその方
法で記憶するのにより便利である。他の順序でそれらを
記憶することはできるが、より高価である。ペアレント
(親)情報のような追加の情報は定義に加えなければな
らない。そのため、トリーをリニヤ形式から再構成する
ことができる。
【0115】回復機構 本実施例における回復(読出)機構は簡単なサーチ方式
(バイナリ・サーチ)に従う。しかし、コードポイント
の範囲,コードポイントの値,実現するホーレストの大
きさ等に従って、他の適当なサーチ方式を使用すること
もできる。
【0116】〔DDM辞書構文〕図34は本実施例に使
用するコマンド,応答、及びデータのためのDDM辞書
定義構文を示す。
【0117】〔解釈規則〕DDM辞書構文を説明する規
則は下記のように解釈することができる。 1.“:=”は“によって規定される”を意味する。例
えば、A:=BはAはBによって規定されることを意味
する。 2.“!”は論理オアを意味する。例えば、A:=B!
CはAはB又はCのどちらかで規定されることを意味す
る。 3.ロア・ケース文字は定義のターミナル・ノードを表
わし、文字で規定される。 4.アッパ・ケース文字は非ターミナル・ノードを表わ
し、ターミナル及び非ターミナルのコレクションで規定
される。 5.引用符:引用符内のアイテムは文字である。例え
ば、‘B’は文字Bを意味する。
【0118】〔図34で使用する頭字語及び構文〕キャ
リヤはDSSキャリヤを示す。0は部分応答のために使
用されるDSSキャリヤを示す。1はコマンドのために
使用されるDSSキャリヤ・フィールドRQSDSS(リクエ
ストDSS)を示す。2は応答のために使用されるDS
Sキャリヤ・フィールドRPYDSS(応答DSS)を示す。
3はオブジェクトのために使用されるDSSキャリヤ・
フィールドOBJDSS(オブジェクトDSS)を示す。Code
ptはDDMコードポイント,DDMタームのための識別
要素を示す。MaxlenはDDMタームの最大長を示す。Mi
nlenはDDMタームの最小長を示す。Level はパラメー
タを有するネスティング(nesting) のレベルのようなD
DMトリーのレベルを示す。Length(レングス)はDD
Mパラメータの長さである。****は可変長を意味する。
$は定義の終了を示す。LOWERAはDDMが使用する低レ
ベルのアーキテクチャを示す。これはDDMのために他
のアーキテクチャを含めることを可能にする。
【0119】定義の正式な仕様の意味を下記に示す(図
34参照)。 DDM ENTRY :ライン 1はトップ・レベル・エント
リであり、ルート・ノードを規定する。該ルート・ノー
ドはリクエスト,応答、又はデータ・オブジェクト・エ
ンベロープのいずれかを有することができ、キャリヤで
指定される。特定のアプリケーションに対するキャリヤ
は4つの値0−3が可能であるが、他の型式のエンベロ
ープに対して拡張することができる。キャリヤに加え、
ルート・ノード情報はコードポイントと、ノードのCode
ptと、ルート・ノードの長さ指定とを含む。(ルート・
ノードの長さ指定が要求されない場合、普通は可変長で
ある。長さ指定は固定長フィールド,最大長フィール
ド,最小長フィールド,又は可変長フィールドを指定す
ることができる。)ルート・ノードはDDM PARMS
(正式な仕様の第1ライン)と称するDDMオブジェク
トから構成されるか、又は低レベル・アーキテクチャの
オブジェクトから構成されてもよく、及び低レベル・デ
ータ値(ライン 2)それ自体を有しても、低レベル・
オブジェクト(ライン 3)のコレクションがあっても
どちらでもよい。
【0120】DDM PARMS :ルート・ノードがDDM
オブジェクトのコレクション及び低レベル・オブジェク
トを含む場合、このDDM定義に従う。DDMオブジェ
クトは(a)要求された/選択的/無視可能(required/
optional/ignorable) 、反復可能/反復不能(repeatabl
e/non-repeatable) 、(ルート・ノードがレベル1であ
る)トリーのターミナル・オブジェクトのレベル,コー
ドポイント及び長さ特性などのような情報を有するター
ミナル・オブジェクトと;(b)上記のターミナル・オ
ブジェクトと同一の特性を有する低レベル・オブジェク
トの内容を持つターミナル・オブジェクトと(ライン
5−6);(c)2つのDDM PARMS オブジェクト。
これは、DDM PARMS オブジェクトが1より多いター
ミナル・オブジェクト及び1より多いトリーのデプスを
可能にするため、それ自体再帰的に規定することを可能
にする(ライン 7):(d)1つのDDM PARMS オ
ブジェクト。これは、オブジェクトの終了を示し、定義
で要求される‘$’のために許されるべき統語的なトリ
ックである(ライン 8)。
【0121】LOWOBJ:DDMオブジェクトと同一構造を
可能にするのでネスティング及びターミナル・ノードを
可能にする。ターミナル・ノードはDDMターミナル・
ノードと同一の基礎的情報を含む。
【0122】ライン 12:キャリヤは‘0’から
‘3’の範囲の値を持つことができる。これは必要に応
じ、それ以上の値まで拡張することができる。 ライン 13:トリーのパラメータのレベルであり、ル
ートはレベル1を持ち、そのチルドレンはレベル2を有
する。ノードがレベルiを持つと、そのチルドレンはレ
ベルi+1を有する。
【0123】ライン 14:Codeptはすべての有効なD
DMコードポイントを示す。 ライン 15:DDMに対する長さ特性である。例え
ば、それは下記の値にとることができる。(a)ddd
d(1233のような)、それは1233の固定長を意
味する。(b)****、それは可変長を意味する。(c)
* maxlen(* 255のような)、それはDDMオブジェ
クトが255の最大長を有することを意味する。(d)
minlen* (255* のような)、それはDDMオブジェ
クトが少くとも255の長さを有することを意味する。
長さのためにこれら4文字のみを使用する。これは必要
に応じ、容易に拡張することができる。
【0124】ライン16及び17:minlenとmaxlenの指
定 ライン 18:“roi”はパラメータが要求か、選択
的か、無視可能かのいずれかであることを意味する。 ライン 19:“rn”はパラメータが反復可能か又は
反復不能かのいずれかであることを意味する。 ライン 20:“d”は0乃至9のいずれか有効な数で
ある。
【0125】構文の正式な仕様は内容及び発明の主旨を
変えず、種々な方法で変更することができる。種々な変
更方法としては、(a)更に多くの型式のキャリヤを加
えること;(b)更に多くの属性特性がアーキテクチャ
に加えられ、より多くの属性の場所ホールダか又はより
多くの有効な値をDDMの説明に加えることができるよ
うに、ルート・ノード又はパラメータ・ノードに対しよ
り多くの属性を加えること;(c)1長さ特性に対して
より多くの数を加えること、又は最小及び最大長制限の
両方を有するパラメータを加えることのような長さ仕様
を変化させることができることなどがある。
【0126】DDMが発展するように、辞書構文のため
の正式な仕様も発展させることができる。 例:図6乃至図8に示すファイルは下記のように記憶さ
せることができる。 Request :1,200C,****/ON2:2110,0
022/RN2:2113,0068/RN2:211
4,0008/ON2:2132,0006$ Command Data:3,200C,****/ON2:241
2,****,LOWERA/RR3:0010,****/OR3:
147A,****
【0127】2つの減退ケースがあり、それらは下記で
示すようにDDSOとLCF及びRSMとを比較するも
のと視ることができる。 (a) 1ノードを持つトリー:DDSOはノードをコ
ンパクト・ホームで記憶するが、LCFは1ノードを1
ファイルに記憶する。なお、LCFはファイルをスキャ
ンする必要があるが、アセンブリを形成する必要はな
い。1ノードを有するトリーの場合のRSMは、1ノー
ドに関するCASEステートメントがないので、LCF
まで減じることができる。故に、1ノードを有するトリ
ーの場合には、DDSOはまだその記憶簡潔化の利益を
維持するが、成果においてはLCF及びRSMよりわず
かに良いであろう。
【0128】(b) 1トリーを有するホーレスト:こ
の場合、DDSOはバイナリ・サーチを回避する。LC
F及びRSMはまだ定義を構成しなければならない。故
に、1トリー・ホーレストの場合、本発明は有益であ
る。
【0129】DDSO定義の使用の仕方 DDSO定義はDDMストリングの解析及び発生の両方
において回復又は読出される。解析はDDMストリング
を受信し、その統語的正確さをチェックし、局部プロセ
ッサが使用するために同等の内部データ構造を構築する
ことを意味する。ジェネレーション(発生)は内部デー
タ構造を受信し、定義トリーを使用してDDMストリン
グを構築することを意味する。図35はリクエスターサ
ーバ分散システムにおける解析及びジェネレーション処
理を示す。アプリケーション・プログラムはまず内部ホ
ーマットでリクエストを提供する。
【0130】(ステップ 1) ジェネレーション処理
によってリクエストをDDMストリングに翻訳する(ジ
ェネレータはそれを行うため、DDM辞書を見る)。 (ステップ 2) 次に、リクエストはそれを受信する
サーバへ送信される。パーサは構文照合のためにDDM
辞書を見てそのリクエストを内部ホーマットに翻訳す
る。
【0131】(ステップ 3) 次に、サーバは内部ホ
ーマット化されたリクエストを実行する。これはファイ
ル・サーバ又はデータベース・サーバのような各種異な
る適当な型式のサーバの1つでよい。 (ステップ 4) サーバは1又は1以上の内部ホーマ
ットによる応答を発行し、それはジェネレータによりD
DM辞書を見ながらDDMストリングに翻訳される。 (ステップ 5) DDM応答はソース・システムに送
信される。 (ステップ 6) 最後に、ソース・システムのパーサ
はそのDDM応答をDDM辞書を見ながら内部ホーマッ
トに翻訳してアプリケーション・プログラムに戻す。
【0132】DDMの概念上の層形成 本実施例においては、パーサ及びジェネレータは都合よ
くDDMデータ・ストリームを分割すること(DDMス
トリング)からその流れを止めて一連の層にするという
共通の設計を共有する。最初の、又は最上位の層(層
0)は論理上のオブジェクトを構成するDDMコマンド
又はDDM応答から成る。解析する、又は発生するリク
エストは常に層0において来なければならない。
【0133】次の層1はこの論理上のオブジェクトから
相互にリンクされている1又は1以上のデータ・ストリ
ーム構造か又はDSS(又はデータ通信エンベロープ)
に分解することにより引き出される。例えば、SQLス
テートメントを実行するためのDDMコマンドはコマン
ド・データ(SQLステートメント)と同様各種パラメ
ータが同伴する。DDSはコマンド部及び0又は0以上
のコマンド・データ部;又は応答部及び0又は0以上の
応答データ部;又は1又は1以上の応答データ部を含む
ことができる。
【0134】層2はそのトリー内のノードの特定の値を
見ることなく、トリーの構造的特質を構成する。トリー
の構造的特質の例はそのチルドレンの長さ+定数(それ
自体の長さフィールド及びコードポイント、又は識別要
素のための)の和である各ノードにおける長さの値であ
る。
【0135】最後の層3はDDMトリーの各ノードから
成る。各ノードはトリーの構造的特質及び有効な要求し
た値を有する。トリー内の構造的特質の例としては、該
ノードが要求されたものか、選択的か、無視可能か、反
復可能か、コレクションか、又はスカラかどうかの情報
を含む。(“コレクション”は内部ノードを指し、“ス
カラ”はリーフ・ノードを指す。)ノードの値の例とし
て、リーフ・ノードは値を有し、これらの値はある制限
を持つ。例えば、リーフは値が列挙されたデータ型式の
ようなあるデータ型式のものでよく、又は最大長のよう
なある長さ制限を持つものでよい。非リーフ・ノードは
値を持たないが、長さ制限を有する。
【0136】DDM解析及びジェネレーション方法のた
めのソフトウエア・アーキテクチャ 上記の3つの層に対応し、図39に示すような、3つの
主なレベルのDDM解析/発生処理がある。
【0137】最初のレベルはDDMエントリ(多重関係
のデータ・ストリーム構造)の処理を取扱うか、又は関
係する2つの論理的DDMオブジェクトを共に取扱う。
例えば、コマンドは、それが存在する場合、常にコマン
ド・データがその後に続かなければならない。2つのデ
ータ・ストリーム構造(DDM)(コマンド,コマンド
・データ,オブジェクト)間の“リンク”はDDMエン
トリの処理によって設定される。これらのレベルは種々
の接続ビットを通してリンクするDDMを共に世話し、
連結のためのDDMアーキテクチャによって規定された
規則が実行されるということを保証する。
【0138】第2レベルは1度に1データ・ストリーム
構造を処理することを包含する。このレベルはDSSの
1つを取り、その内部構造を視る。各DSSはトリーか
ら成る。このレベルはDDM辞書から関係するDDMオ
ブジェクトの定義を取得し、定義を通しステップして進
み、そして実際に受信したデータとそれとの比較を開始
し(解析)、又はそれを適当なデータ・ストリームを発
生する(ジェネレーション)ためのロードマップとして
使用する。レベル1はDSS間の関係に関係があり、レ
ベル2(DDM層)はコレクション・オブジェクトの長
さチェックのような活動等と共に、DDMトリー内のノ
ード間の関係の世話を行う。
【0139】第3レベル(アクション・レベル)はアク
ション遂行、アクションの指定、及び低レベル・アーキ
テクチャに対する連結(リンク)等を含む個々のノード
と共にそれ自体に関係する。アクション遂行のサブレベ
ルは次の自然レベルに下り、個々のノードを取扱う。そ
れらノードは要求,選択,無視可能,反復可能等のよう
な特質を有する。アクション遂行サブレベルの責任は要
求したノードが解析されたか、又は発生されたかについ
て確認し、ゴードポイントのその他の構造的特質に従っ
ているかについて保証することである。アクション指定
サブレベルは個々のノードの値を取扱う。これらノード
はどちらかのコレクション・オブジェクト(すなわち、
内部ノード;その場合、それらは他のDDMノードから
成る)であり、又はそれらはスカラ(すなわち、リーフ
・ノード)である。コレクション・オブジェクトはそれ
と共同する特定の値を持たない。スカラが行い、解析
し、発生した値が正しいものであるということを保証す
ることがこの階層構造のサブレベルの責任である。長さ
属性を辞書の対応する定義に対して照合される。第3の
サブレベル又は低レベルのアーキテクチャ・サブレベル
はIBMコーポレーションによって開発されたホーマッ
テッド・データ・オブジェクト・コンテント・アーキテ
クチャのような他のアーキテクチャで規定されたより複
雑なスカラ・オブジェクトを取扱う。
【0140】DDM辞書データ構造の例 次に、図21乃至図32に基づき本発明によるDDM辞
書の例を説明する。下記、例について注意すべき点を説
明する。
【0141】1.使用するデータ構造:この例によるD
DM辞書データ構造及び回復機構について説明すると、
それは下記宣言事項から成る。 TABLE :下記の事項を含む −−仕様及びコードポイント:CD−コマンド・デー
タ、CP−コマンド部,RD−キャリヤ型式間を区別す
るための応答データを示す仕様を連結するルート・レベ
ル・コードポイントに対するサーチに使用される。 −−定義の長さ。 −−定義のポインタ。 これはトリーの定義に対する点である。このテーブルは
バイナリ・サーチのために使用される。仕様及びルート
・レベルはアルハベット/数値順にリストされる。 TBLBASE :テーブルの開始位置を思い出すために使用さ
れるテーブルに対するポインタ。 TBL PTR :テーブルを通してサーチするために使用さ
れるポインタ。 DDM TBL :テーブルをサーチして必要なファイルを得
るためTBL PTR と共に使用されるテンプレート。
【0142】2.データ回復のための特別方法: (a)最後の4文字位置における部分仕様及びコードポ
イントを捜出する。 (b)希望するコードポイントに合致するようテーブル
のバイナリ・サーチを行い、発見したときに定義バッフ
ァ領域に移動する。
【0143】図31及び図32に示す回復機構は簡単な
バイナリ・サーチに基づく。しかし、特定の応用に適合
させるため、他のサーチ法を使用することもできる。以
上、本発明の一実施例を説明したが、本発明の主旨に沿
い、適宜変更することも可能である。
【0144】
【発明の効果】本発明によるパーサ及びジェネレータに
共通の設計は続行性,普遍性,及び非再帰方法を含む下
記の利点を提供する。
【0145】続行性は、DDMの構文の変更はアクショ
ク指定部に対してのみ制限されるという事実のためであ
る。例えば、パラメータが変化した場合、コードにおけ
るそのアクションの独特なインスタンスを捜出すること
は非常に容易である。又、共通な論理はコードの維持を
容易にする。解析及びジェネレーション処理はレングス
・トリー・データ構造のような共通なデータ構造を使用
する。
【0146】コードは非常に普遍的であり、辞書の変更
はアクショク特性に局部化される(普遍性)。単にアク
ション特性部を変更することができ、例えば分散ファイ
ル・システム・アプリケーション用のパーサ及びジェネ
レータを持つことができる。DDMの構造は続行され、
故に変化は容易に組入れることができる。
【0147】上記のアクションはデータ・ベース・アプ
リケーション用のアクションである。しかし、DDMの
他のアプリケーション用の一組のアクションを構築し、
意図する結果を達成するため新たな一組と交換すること
は当業者にとって比較的容易なことである。
【0148】本発明による辞書使用の他の利点は、この
使用法が完全に拡張した辞書を持つことによって再帰を
シミュレートすることである。これは、DDMトリーが
デプス−ファースト・サーチ法で拡張されることであ
る。故に、この方法は実際の再帰のコストが掛からずに
再帰的解決の利点を有するものである。
【0149】DDSOの利点 DDSOは記憶要求の点から有益な利点を有する。基本
的情報のみを保持するという事実から記憶の有効な使用
が達成される。辞書はその最少形式で定義を含めるた
め、特別なホーマットに符号化される。しかし、それで
もなおノードに関する選択的情報,ノードの長さ情報、
及びノードのレベル情報を含む定義のトリーのすべての
ノードに関する情報を含む。
【0150】又、トップ・レベルDDSO定義当り1辞
書アクセスのみがあり、それはノードのみの定義に対抗
して全体の定義に対しアクセスを与えることになる。比
較すると、LCFとトリーのパラメータの数同様多くの
アクセスを必要とする。RSMはトップ・レベル・ノー
ド当り1アクセスを要求するが、トップ・レベル・ノー
ドに対する構造的情報を提供するのみで、全体的定義ト
リーの情報を提供しない。
【0151】より良い記憶効率と完全な定義を得るため
に1辞書アクセスのみしか必要でないということに加
え、本発明によるDDSOはコンパイル時前に定義を構
成することができる。定義はコンパイル前に拡張された
ので、ユーザの費用となるであろうラン・タイムに再帰
ステップを行わず、DDSOはノードのコンパイル前に
定義当り1回のコストが掛かるのみである。DDSOは
トップ・レベル・ノードのテーブルに対しバイナリ・サ
ーチを使用する。DDSOは、又ハッシング等のような
他のサーチ方法を使用することができる。LCF及びR
SMは順次的サーチ方法に限定されるものと思われる。
【0152】DDSOコードは複雑性がない。DDSO
は同一ノードのために唯一なアクションを持つので、不
必要にコードを複製しない。DDSOはプログラミング
言語から独立である。又、RSMはハードコーデッド・
プログラムを有するのに対し、DDSOはテーブル駆動
法を使用することができる。DDSOは定義をデータと
して符号化する。DDMアーキテクチャを変更すると、
RSMはデータではなくプログラムの変更を必要とす
る。透明性,メインテナンス、及び簡潔性のため、テー
ブル駆動方式は利点を有する。又、この方法は将来の使
用において拡張することができる。DDSOはプログラ
ミング言語から独立であるのに対し、RSMはプログラ
ミング言語の実施で許されたCASEステートメントの
ネスト数に制限がある。
【0153】DDSOは定義をコンパクトにし、DDM
を記述するための文法を規定する。トリーの拡張はコン
パイル時の前に行われるから、LCFの再帰ステップは
解析され又は発生される各DDMトリーに対して行う必
要はない。DDSOは、そのテーブルが既に拡張した定
義に対するポインタをその後に従えるノード識別要素を
含むようにしたテーブル駆動法である。
【図面の簡単な説明】
【図1】DDMオブジェクトを示す図
【図2】DDMオブジェクト交換ホーマットを示す図
【図3】デプス・ファースト・サーチを示す流れ図
【図4】DDMオブジェクトの例としてアーキテクチャ
に規定されるルート・ノードを示す図
【図5】DDMオブジェクトの例としてアーキテクチャ
に規定されるルート・ノードを示す図
【図6】ルート・ノードOPNQRYの例を示す図
【図7】ルート・ノードOPNQRYの例を示す図
【図8】ルート・ノードOPNQRYの例を示す図
【図9】緩結合ファイル用定義を構成する方法を表わす
【図10】ACCRDBRMのコマンド部用トリーを示す図
【図11】LCF法の定義を回復する例を示す図
【図12】RSMに使用するCASE法を示す図
【図13】ルート記憶法によるDDMの定義の構造を示
す図
【図14】RSM法に対する定義の回復の例を示す図
【図15】ADDGの流れ図
【図16】ADDGのステップ1:Generate DDMTXTの
流れ図
【図17】ADDGのステップ2:Create DDM Defi
nitions の流れ図
【図18】ADDGのステップ3:Assembte DDM Defi
nitions の流れ図
【図19】ADDGツールの擬似コードを示す図
【図20】ADDGツールの擬似コードを示す図
【図21】本発明の実施例によるDDM辞書及びその回
復方法を示す図
【図22】本発明の実施例によるDDM辞書の例を示す
【図23】本発明の実施例によるDDM辞書の例を示す
【図24】本発明の実施例によるDDM辞書の例を示す
【図25】本発明の実施例によるDDM辞書の例を示す
【図26】本発明の実施例によるDDM辞書の例を示す
【図27】本発明の実施例によるDDM辞書の例を示す
【図28】本発明の実施例によるDDM辞書の例を示す
【図29】本発明の実施例によるDDM辞書の例を示す
【図30】本発明の実施例によるDDM辞書の例を示す
【図31】本発明の実施例によるDDM辞書の例を示す
【図32】本発明の実施例によるDDM辞書及びその回
復方法を示す図
【図33】トリー形式でコマンドDDMを表わす図
【図34】DDM辞書定義構文を示す図
【図35】分散システムにおけるパーサ及びジェネレー
タを示す図
【図36】OPNQRYのコマンド部用トリーを示す図
【図37】OPNQRYのコマンド・データ部用トリーを示す
【図38】OPNQRYの応答データ部用トリーを示す図
【図39】本発明による解析及びジェネレータ方法を示
す図
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ピーター・ケイ・シユーム カナダ国、オンタリオ州、イー・マーカ ム、ステイールス・アベニユー 3500番地

Claims (39)

    【特許請求の範囲】
  1. 【請求項1】 階層構造データ送信情報を符号化し、記
    憶し、又は回復するコンピュータ・システムによる使用
    に適合するデータ送信辞書であって、 送信情報に関する一群の1又は1以上のコンピュータ・
    サーチ可能な定義トリーを含み、 前記トリーは前記コンピュータ・システムによって使用
    可能なコマンド,応答、又はデータの特性を含む最初の
    定義群から引出され、 前記特性は構造及び値の特質と制限とを含み、存在する
    場合、前記コマンド,応答,又はデータに供給され、 各前記トリーは夫々前記コマンド,応答,又はデータの
    定義を表わし、 各前記トリーは名称で識別されるルート・ノードを含
    み、 前記ルート・ノードは定義トリーの型式を記述する情報
    (すなわち、それはコマンド,応答、又はデータに関す
    るかどうか)を含み、及び1又は1以上の内部又はター
    ミナル・ディセンダント・ノードを含むことができ、 前記ノードは前記トリーによって表わされる定義の成分
    を表わし、 前記ディセンダント・ノードは該トリー内のノードのレ
    ベルを記述するレベル情報を含み、 前記ノードは属性情報を含むことができ、 前記ノードは該ノードによって表わされる送信情報に関
    する値の要求を含むことを特徴とするデータ送信辞書。
  2. 【請求項2】 前記ルート・ノードは該トリーによって
    表わされた送信情報の長さ制限に関する情報を含むこと
    を特徴とする請求項1記載のデータ送信辞書。
  3. 【請求項3】 前記属性情報は、ノードで表わされる送
    信情報が要求されたか、選択的か、又は無視可能かに関
    する要求を含むことを特徴とする請求項1記載のデータ
    送信辞書。
  4. 【請求項4】 前記属性情報はノードによって表わされ
    るデータ送信情報の長さ,反復性、又は非反復性に関す
    る情報を含むことを特徴とする請求項3記載のデータ送
    信辞書。
  5. 【請求項5】 各前記定義トリーのルート・ノードは前
    記トリーに対する単独のアクセス可能なエントリである
    ことを特徴とする請求項1記載のデータ送信辞書。
  6. 【請求項6】 前記定義トリーは前記コンピュータ・シ
    ステムに対するデータ送信を処理するため、解析又はジ
    ェネレーション・プログラミングにより使用するために
    前記コンピュータ・システムの主メモリーに全体的に記
    憶することができることを特徴とする請求項1記載のデ
    ータ送信辞書。
  7. 【請求項7】 前記定義トリーはリニヤ形式で記憶され
    ることを特徴とする請求項1記載のデータ送信辞書。
  8. 【請求項8】 前記定義トリーはデプス・ファースト・
    サーチ形式で表わされるリニヤ形式で記憶されることを
    特徴とする請求項1記載のデータ送信辞書。
  9. 【請求項9】 前記定義トリーはコンパクト形式で記憶
    されることを特徴とする請求項1記載のデータ送信辞
    書。
  10. 【請求項10】 前記定義トリーはコンパクト・リニヤ
    形式で記憶されることを特徴とする請求項1記載のデー
    タ送信辞書。
  11. 【請求項11】 前記定義トリーはデプス・ファースト
    ・サーチ法で表わすコンパクト・リニヤ形式で記憶され
    ることを特徴とする請求項1記載のデータ送信辞書。
  12. 【請求項12】 前記請求項1記載のデータ送信辞書の
    創作方法であって、コンピュータ・システムにより使用
    可能なコマンド,応答、又はデータの部分を規定するノ
    ードの最初の定義群から一群の1又は1以上のコンピュ
    ータ・サーチ可能な定義トリーを引出し、 前記定義トリーに従いデータ送信ストリームの処理のた
    めに必要な情報のみを保持することにより前記ノードの
    各々をコンパクトにし、 前記コンパクトにしたノードをリニヤ形式で順序付け
    し、各前記定義トリーのルート・ノードから開始し、各
    前記コンパクトにしたノードに含まれている情報を発生
    実現した辞書に配置し、次に前記定義トリーの各チャイ
    ルド・ノードをアセンブリすることにより、各定義トリ
    ーをアセンブリする各工程を含み、 前記各チャイルド・ノードのアセンブリ処理は前記チャ
    イルド・ノードに含まれている情報を前記発生実現した
    辞書に配置し、次に各前記チャイルドのチャイルド・ノ
    ードをアセンブリする工程を含み、 前記ターミナル・ノードをアセンブリする処理は前記タ
    ーミナル・ノードに含まれている情報を前記発生実現し
    た辞書に配置する工程を含むことを特徴とするデータ送
    信辞書の創作方法。
  13. 【請求項13】 前記請求項1記載のデータ送信辞書の
    構成手段であって、コンピュータ・システムによって使
    用可能なコマンド,応答、又はデータのノード規定部の
    最初の定義群から一群の1又は1以上のコンピュータ・
    サーチ可能な定義トリーを引出す引出手段と、 前記定義トリーに従いデータ送信ストリームの処理のた
    めに必要な情報のみを保持して各前記ノードをコンパク
    トにするコンパクタ手段と、 各トリーに対するルート・ノードから開始して各定義ト
    リーをアセンブリするアセンブラ手段とを含み、 前記アセンブラ手段は各コンパクトにしたルート・ノー
    ドに含まれている情報を前記発生実現した辞書に配置
    し、次に、存在する場合、各コンパクトにしたノードの
    チャイルド・ノードをアセンブリすることができ、 前記アセンブラ手段は各前記チャイルド・ノードに含ま
    れている情報を発生実現した辞書に配置すること、及
    び、次に、存在する場合、各前記チャイルドのチャイル
    ド・ノードをアセンブリすることに適合することを特徴
    とするデータ送信辞書の構成装置。
  14. 【請求項14】 コンピュータ・システムにおいて、内
    部又は他のコンピュータ・システムとの通信において、
    前記コンピュータ・システムにより使用するための階層
    構造に関係するデータ送信情報を符号化し、記憶し、回
    復するために、前記コンピュータ・システムによる使用
    に適合させるようにしたデータ送信辞書であって、 送信情報に関する一群の1又は1以上のコンピュータ・
    サーチ可能な定義トリーは、前記コンピュータ・システ
    ムによって使用可能なコマンド,応答、又はデータの構
    造及び値の特質及び制限を含む最初の定義群から引出さ
    れ、 各前記トリーは夫々前記コマンド,応答、又はデータの
    定義を表わし、又名称によって識別されるルート・ノー
    ドを含み、 前記ルート・ノードは定義トリーの形式を記述する情報
    (それはコマンド,応答、又はデータに関するかどう
    か)を含み、及び1又は1以上の内部又はターミナル・
    ディセンダント・ノードを含むことができ、 前記ノードは前記トリーによって表わされる定義の成分
    を表わし、 前記ディセンダント・ノードはそのトリー内のノード・
    レベルを記述するレベル情報を含み、 前記ノードは属性情報と、前記ノードによって表わされ
    る送信情報に関する値の要求を含むことができることを
    特徴とするデータ送信辞書。
  15. 【請求項15】 請求項1の辞書を使用した1又は1以
    上のコンピュータ・システムのデータ送信の符号化及び
    復号化方法であって、 前記辞書の個々の定義に対応するコマンド,応答、及び
    データ部に前記データ送信を分離し、前記部分は前記シ
    ステムによって使用されるデータ送信プロトコルが要求
    した仕様に合致することを保証し、 各前記部分のため、前記辞書から対応する定義トリーを
    回復し、 前記データ送信を通してステップし、要求した情報が存
    在すること、及び前記データ送信において遭遇した各前
    記ノードに対する前記トリー構造について関係する規則
    を遵守していることを保証し、 前記ノードに対応する前記定義に記述されている前記ノ
    ードに関する構造及び値の規則が支持されていることを
    保証する各工程を含むことを特徴とするデータ送信の符
    号化及び復号化方法。
  16. 【請求項16】 前記辞書定義は前記コンピュータ・シ
    ステムの内部データ構造を該定義の要求に合致するデー
    タ送信に翻訳するためのロードマップとして作用するこ
    とを特徴とする請求項15記載のデータ送信の符号化お
    よび復号化方法。
  17. 【請求項17】 前記辞書定義は前記定義の要求による
    前記データ送信の照合と、前記コンピュータ・システム
    の内部データ構造への翻訳とに対するロードマップとし
    て作用することを特徴とする請求項16記載のデータ送
    信の符号化及び復号化方法。
  18. 【請求項18】 発信元システム及び着信先システムを
    含む分散型コンピュータ・システムであって、 前記発信元システムはアプリケーション・リクエスタ
    と、パーサと、前記アプリケーション・リクエスタを支
    援するジェネレータとを含み、 前記着信先システムはサーバと、パーサと、前記サーバ
    を支援するジェネレータとを含み、 前記パーサ及びジェネレータは前記発信元及び着信先シ
    ステム間のデータ送信を処理するため、請求項1に記載
    の辞書に従って構成された1又は1以上の辞書に対して
    アクセスするようにしたことを特徴とする分散型コンピ
    ュータ・システム。
  19. 【請求項19】 前記発信元及び着信先システムは1つ
    のコンピュータ・システム内に含まれることを特徴とす
    る請求項18記載の分散型コンピュータ・システム。
  20. 【請求項20】 階層構造に関係したデータの処理情報
    に関する一群の1又は1以上のコンピュータ・サーチ可
    能な定義トリーを含み、前記データ処理情報を符号化
    し、記憶し、回復するコンピュータ・システムによって
    使用するに適したデータ処理辞書であって、 前記トリーは前記コンピュータ・システムによって使用
    可能なコマンド,応答、又はデータの特性を含む最初の
    定義群から引出され、 前記特性は、存在する場合、前記コマンド,応答、又は
    データに供給する構造及び値の特質及び制限を含み、 各前記トリーは夫々前記コマンド,応答、又はデータの
    定義を表わし、 各前記トリーは名称によって識別されるルート・ノード
    を含み、 前記ルート・ノードは定義トリーの型式を記述する情報
    (それはコマンドか、応答か、又はデータかに関する)
    を含み、及び1又は1以上の内部又はターミナル・ディ
    センダント・ノードを含むことができ、 前記ノードは前記トリーによって表わされる定義の成分
    を表わし、 前記ディセンダント・ノードは該トリー内のノードのレ
    ベルを記述するレベル情報を含み、及び属性情報を含ま
    せることができ、 前記ノードは該ノードによって表わされるデータ処理情
    報に関する値の要求を含ませることができることを特徴
    とするデータ処理辞書。
  21. 【請求項21】 前記トリーの1又は1以上のノードは
    前記記憶したデータを表示するか又はアクセスする前記
    データ処理システムによって記憶されたデータに連結さ
    れることを特徴とする請求項20記載のデータ処理辞
    書。
  22. 【請求項22】 前記ルート・ノードはそのトリーによ
    って表わされるデータ処理情報の長さ制限に関する情報
    を含むことを特徴とする請求項21記載のデータ処理辞
    書。
  23. 【請求項23】 前記属性情報は、ノードによって表わ
    されるデータ処理情報が要求されるか、選択的か、又は
    無視可能かに関する情報を含むことを特徴とする請求項
    21記載のデータ処理辞書。
  24. 【請求項24】 前記属性情報は前記ノードによって表
    わされるデータ処理情報の長さ、反復可能性、又は反復
    不能性に関する情報を含むことを特徴とする請求項23
    記載のデータ処理辞書。
  25. 【請求項25】 各前記定義トリーのルート・ノードは
    前記トリーのために単独でアクセス可能なエントリであ
    ることを特徴とする請求項21記載のデータ処理辞書。
  26. 【請求項26】 前記定義トリーは前記コンピュータ・
    システムのためにデータ処理する解析又はジェネレーシ
    ョン・プログラミングによって使用するため、前記コン
    ピュータ・システムの主メモリーに記憶させることがで
    きることを特徴とする請求項21記載のデータ処理辞
    書。
  27. 【請求項27】 前記定義トリーはリニヤ形式で記憶す
    ることを特徴とする請求項21記載のデータ処理辞書。
  28. 【請求項28】 前記定義トリーはデプス・ファースト
    ・サーチ方式で表わされるリニヤ形式で記憶されること
    を特徴とする請求項21記載のデータ処理辞書。
  29. 【請求項29】 前記定義トリーはコンパクト形式で記
    憶されることを特徴とする請求項21記載のデータ処理
    辞書。
  30. 【請求項30】 前記定義トリーはコンパクト・リニヤ
    形式で記憶されることを特徴とする請求項21記載のデ
    ータ処理辞書。
  31. 【請求項31】 前記定義トリーはデプス・ファースト
    ・サーチ方法で表わされ、コンパクト・リニヤ形式で記
    憶されることを特徴とする請求項21記載のデータ処理
    辞書。
  32. 【請求項32】 コンピュータ・システムにより使用可
    能なコマンド,応答、又はデータの部分を規定するノー
    ドの最初の定義群から一群の1又は1以上のコンピュー
    タ・サーチ可能な定義トリーを引出し、 前記定義トリーに従いデータ送信ストリームの処理のた
    めに必要な情報のみを保持することにより前記ノードの
    各々をコンパクトにし、 前記コンパクトにしたノードをリニヤ形式で順序付け
    し、各前記定義トリーのルート・ノードから開始し、各
    前記コンパクトにしたノードに含まれている情報を発生
    実現した辞書に配置し、次に前記定義トリーの各チャイ
    ルド・ノードをアセンブリすることにより、各定義トリ
    ーをアセンブリする各工程を含み、 前記各チャイルド・ノードのアセンブリ処理は前記チャ
    イルド・ノードに含まれている情報を前記発生実現した
    辞書に配置し、次に各前記チャイルドのチャイルド・ノ
    ードをアセンブリする工程を含み、 前記ターミナル・ノードをアセンブリする処理は前記タ
    ーミナル・ノードに含まれている情報を前記発生実現し
    た辞書に配置する工程を含むことを特徴とする請求項2
    1記載のデータ処理辞書の創作方法。
  33. 【請求項33】 コンピュータ・システムによって使用
    可能なコマンド,応答、又はデータのノード規定部の最
    初の定義群から一群の1又は1以上のコンピュータ・サ
    ーチ可能な定義トリーを引出す引出手段と、 前記定義トリーに従いデータ送信ストリームの処理のた
    めに必要な情報のみを保持して各前記ノードをコンパク
    トにするコンパクタ手段と、 各トリーに対するルート・ノードから開始して各定義ト
    リーをアセンブリするアセンブラ手段とを含み、 前記アセンブラ手段は前記コンパクトにしたルート・ノ
    ードに含まれている情報を前記発生実現した辞書に配置
    し、次に、存在する場合、各コンパクトにしたノードの
    チャイルド・ノードをアセンブリすることができ、 前記アセンブラ手段は各前記チャイルド・ノードに含ま
    れている情報を前記発生実現した辞書に配置すること、
    及び、存在する場合、各前記チャイルドのチャイルド・
    ノードをアセンブリすることに適合させることを特徴と
    する請求項21記載のデータ処理辞書を構成する装置。
  34. 【請求項34】 コンピュータ・システムにおいて、内
    部又は他のコンピュータ・システムとの通信において、
    前記コンピュータ・システムにより使用するための階層
    構造に関係するデータ処理情報を符号化し、記憶し、回
    復するために、前記コンピュータ・システムによる使用
    に適合させるようにしたデータ処理辞書であって、 処理情報に関する一群の1又は1以上のコンピュータ・
    サーチ可能な定義トリーは前記コンピュータ・システム
    によって使用可能なコマンド,応答、又はデータの構造
    及び値の特質及び制限を含む最初の定義群から引出さ
    れ、 各前記トリーは夫々前記コマンド,応答、又はデータの
    定義を表わし、又名称によって識別されるルート・ノー
    ドを含み、 前記ルート・ノードは定義トリーの形式を記述する情報
    (それはコマンド,応答、又はデータに関するかどう
    か)を含み、及び1又は1以上の内部又はターミナル・
    ディセンダント・ノードを含むことができ、 前記ノードは前記トリーによって表わされる定義の成分
    を表わし、 前記ディセンダント・ノードは該トリー内のノード・レ
    ベルを記述するレベル情報を含み、 前記ノードは属性情報と、前記ノードによって表わされ
    る処理情報に関する値の要求を含むことができることを
    特徴とするデータ処理辞書。
  35. 【請求項35】 請求項21記載の辞書を使用した1又
    は1以上のコンピュータ・システムのデータ送信の符号
    化及び復号化方法であって、 前記辞書の個々の定義に対応するコマンド,応答、及び
    データ部に前記データ送信を分離し、前記部分は前記シ
    ステムによって使用されるデータ送信プロトコルが要求
    した仕様に合致することを保証し、 各前記部分のため、前記辞書から対応する定義トリーを
    回復し、 前記データ送信を通してステップし、要求した情報が存
    在すること、及び前記データ送信において遭遇した各前
    記ノードに対する前記トリー構造について関係する規則
    を遵守していることを保証し、 前記ノードに対応する前記定義に記述されている前記ノ
    ードに関する構造及び値の規則が支持されていることを
    保証する各工程を含むことを特徴とするデータ送信の符
    号化及び復号化方法。
  36. 【請求項36】 前記辞書定義は前記コンピュータ・シ
    ステムの内部データ構造を該定義の要求に合致するデー
    タ送信に翻訳するためのロードマップとして作用するこ
    とを特徴とする請求項35記載のデータ送信の符号化及
    び復号化方法。
  37. 【請求項37】 前記辞書定義は前記定義の要求による
    前記データ送信の照合と、前記コンピュータ・システム
    の内部データ構造への翻訳とに対するロードマップとし
    て作用することを特徴とする請求項36記載のデータ送
    信の符号化及び復号化方法。
  38. 【請求項38】 発信元システム及び着信先システムを
    含む分散型コンピュータ・システムであって、 前記発信元システムはアプリケーション・リクエスタ
    と、パーサと、前記アプリケーション・リクエスタを支
    援するジェネレータとを含み、 前記着信先システムはサーバと、パーサと、前記サーバ
    を支援するジェネレータとを含み、 前記パーサ及びジェネレータは前記発信元及び着信先シ
    ステム間のデータ送信を処理するため、請求項21に記
    載の辞書に従って構成された1又は1以上の辞書に対し
    てアクセスするようにしたことを特徴とする分散型コン
    ピュータ・システム。
  39. 【請求項39】 前記発信元及び着信先システムは1つ
    のコンピュータ・システム内に含まれることを特徴とす
    る請求項38記載の分散型コンピュータ・システム。
JP01815292A 1991-03-28 1992-01-06 階層構造データ処理情報を含むデータ処理辞書を作成する方法及び装置 Expired - Fee Related JP3272014B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CA002039365A CA2039365C (en) 1991-03-28 1991-03-28 Method and means for encoding storing and retrieving hierarchical data processing information for a computer system
CA2039365 1991-03-28

Publications (2)

Publication Number Publication Date
JPH0512095A true JPH0512095A (ja) 1993-01-22
JP3272014B2 JP3272014B2 (ja) 2002-04-08

Family

ID=4147293

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01815292A Expired - Fee Related JP3272014B2 (ja) 1991-03-28 1992-01-06 階層構造データ処理情報を含むデータ処理辞書を作成する方法及び装置

Country Status (3)

Country Link
US (3) US5632031A (ja)
JP (1) JP3272014B2 (ja)
CA (5) CA2246948C (ja)

Families Citing this family (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2246948C (en) * 1991-03-28 1999-09-14 Ibm Canada Limited-Ibm Canada Limitee Method and means for encoding storing and retrieving hierarchical data processing information for a computer system
US5778223A (en) * 1992-03-17 1998-07-07 International Business Machines Corporation Dictionary for encoding and retrieving hierarchical data processing information for a computer system
US5953723A (en) * 1993-04-02 1999-09-14 T.M. Patents, L.P. System and method for compressing inverted index files in document search/retrieval system
US5991751A (en) * 1997-06-02 1999-11-23 Smartpatents, Inc. System, method, and computer program product for patent-centric and group-oriented data processing
US6339767B1 (en) 1997-06-02 2002-01-15 Aurigin Systems, Inc. Using hyperbolic trees to visualize data generated by patent-centric and group-oriented data processing
US6963920B1 (en) 1993-11-19 2005-11-08 Rose Blush Software Llc Intellectual asset protocol for defining data exchange rules and formats for universal intellectual asset documents, and systems, methods, and computer program products related to same
WO1996032685A1 (en) * 1995-04-11 1996-10-17 Kinetech, Inc. Identifying data in a data processing system
US5873096A (en) 1997-10-08 1999-02-16 Siebel Systems, Inc. Method of maintaining a network of partially replicated database system
US6604117B2 (en) 1996-03-19 2003-08-05 Siebel Systems, Inc. Method of maintaining a network of partially replicated database system
ATE253239T1 (de) * 1996-03-19 2003-11-15 Siebel Systems Inc Verfahren zur instandhaltung von einer netzwerk von teilweise replizierten datenbanken
US6081798A (en) * 1996-04-24 2000-06-27 International Business Machines Corp. Object oriented case-based reasoning framework mechanism
US5778378A (en) 1996-04-30 1998-07-07 International Business Machines Corporation Object oriented information retrieval framework mechanism
US5857184A (en) * 1996-05-03 1999-01-05 Walden Media, Inc. Language and method for creating, organizing, and retrieving data from a database
US5721910A (en) * 1996-06-04 1998-02-24 Exxon Research And Engineering Company Relational database system containing a multidimensional hierachical model of interrelated subject categories with recognition capabilities
US5809507A (en) * 1996-07-01 1998-09-15 Sun Microsystems, Inc. Method and apparatus for storing persistent objects on a distributed object network using a marshaling framework
EP0825506B1 (en) 1996-08-20 2013-03-06 Invensys Systems, Inc. Methods and apparatus for remote process control
US5781910A (en) * 1996-09-13 1998-07-14 Stratus Computer, Inc. Preforming concurrent transactions in a replicated database environment
US5852818A (en) * 1996-12-23 1998-12-22 Oracle Corporation Non-recursive method for parameter evaluation within an information management system
JP3484325B2 (ja) * 1997-09-02 2004-01-06 富士通株式会社 条件付き回答対応エージェントシステム装置およびプログラム記憶媒体
JP3627055B2 (ja) * 1998-02-10 2005-03-09 インターナショナル・ビジネス・マシーンズ・コーポレーション キャッシュ対象オブジェクト選択方法、キャッシュ破棄方法及びコンピュータ
US6105035A (en) * 1998-02-17 2000-08-15 Lucent Technologies, Inc. Method by which notions and constructs of an object oriented programming language can be implemented using a structured query language (SQL)
US6205482B1 (en) * 1998-02-19 2001-03-20 Ameritech Corporation System and method for executing a request from a client application
US6629132B1 (en) * 1998-12-23 2003-09-30 Novell, Inc. Predicate indexing of data stored in a computer with application to indexing cached data
US6345266B1 (en) * 1998-12-23 2002-02-05 Novell, Inc. Predicate indexing for locating objects in a distributed directory
US7716060B2 (en) 1999-03-02 2010-05-11 Germeraad Paul B Patent-related tools and methodology for use in the merger and acquisition process
US7966328B2 (en) 1999-03-02 2011-06-21 Rose Blush Software Llc Patent-related tools and methodology for use in research and development projects
WO2000070531A2 (en) 1999-05-17 2000-11-23 The Foxboro Company Methods and apparatus for control configuration
US7089530B1 (en) * 1999-05-17 2006-08-08 Invensys Systems, Inc. Process control configuration system with connection validation and configuration
US6370534B1 (en) * 1999-06-01 2002-04-09 Pliant Technologies, Inc. Blocking techniques for data storage
US6788980B1 (en) 1999-06-11 2004-09-07 Invensys Systems, Inc. Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network
US6353819B1 (en) * 1999-09-29 2002-03-05 Bull Hn Information Systems Inc. Method and system for using dynamically generated code to perform record management layer functions in a relational database manager
US6353820B1 (en) * 1999-09-29 2002-03-05 Bull Hn Information Systems Inc. Method and system for using dynamically generated code to perform index record retrieval in certain circumstances in a relational database manager
US6125395A (en) * 1999-10-04 2000-09-26 Piiq.Com, Inc. Method for identifying collections of internet web sites with domain names
US20020035611A1 (en) * 2000-01-14 2002-03-21 Dooley Thomas P. System and method for providing an information network on the internet
US6711574B1 (en) * 2000-02-01 2004-03-23 Emc Corporation Retrieval of management information
US6901481B2 (en) 2000-04-14 2005-05-31 Stratus Technologies Bermuda Ltd. Method and apparatus for storing transactional information in persistent memory
US6802022B1 (en) 2000-04-14 2004-10-05 Stratus Technologies Bermuda Ltd. Maintenance of consistent, redundant mass storage images
FR2811101B1 (fr) * 2000-07-03 2002-09-20 Axicare Procede de traitement de donnees structurees utilisant un langage informatique oriente objet
US6622137B1 (en) * 2000-08-14 2003-09-16 Formula Telecom Solutions Ltd. System and method for business decision implementation in a billing environment using decision operation trees
US6941294B2 (en) * 2000-08-28 2005-09-06 Emotion, Inc. Method and apparatus for digital media management, retrieval, and collaboration
GB0023169D0 (en) * 2000-09-20 2000-11-01 Ibm Message parsing in message processing systems
US20020129335A1 (en) * 2000-12-18 2002-09-12 Philips Electronics North America Corp. Robust logging system for embedded systems for software compilers
US6948010B2 (en) * 2000-12-20 2005-09-20 Stratus Technologies Bermuda Ltd. Method and apparatus for efficiently moving portions of a memory block
US6886171B2 (en) * 2001-02-20 2005-04-26 Stratus Technologies Bermuda Ltd. Caching for I/O virtual address translation and validation using device drivers
US6766413B2 (en) 2001-03-01 2004-07-20 Stratus Technologies Bermuda Ltd. Systems and methods for caching with file-level granularity
US6874102B2 (en) * 2001-03-05 2005-03-29 Stratus Technologies Bermuda Ltd. Coordinated recalibration of high bandwidth memories in a multiprocessor computer
US6643665B2 (en) 2001-05-10 2003-11-04 Hewlett-Packard Development Company, Lp. System for setting image intent using markup language structures
US6996750B2 (en) * 2001-05-31 2006-02-07 Stratus Technologies Bermuda Ltd. Methods and apparatus for computer bus error termination
WO2003065172A2 (en) * 2002-01-30 2003-08-07 Core Sdi, Inc. Framework for maintaining information security in computer networks
US6928324B2 (en) 2002-02-14 2005-08-09 Pacesetter, Inc. Stimulation device for sleep apnea prevention, detection and treatment
US6999817B2 (en) 2002-02-14 2006-02-14 Packsetter, Inc. Cardiac stimulation device including sleep apnea prevention and treatment
US6904320B2 (en) 2002-02-14 2005-06-07 Pacesetter, Inc. Sleep apnea therapy device using dynamic overdrive pacing
US7627585B2 (en) * 2002-12-02 2009-12-01 Sap Ag Data structure mapping and packaging
US7272818B2 (en) * 2003-04-10 2007-09-18 Microsoft Corporation Creation of an object within an object hierarchy structure
US20050021502A1 (en) * 2003-05-23 2005-01-27 Benjamin Chen Data federation methods and system
US7293039B1 (en) 2004-03-12 2007-11-06 Network Appliance, Inc. Storage resource management across multiple paths
US7539702B2 (en) * 2004-03-12 2009-05-26 Netapp, Inc. Pre-summarization and analysis of results generated by an agent
US7844646B1 (en) * 2004-03-12 2010-11-30 Netapp, Inc. Method and apparatus for representing file system metadata within a database for efficient queries
US7630994B1 (en) 2004-03-12 2009-12-08 Netapp, Inc. On the fly summarization of file walk data
US8756521B1 (en) 2004-09-30 2014-06-17 Rockwell Automation Technologies, Inc. Systems and methods for automatic visualization configuration
US7634502B2 (en) * 2005-01-24 2009-12-15 Paul Colton System and method for improved content delivery
US7792860B2 (en) * 2005-03-25 2010-09-07 Oracle International Corporation System for change notification and persistent caching of dynamically computed membership of rules-based lists in LDAP
US7672737B2 (en) * 2005-05-13 2010-03-02 Rockwell Automation Technologies, Inc. Hierarchically structured data model for utilization in industrial automation environments
CN101529345B (zh) * 2005-05-13 2011-10-19 洛克威尔自动控制技术股份有限公司 工业自动化环境中的分布式数据库
US8799800B2 (en) 2005-05-13 2014-08-05 Rockwell Automation Technologies, Inc. Automatic user interface generation
US7650405B2 (en) 2005-05-13 2010-01-19 Rockwell Automation Technologies, Inc. Tracking and tracing across process boundaries in an industrial automation environment
US7809683B2 (en) 2005-05-13 2010-10-05 Rockwell Automation Technologies, Inc. Library that includes modifiable industrial automation objects
US7676281B2 (en) * 2005-05-13 2010-03-09 Rockwell Automation Technologies, Inc. Distributed database in an industrial automation environment
JP4200456B2 (ja) * 2005-12-28 2008-12-24 ブラザー工業株式会社 周辺装置、プログラム、制御方法
US8185576B2 (en) 2006-03-14 2012-05-22 Altnet, Inc. Filter for a distributed network
US7660978B2 (en) * 2007-03-07 2010-02-09 International Business Machines Corporation System and method to provide device unique diagnostic support with a single generic command
US8265789B2 (en) * 2007-12-03 2012-09-11 Electronics And Telecommunications Research Institute Network-based robot system and method for action execution of robot
CN104407518B (zh) 2008-06-20 2017-05-31 因文西斯系统公司 对用于过程控制的实际和仿真设施进行交互的系统和方法
US8127060B2 (en) 2009-05-29 2012-02-28 Invensys Systems, Inc Methods and apparatus for control configuration with control objects that are fieldbus protocol-aware
US8463964B2 (en) 2009-05-29 2013-06-11 Invensys Systems, Inc. Methods and apparatus for control configuration with enhanced change-tracking
CN102012900B (zh) * 2009-09-04 2013-01-30 阿里巴巴集团控股有限公司 信息检索方法和系统
US8984533B2 (en) 2010-04-15 2015-03-17 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US8484401B2 (en) 2010-04-15 2013-07-09 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US9392072B2 (en) 2010-04-15 2016-07-12 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US9176712B2 (en) 2013-03-14 2015-11-03 Oracle International Corporation Node Grouped Data Marshalling
CN104484337B (zh) * 2014-11-19 2018-09-14 西安电子科技大学 Xml文档的存储方法
CN113590348B (zh) * 2021-07-26 2024-05-17 京东科技控股股份有限公司 基于树状结构的参数传递方法、装置、设备及介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5345587A (en) * 1988-09-14 1994-09-06 Digital Equipment Corporation Extensible entity management system including a dispatching kernel and modules which independently interpret and execute commands
US5448726A (en) * 1989-10-23 1995-09-05 International Business Machines Corporation Data base management system with data dictionary cache including a single loadable object descriptor
US5257365A (en) * 1990-03-16 1993-10-26 Powers Frederick A Database system with multi-dimensional summary search tree nodes for reducing the necessity to access records
US5202977A (en) * 1990-07-13 1993-04-13 Premenos Corp. Edi translation system using plurality of communication processes and de-enveloping procedure corresponding to transmitted communication process
US5327559A (en) * 1990-10-23 1994-07-05 International Business Machines Corporation Remote and batch processing in an object oriented programming system
CA2246948C (en) * 1991-03-28 1999-09-14 Ibm Canada Limited-Ibm Canada Limitee Method and means for encoding storing and retrieving hierarchical data processing information for a computer system
US5475587A (en) * 1991-06-28 1995-12-12 Digital Equipment Corporation Method and apparatus for efficient morphological text analysis using a high-level language for compact specification of inflectional paradigms
US5481721A (en) * 1991-07-17 1996-01-02 Next Computer, Inc. Method for providing automatic and dynamic translation of object oriented programming language-based message passing into operation system message passing using proxy objects

Also Published As

Publication number Publication date
CA2246940A1 (en) 1992-09-29
CA2246946A1 (en) 1992-09-29
US5970494A (en) 1999-10-19
CA2246949A1 (en) 1992-09-29
CA2246948C (en) 1999-09-14
CA2246946C (en) 1999-09-14
CA2039365C (en) 2000-01-18
CA2246948A1 (en) 1992-09-29
US5632031A (en) 1997-05-20
JP3272014B2 (ja) 2002-04-08
CA2039365A1 (en) 1992-09-29
US5659727A (en) 1997-08-19
CA2246949C (en) 2000-04-18
CA2246940C (en) 2003-03-11

Similar Documents

Publication Publication Date Title
JPH0512095A (ja) コンピユータ・システム用階層構造データ処理情報の符号化、記憶、及び回復手段及び方法
US5778223A (en) Dictionary for encoding and retrieving hierarchical data processing information for a computer system
US5721895A (en) Computer program product and program storage device for a data transmission dictionary for encoding, storing, and retrieving hierarchical data processing information for a computer system
US8103705B2 (en) System and method for storing text annotations with associated type information in a structured data store
US5291583A (en) Automatic storage of persistent ASN.1 objects in a relational schema
US6658624B1 (en) Method and system for processing documents controlled by active documents with embedded instructions
US7559052B2 (en) Meta-model for associating multiple physical representations of logically equivalent entities in messaging and other applications
EP1652062B1 (en) System and method for using an xml file to control xml to entity/relationship transformation
JP2005534107A (ja) レジストリ駆動型相互運用性及び文書の交換
US20040205615A1 (en) Enhanced mechanism for automatically generating a transformation document
EP0888585A1 (en) Computer system and computer implemented process for representing software system descriptions and for generating executable computer programs and computer system configurations from software system descriptions
JPH10326255A (ja) 言語から独立したメッセージの操作方法
US20040148612A1 (en) System and method for generating an application programming interface from a schema
EP0520708B1 (en) Method and apparatus for converting high level form abstract syntaxes into an intermediate form
CN115562642A (zh) 基于数据库和Mustache模板引擎的生成代码方法
US5687365A (en) System and method for creating a data dictionary for encoding, storing, and retrieving hierarchical data processing information for a computer system
CN113704575A (zh) 解析XML与Java文件的SQL方法、装置、设备及存储介质
JPH09282218A (ja) Html文書本型整形方法及びその装置
JPH07129382A (ja) スパイラル型オブジェクト指向のソフトウェア開発支援システムおよびソフトウェア開発方法
AU2001216013B2 (en) Method and system for translating data associated with a relational database
Škrbić et al. Bibliographic records editor in XML native environment
Tirri et al. ALCHEMIST/spl minus/an object-oriented tool to build transformations between heterogeneous data representations
KR20020061888A (ko) 엑스엠엘 응용프로그램의 개발방법
Crawley Generating software from models
CA2246943A1 (en) Method and means for encoding storing and retrieving hierarchical data processing information for a computer system

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080125

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090125

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees