Movatterモバイル変換


[0]ホーム

URL:


JP2005284575A - Tagged structured document storage system, program thereof, and method thereof - Google Patents

Tagged structured document storage system, program thereof, and method thereof
Download PDF

Info

Publication number
JP2005284575A
JP2005284575AJP2004095931AJP2004095931AJP2005284575AJP 2005284575 AJP2005284575 AJP 2005284575AJP 2004095931 AJP2004095931 AJP 2004095931AJP 2004095931 AJP2004095931 AJP 2004095931AJP 2005284575 AJP2005284575 AJP 2005284575A
Authority
JP
Japan
Prior art keywords
column
information
document
specific part
structured document
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.)
Pending
Application number
JP2004095931A
Other languages
Japanese (ja)
Inventor
Koji Yamamoto
晃治 山本
Tomotaka Matsuda
友隆 松田
Hideaki Kato
英明 加藤
Rieko Yamamoto
里枝子 山本
Tadahiro Uehara
忠弘 上原
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu LtdfiledCriticalFujitsu Ltd
Priority to JP2004095931ApriorityCriticalpatent/JP2005284575A/en
Publication of JP2005284575ApublicationCriticalpatent/JP2005284575A/en
Pendinglegal-statusCriticalCurrent

Links

Images

Landscapes

Abstract

Translated fromJapanese

【課題】 本発明は、タグ付き構造化文書を取り扱えるシステムとレガシーシステムとの間でタグ付き構造化文書の任意の情報を容易に共有できる仕組みを提供することを目的とする。
【解決手段】 マッピング条件及び文書特定キーとを設定情報ファイルに任意設定する機能(5)と、前記設定情報ファイルを読み取り前記文書特定キーに対応付けて前記タグ付き構造化文書(2)の全体を前記RDBの全体用カラムに格納し且つ特定部位の情報を前記RDB(3)の特定部位用カラムに格納する機能(4)と、前記文書特定キーに基づいて、特定部位用カラムの情報へアクセスする機能(4)と、前記設定情報ファイルを読み取り、前記全体用カラムの情報及び前記特定用カラムの情報からタグ付き構造化文書(2)を生成する機能(4)と、をコンピュータに実行させる。
【選択図】図1
PROBLEM TO BE SOLVED: To provide a mechanism capable of easily sharing arbitrary information of a tagged structured document between a system capable of handling the tagged structured document and a legacy system.
A function (5) for arbitrarily setting a mapping condition and a document specifying key in a setting information file, and reading the setting information file and associating it with the document specifying key, the entire structured document with tag (2). Is stored in the RDB overall column and the specific part information is stored in the specific part column of the RDB (3), and the specific part column information is obtained based on the document specifying key. The computer executes the function (4) for accessing and the function (4) for reading the setting information file and generating the tagged structured document (2) from the information for the entire column and the information for the specifying column. Let
[Selection] Figure 1

Description

Translated fromJapanese

本発明は、タグ付き構造化文書とDB(DataBase)との間のマッピング技術に関し、特にタグ付き構造化文書中の部分的な情報をRDB(Relational DataBase)システムから利用可能にする技術に関する。  The present invention relates to a mapping technique between a tagged structured document and a DB (DataBase), and more particularly to a technique for making partial information in a tagged structured document available from an RDB (Relational DataBase) system.

XML(eXtensible Markup Language)を始めとするタグ付き構造化文書をRDB(Relational DataBase)に格納する方法として、タグ付き構造化文書を一つのカラムに一括格納させる方法がある。この方法ではタグ付き構造化文書を単なるバイナリデータもしくは文字列データとして扱い、そのタグ付き構造化文書の全てを一括してRDBの一カラムに格納する。このため、この方法はタグ付き構造化文書の構造によらず汎用的に格納できる点では優れている。しかしタグ付き構造化文書中の部分的な情報を頻繁に更新するような場合、タグ付き構造化文書全体を取り出して対象部分を変更し、更にその変更されたタグ付き構造化文書の全てを再格納する必要があるため、処理スピードが低下するという欠点も持つ。  As a method of storing a structured document with a tag such as XML (eXtensible Markup Language) in an RDB (Relational DataBase), there is a method of collectively storing the structured document with a tag in one column. In this method, a structured document with a tag is handled as simple binary data or character string data, and all the structured documents with a tag are stored in one column of the RDB at a time. For this reason, this method is excellent in that it can be stored for general use regardless of the structure of the structured document with tag. However, if the partial information in a tagged structured document is updated frequently, the entire tagged structured document is retrieved, the target part is changed, and all the modified tagged structured documents are re-executed. Since it needs to be stored, it also has the disadvantage that the processing speed decreases.

これに対し、タグ付き構造化文書全体及びそのタグ付き構造化文書に含まれる部分的な情報とを対応付けてDBに格納することにより、当該タグ付き構造化文書中の部分的な情報に対する更新を高速に行なわせる技術がある。  In contrast, the entire structured document with tag and partial information included in the tagged structured document are stored in the DB in association with each other, thereby updating the partial information in the tagged structured document. There is a technology that makes it possible to perform at high speed.

この技術では、構造化文書(上記タグ付き構造化文書)の内容を構造解析することによりその構造化文書の階層関係を示す構造解析データを生成する。そしてその構造解析データから、抽出要素定義に基づき、上記構造化文書中の所定の配置にある要素を見つけ出し、その要素に含まれる属性情報を構造化文書全体と関連付けて別々のカラムでDB管理する。従って、構造化文書中の所定の配置にある要素に含まれる属性情報のみを更新する場合、その属性情報を格納するカラムの内容を更新するだけで良く、構造化文書の再生成時は、この更新情報を構造化文書全体の対応個所に反映させることができる。このように本技術は、タグ付き構造化文書の細部とDBとの間のマッピング技術を提供する(特許文献1参照)。
特開2002−117055号公報
In this technique, structural analysis data indicating the hierarchical relationship of the structured document is generated by structurally analyzing the contents of the structured document (the structured document with the tag). Then, based on the extracted element definition from the structural analysis data, an element in a predetermined arrangement in the structured document is found, and attribute information included in the element is associated with the entire structured document, and DB management is performed using separate columns. . Therefore, when updating only the attribute information included in the element in the predetermined arrangement in the structured document, it is only necessary to update the contents of the column storing the attribute information. Update information can be reflected in corresponding parts of the entire structured document. As described above, the present technology provides a mapping technology between the details of a tagged structured document and a DB (see Patent Document 1).
JP 2002-117055 A

従来のマッピング技術は、タグ付き構造化文書を扱うことのできるシステムを介することによりタグ付き構造化文書中の部分的な情報の登録・更新やタグ付き構造化文書の再生成を行なう技術を提供する。このため、当該技術は閉じたシステムに対しては効果的に機能するが、その他のシステムと連携して互いに情報共有を図る場合は両システムに大幅な変更が必要となる。そこでタグ付き構造化文書を扱うことのできるシステムに留まらず、その他のシステムに対しても有効な、汎用性のあるマッピング技術の開発が望まれている。  Conventional mapping technology provides technology for registering and updating partial information in tagged structured documents and regenerating tagged structured documents through a system that can handle tagged structured documents. To do. For this reason, the technology works effectively for a closed system, but when sharing information with each other in cooperation with other systems, both systems require significant changes. Therefore, development of a versatile mapping technique that is effective not only for systems that can handle structured documents with tags but also for other systems is desired.

昨今では例えばXMLを取り扱うシステムが普及し始めている。しかしながら、XMLが普及する以前はRDBにデータを蓄積しているものが殆どであり、これまで築き上げてきた高い信頼性から今後もRDBによるデータ蓄積は衰えることはないと考えられる。このため、所定のマッピング定義を行ったXMLシステムをその他のRDBシステム(レガシーシステム)に連携させる場合は両システムに大幅な変更を加えなければならず、また別のRDBシステムと連携させる場合は再び両システムに大幅な変更を加えなければならないため、開発時間に手間を要し、レガシーシステムの資産の流用促進に支障をきたす。
よってこれまで蓄積してきたRDBシステムの資産を流用できるように新システムであるXMLシステムをレガシーシステムに連携させるニーズは非常に高く、これらを簡易的に低コストで連携できる汎用的な仕組みを提供することは、信頼性の高いレガシーシステムの利用を衰退させることなく新システムの発展を促進させる点で非常に有効である。
Nowadays, for example, a system that handles XML is becoming popular. However, before the spread of XML, most data is stored in the RDB, and it is considered that the data storage by the RDB will not decline in the future because of the high reliability built up so far. For this reason, when linking an XML system with a predetermined mapping definition to another RDB system (legacy system), both systems must be significantly changed, and when linking with another RDB system, again Since both systems have to be changed significantly, it takes time to develop and hinders the diversion of legacy system assets.
Therefore, there is a very high need to link the XML system, which is a new system, with legacy systems so that the assets of the RDB system that have been accumulated so far can be diverted, and provide a general-purpose mechanism that can link these easily and at low cost. This is very effective in promoting the development of new systems without diminishing the use of reliable legacy systems.

そこで本発明は、タグ付き構造化文書を取り扱えるシステムとレガシーシステムとの間でタグ付き構造化文書の任意の情報を容易に共有できるようにする仕組みを提供することを第一の目的とする。  Therefore, a first object of the present invention is to provide a mechanism that makes it possible to easily share arbitrary information of a tagged structured document between a system that can handle the tagged structured document and a legacy system.

そしてこの時、同一構造のパターンが繰り返されるタグ付き構造化文書を容易に取り扱うことのできる仕組みを提供することを第二の目的とする。
また更に、共有対象となるタグ付き構造化文書中の任意の情報をその利用頻度に応じて動的に変更させる仕組みを提供することを第三の目的とする。
At this time, a second object is to provide a mechanism that can easily handle a structured document with a tag in which a pattern of the same structure is repeated.
A third object is to provide a mechanism for dynamically changing arbitrary information in a tagged structured document to be shared according to the frequency of use.

本発明は上記課題を解決するために以下のように構成する。
本発明の態様一つは、コンピュータで実行可能なプログラムであり、タグ付き構造化文書とRDBとの間のマッピング条件及び上記RDBに格納される上記タグ付き構造化文書を一意に特定するための文書特定キーとを設定情報ファイルに任意設定する機能と、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーとなる情報に対応付けて上記タグ付き構造化文書の全体を上記RDBの全体用カラムに格納し且つ上記タグ付き構造化文書の特定部位の情報を上記RDBの特定部位用カラムに格納する機能と、上記文書特定キーに基づいて、上記RDBの特定部位用カラムに格納される情報へアクセスする機能と、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーの所定情報に対応付けされた上記全体用カラムの情報及び上記特定部位用カラムの情報からタグ付き構造化文書を生成する機能と、をコンピュータに実行させる。
In order to solve the above problems, the present invention is configured as follows.
One aspect of the present invention is a computer-executable program for uniquely specifying a mapping condition between a tagged structured document and an RDB and the tagged structured document stored in the RDB. A function for arbitrarily setting a document specifying key in the setting information file, and the latest setting information in the setting information file are read, and the entire structured document with tag is associated with the information serving as the document specifying key in the entire RDB. Based on the function for storing the specific part information of the structured document with the tag in the RDB column and the specific part column of the RDB and the specific part column of the RDB based on the document specific key A function for accessing information, and the latest setting information in the setting information file are read, and the entire color corresponding to the predetermined information of the document specifying key is read. And generating a tagged structured document from the information and the information of the specific part for column, causing the computer to execute.

また、同一の特定部位を二つ以上含むタグ付き構造化文書において、該タグ付き構造化文書中の各特定部位の位置を一意に特定する部位特定キーを上記設定情報ファイルに任意設定する機能と、上記タグ付き構造化文書中に同一の特定部位を二つ以上含む場合、上記同一の特定部位の情報を上記部位特定キーによって指定される情報に対応付けて上記特定部位用カラムに格納する機能と、上記特定部位用カラムに格納される上記同一の特定部位の情報の夫々に上記部位特定キーに基づいてアクセスする機能と、上記部位特定キーの情報から上記タグ付き構造化文書全体中の上記同一の特定部位の情報の位置を特定し、上記全体用カラムの情報及び上記特定部位用カラムの情報から、上記タグ付き構造化文書全体に上記同一の特定部位の情報が反映されたタグ付き構造化文書を生成する機能と、を更にコンピュータに実行させてもよい。  Further, in a structured document with a tag including two or more of the same specific part, a function for arbitrarily setting a part specifying key for uniquely specifying the position of each specific part in the tagged structured document in the setting information file; A function of storing the same specific part information in the specific part column in association with the information specified by the part specific key when two or more of the same specific part is included in the structured document with tag A function for accessing each of the information on the same specific part stored in the specific part column based on the part specific key, and the information in the entire tagged structured document from the part specific key information. The position of the information on the same specific part is specified, and the information on the same specific part is included in the entire structured document with tag from the information on the column for the whole and the information on the column for the specific part. And generating the mirrored tagged structured document may be allowed to run further into the computer.

また、上記特定部位用カラムは少なくとも動的部位用カラムを含み、上記タグ付き構造化文書に含まれる部位の中から動的に選択される部位の情報の格納先として上記動的部位用カラムの指定を上記設定情報ファイルに任意設定する機能と、上記全体用カラムに格納されるタグ付き構造化文書全体及び上記特定部位用カラムに格納される部位の情報を対象に、上記タグ付き構造化文書に含まれる部位の情報へのアクセス数を上記部位ごとに履歴管理する機能と、上記設定情報ファイルに指定された上記動的部位用カラムに対し、上記タグ付き構造化文書中の上記部位の位置を指定する指定パスにより、上記タグ付き構造化文書中の上記アクセス数の多い部位を上記動的に選択される部位として昇降順に対応付けする機能と、上記指定パスに基づいて上記タグ付き構造化文書中の上記動的に選択される部位を上記動的部位用カラムに格納する機能と、上記指定パスに基づいて上記タグ付き構造化文書全体中の上記動的に選択される部位の位置を特定し、上記全体用カラムの情報及び上記動的部位用カラムの情報から、上記動的に選択される部位の情報が上記タグ付き構造化文書全体に反映されたタグ付き構造化文書を生成する機能とを更にコンピュータに実行させてもよい。  Further, the specific part column includes at least a dynamic part column, and the dynamic part column is used as a storage destination of information on a part that is dynamically selected from parts included in the tagged structured document. The above-described structured document with the function of arbitrarily setting the designation in the setting information file, the entire structured document with tag stored in the entire column, and the part information stored in the column for specific part The function of history management of the number of accesses to the part information included in each part, and the position of the part in the tagged structured document with respect to the dynamic part column specified in the setting information file A function for associating the part with a large number of accesses in the tagged structured document with the designated path for designating as the part to be dynamically selected in the ascending / descending order. A function for storing the dynamically selected portion in the tagged structured document in the dynamic portion column, and the dynamic selection in the entire tagged structured document based on the designated path. The position of the part to be selected is identified, and the information on the part that is dynamically selected from the information on the column for the whole and the information on the column for the dynamic part is reflected in the entire structured document with the tag. The computer may further execute a function of generating a structured document.

このとき、上記特定部位用カラムは、上記設定情報ファイルに上記タグ付き構造化文書中の格納対象部位として指定された所定の特定部位を格納するための固定部位カラム及び上記動的部位用カラムからなり、上記タグ付き構造化文書に含まれる部位の情報へのアクセス数を上記部位ごとに履歴管理する機能において、上記動的部位用カラムに格納される部位の情報、上記固定部位カラムに格納される特定部位の情報、及び上記全体用カラムに格納されるタグ付き構造化文書全体に含まれる部位の情報へのアクセス数を上記部位ごとに履歴管理する機能をコンピュータに実行させることが望ましい。  At this time, the specific part column includes a fixed part column and a dynamic part column for storing a predetermined specific part designated as a storage target part in the tagged structured document in the setting information file. In the function for managing the number of accesses to the part information included in the structured document with the tag for each part, the part information stored in the dynamic part column is stored in the fixed part column. It is desirable to cause a computer to execute a function for managing the number of accesses to specific part information and the number of accesses to part information contained in the entire tagged structured document stored in the whole column.

なお、上記設定情報ファイルに指定された上記動的部位用カラムに対し、上記タグ付き構造化文書中の上記部位の位置を指定する指定パスにより、上記タグ付き構造化文書中の上記アクセス数の多い部位を上記動的に選択される部位として昇降順に対応付けする機能では、上記動的部位用カラムを備えるテーブル名、該動的部位用カラムのカラム名、及び動的に選択される部位の位置を指定する上記指定パスとを動的マッピングテーブルで互いに対応付けして管理するようにしてもよい。  Note that the number of accesses in the tagged structured document is determined by a designated path for designating the position of the part in the tagged structured document for the dynamic part column designated in the setting information file. In the function of associating many parts as the dynamically selected parts in the ascending / descending order, the table name including the dynamic part column, the column name of the dynamic part column, and the dynamically selected part The specified path for specifying the position may be managed in association with each other in the dynamic mapping table.

上記各態様において、上記マッピング条件には、上記タグ付き構造化文書の生成時に、上記特定部位用カラムに格納されている情報を上記全体用カラムに格納されているタグ付き構造化文書全体の対応個所に反映させるか否かの指定が含まれ、上記反映させる指定の場合、上記タグ付き構造化文書の生成時に、上記特定部位用カラムに格納されている情報を上記全体用カラムに格納されているタグ付き構造化文書全体の対応個所に反映させる機能と、をコンピュータに実行させるようにしてもよい。  In each of the above aspects, the mapping condition includes the correspondence between the information stored in the specific part column and the entire tagged structured document stored in the entire column when the tagged structured document is generated. In the case of the specification to reflect, the information stored in the specific part column is stored in the whole column when the structured document with tag is generated. The function of reflecting the corresponding part of the entire structured document with a tag may be executed by a computer.

また上記各態様において、所定時刻またはシステム負荷を監視する機能と、上記所定時刻または低負荷時に、上記特定部位用カラムに格納されている情報を対応する上記タグ付き構造化文書全体中の対応個所に反映し、反映後のタグ付き構造化文書全体を元の上記全体用カラムに再格納する機能と、を更にコンピュータに実行させるようにしてもよい。  Further, in each of the above aspects, the corresponding part in the entire structured document with tag corresponding to the function for monitoring the predetermined time or system load and the information stored in the specific part column at the predetermined time or low load. And the function of re-storing the entire tagged structured document after reflection in the original column may be further executed by the computer.

また上記各態様において、上記特定部位用カラムでは、上記タグ付き構造化文書中の部位の情報が該部位毎に別々のカラムに格納され、上記タグ付き構造化文書全体中の部位の情報に対する更新は該部位と対応付けされた上記カラムを単位として行なう、ことをコンピュータに実行させることが望ましい。  Further, in each of the above aspects, in the specific part column, the part information in the tagged structured document is stored in a separate column for each part, and the part information in the whole tagged structured document is updated. It is desirable to cause the computer to execute the above-mentioned column associated with the part as a unit.

本発明のその他の態様の一つであるコンピュータ読み取り可能な記録媒体は、タグ付き構造化文書とRDBとの間のマッピング条件及び上記RDBに格納される上記タグ付き構造化文書を一意に特定するための文書特定キーとを設定情報ファイルに任意設定する機能と、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーとなる情報に対応付けて上記タグ付き構造化文書の全体を上記RDBの全体用カラムに格納し且つ上記タグ付き構造化文書の特定部位の情報を上記RDBの特定部位用カラムに格納する機能と、上記文書特定キーに基づいて、上記RDBの特定部位用カラムに格納される情報へアクセスする機能と、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーの所定情報に対応付けされた上記全体用カラムの情報及び上記特定部位用カラムの情報からタグ付き構造化文書を生成する機能と、をコンピュータに実現させるプログラムを記録する。  A computer-readable recording medium according to another aspect of the present invention uniquely specifies a mapping condition between a tagged structured document and an RDB and the tagged structured document stored in the RDB. A function for arbitrarily setting a document specifying key for the setting information file, and reading the latest setting information of the setting information file and associating the entire structured document with a tag with the information serving as the document specifying key. And storing the information on the specific part of the tagged structured document in the specific part column of the RDB and the specific part column of the RDB based on the document specific key. And the latest setting information in the setting information file are read, and all the information associated with the predetermined information of the document specifying key is read. And generating a tagged structured document from the information of the information and the specific site for column use column, a program for implementing the the computer record.

また、同一の特定部位を二つ以上含むタグ付き構造化文書において、該タグ付き構造化文書中の各特定部位の位置を一意に特定する部位特定キーを上記設定情報ファイルに任意設定する機能と、上記タグ付き構造化文書中に同一の特定部位を二つ以上含む場合、上記同一の特定部位の情報を上記部位特定キーによって指定される情報に対応付けて上記特定部位用カラムに格納する機能と、上記特定部位用カラムに格納される上記同一の特定部位の情報の夫々に上記部位特定キーに基づいてアクセスする機能と、上記部位特定キーの情報から上記タグ付き構造化文書全体中の上記同一の特定部位の情報の位置を特定し、上記全体用カラムの情報及び上記特定部位用カラムの情報から、上記タグ付き構造化文書全体に上記同一の特定部位の情報が反映されたタグ付き構造化文書を生成する機能と、を更にコンピュータに実現させるプログラムを記録してもよい。  Further, in a structured document with a tag including two or more of the same specific part, a function for arbitrarily setting a part specifying key for uniquely specifying the position of each specific part in the tagged structured document in the setting information file; A function of storing the same specific part information in the specific part column in association with the information specified by the part specific key when two or more of the same specific part is included in the structured document with tag A function for accessing each of the information on the same specific part stored in the specific part column based on the part specific key, and the information in the entire tagged structured document from the part specific key information. The position of the information on the same specific part is specified, and the information on the same specific part is included in the entire structured document with tag from the information on the column for the whole and the information on the column for the specific part. And generating the mirrored tagged structured document may be further recording a program for realizing in the computer.

また、上記特定部位用カラムは少なくとも動的部位用カラムを含み、上記タグ付き構造化文書に含まれる部位の中から動的に選択される部位の情報の格納先として上記動的部位用カラムの指定を上記設定情報ファイルに任意設定する機能と、上記全体用カラムに格納されるタグ付き構造化文書全体及び上記特定部位用カラムに格納される部位の情報を対象に、上記タグ付き構造化文書に含まれる部位の情報へのアクセス数を上記部位ごとに履歴管理する機能と、上記設定情報ファイルに指定された上記動的部位用カラムに対し、上記タグ付き構造化文書中の上記部位の位置を指定する指定パスにより、上記タグ付き構造化文書中の上記アクセス数の多い部位を上記動的に選択される部位として昇降順に対応付けする機能と、上記指定パスに基づいて上記タグ付き構造化文書中の上記動的に選択される部位を上記動的部位用カラムに格納する機能と、上記指定パスに基づいて上記タグ付き構造化文書全体中の上記動的に選択される部位の位置を特定し、上記全体用カラムの情報及び上記動的部位用カラムの情報から、上記動的に選択される部位の情報が上記タグ付き構造化文書全体に反映されたタグ付き構造化文書を生成する機能と、を更にコンピュータに実現させるプログラムを記録してもよい。  Further, the specific part column includes at least a dynamic part column, and the dynamic part column is used as a storage destination of information on a part that is dynamically selected from parts included in the tagged structured document. The above-described structured document with the function of arbitrarily setting the designation in the setting information file, the entire structured document with tag stored in the entire column, and the part information stored in the column for specific part The function of history management of the number of accesses to the part information included in each part, and the position of the part in the tagged structured document with respect to the dynamic part column specified in the setting information file A function for associating the part with a large number of accesses in the tagged structured document with the designated path for designating as the part to be dynamically selected in the ascending / descending order. A function for storing the dynamically selected portion in the tagged structured document in the dynamic portion column, and the dynamic selection in the entire tagged structured document based on the designated path. The position of the part to be selected is identified, and the information on the part that is dynamically selected from the information on the column for the whole and the information on the column for the dynamic part is reflected in the entire structured document with the tag. You may record the program which makes a computer implement | achieve the function which produces | generates a structured document further.

本発明のその他の態様のタグ付き構造化文書格納システムの一つは、タグ付き構造化文書とRDBとの間のマッピング条件及び上記RDBに格納される上記タグ付き構造化文書を一意に特定するための文書特定キーとを設定情報ファイルに任意設定する機能と、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーとなる情報に対応付けて上記タグ付き構造化文書の全体を上記RDBの全体用カラムに格納し且つ上記タグ付き構造化文書の特定部位の情報を上記RDBの特定部位用カラムに格納する機能と、上記文書特定キーに基づいて、上記RDBの特定部位用カラムに格納される情報へアクセスする機能と、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーの所定情報に対応付けされた上記全体用カラムの情報及び上記特定部位用カラムの情報からタグ付き構造化文書を生成する機能と、を有する。  One of the tagged structured document storage systems according to another aspect of the present invention uniquely specifies a mapping condition between a tagged structured document and an RDB and the tagged structured document stored in the RDB. A function for arbitrarily setting a document specifying key for the setting information file, and reading the latest setting information of the setting information file and associating the entire structured document with a tag with the information serving as the document specifying key. And storing the information on the specific part of the tagged structured document in the specific part column of the RDB and the specific part column of the RDB based on the document specific key. And the latest setting information in the setting information file are read and the entire color corresponding to the predetermined information of the document specifying key is read. Information and a, a function of generating a tagged structured document from the information of the specific site for the column.

また、同一の特定部位を二つ以上含むタグ付き構造化文書において、該タグ付き構造化文書中の各特定部位の位置を一意に特定する部位特定キーを上記設定情報ファイルに任意設定する機能と、上記タグ付き構造化文書中に同一の特定部位を二つ以上含む場合、上記同一の特定部位の情報を上記部位特定キーによって指定される情報に対応付けて上記特定部位用カラムに格納する機能と、上記特定部位用カラムに格納される上記同一の特定部位の情報の夫々に上記部位特定キーに基づいてアクセスする機能と、上記部位特定キーの情報から上記タグ付き構造化文書全体中の上記同一の特定部位の情報の位置を特定し、上記全体用カラムの情報及び上記特定部位用カラムの情報から、上記タグ付き構造化文書全体に上記同一の特定部位の情報が反映されたタグ付き構造化文書を生成する機能と、を更に有するようにしてもよい。  Further, in a structured document with a tag including two or more of the same specific part, a function for arbitrarily setting a part specifying key for uniquely specifying the position of each specific part in the tagged structured document in the setting information file; A function of storing the same specific part information in the specific part column in association with the information specified by the part specific key when two or more of the same specific part is included in the structured document with tag A function for accessing each of the information on the same specific part stored in the specific part column based on the part specific key, and the information in the entire tagged structured document from the part specific key information. The position of the information on the same specific part is specified, and the information on the same specific part is included in the entire structured document with tag from the information on the column for the whole and the information on the column for the specific part. And generating the mirrored tagged structured document, it may further have a.

また、上記特定部位用カラムは少なくとも動的部位用カラムを含み、上記タグ付き構造化文書に含まれる部位の中から動的に選択される部位の情報の格納先として上記動的部位用カラムの指定を上記設定情報ファイルに任意設定する機能と、上記全体用カラムに格納されるタグ付き構造化文書全体及び上記特定部位用カラムに格納される部位の情報を対象に、上記タグ付き構造化文書に含まれる部位の情報へのアクセス数を上記部位ごとに履歴管理する機能と、上記設定情報ファイルに指定された上記動的部位用カラムに対し、上記タグ付き構造化文書中の上記部位の位置を指定する指定パスにより、上記タグ付き構造化文書中の上記アクセス数の多い部位を上記動的に選択される部位として昇降順に対応付けする機能と、上記指定パスに基づいて上記タグ付き構造化文書中の上記動的に選択される部位を上記動的部位用カラムに格納する機能と、上記指定パスに基づいて上記タグ付き構造化文書全体中の上記動的に選択される部位の位置を特定し、上記全体用カラムの情報及び上記動的部位用カラムの情報から、上記動的に選択される部位の情報が上記タグ付き構造化文書全体に反映されたタグ付き構造化文書を生成する機能と、を更に有するようにしてもよい。  Further, the specific part column includes at least a dynamic part column, and the dynamic part column is used as a storage destination of information on a part that is dynamically selected from parts included in the tagged structured document. The above-described structured document with the function of arbitrarily setting the designation in the setting information file, the entire structured document with tag stored in the entire column, and the part information stored in the column for specific part The function of history management of the number of accesses to the part information included in each part, and the position of the part in the tagged structured document with respect to the dynamic part column specified in the setting information file A function for associating the part with a large number of accesses in the tagged structured document with the designated path for designating as the part to be dynamically selected in the ascending / descending order. A function for storing the dynamically selected portion in the tagged structured document in the dynamic portion column, and the dynamic selection in the entire tagged structured document based on the designated path. The position of the part to be selected is identified, and the information on the part that is dynamically selected from the information on the column for the whole and the information on the column for the dynamic part is reflected in the entire structured document with the tag. And a function of generating a structured document.

本発明では、タグ付き構造化文書とRDBとの間のマッピング条件及び上記RDBに格納される上記タグ付き構造化文書を一意に特定するための文書特定キーとを設定情報ファイルに任意設定できるようにする。このため、タグ付き構造化文書をRDBに格納する際の、例えばタグ付き構造化文書中の何れの特定部位の情報をRDBの特定部位用カラムに格納するかなどの対応付け及びその情報を有するタグ付き構造化文書の文書キーを、上記設定情報ファイルにおいて容易に設定変更できるようになる。
また本発明では、同一の特定部位を二つ以上含むタグ付き構造化文書において、該タグ付き構造化文書中の各特定部位の位置を一意に特定できるようにする。このため、タグ付き構造化文書中に同一の特定部位を二つ以上含む場合であっても、各特定部位の情報が一意に特定された状態で特定部位用カラムに格納される。
In the present invention, the mapping condition between the tagged structured document and the RDB and the document specifying key for uniquely specifying the tagged structured document stored in the RDB can be arbitrarily set in the setting information file. To. For this reason, when storing a structured document with a tag in the RDB, for example, information on which specific part of the tagged structured document is stored in a column for the specific part of the RDB and the information The setting of the document key of the tagged structured document can be easily changed in the setting information file.
Further, according to the present invention, in a tagged structured document including two or more identical specific parts, the position of each specific part in the tagged structured document can be uniquely specified. For this reason, even when two or more identical specific parts are included in the structured document with a tag, information on each specific part is stored in the specific part column in a state of being uniquely specified.

また本発明では、タグ付き構造化文書中の部位のアクセス数を履歴管理して、そのアクセス数の多い部位の情報から順に動的部位用カラムに格納するようにする。このため、例えば格納対象の部位の数を制限することにより、使用頻度の少ない部位の情報の格納を減らすことができる。  Also, in the present invention, the number of accesses to a part in a structured document with a tag is managed as a history, and information is stored in the dynamic part column in order from the part having the largest number of accesses. For this reason, for example, by limiting the number of parts to be stored, it is possible to reduce the storage of information on parts that are less frequently used.

以上のように本発明では、設定情報ファイルを設けているため、タグ付き構造化文書とRDBとの間のマッピング条件や検索キーを自由に設定変更できる。このため既存のRDBシステムと連携する場合においても、設定情報ファイルの設定内容を変更し、検索キーをRDBシステムに与える程度のことで容易に既存のRDBシステムにおいてタグ付き構造化文書の情報が扱えるようになる。  As described above, in the present invention, since the setting information file is provided, the mapping condition and search key between the tagged structured document and the RDB can be freely set and changed. For this reason, even when linking with an existing RDB system, it is possible to easily handle structured document information with a tag in the existing RDB system by changing the setting contents of the setting information file and giving a search key to the RDB system. It becomes like this.

また、本発明では、タグ付き構造化文書中に繰り返し現れる同一構造の部位を一意に特定できるようにRDBに格納させるため、当該部位の情報を検索したり、更新したりすることが可能になる。また、当該部位の情報をタグ付き構造化文書中の所定位置に戻すことも可能になる。  Further, in the present invention, since the part of the same structure that repeatedly appears in the tagged structured document is stored in the RDB so that information on the part can be retrieved or updated. . It is also possible to return the information of the part to a predetermined position in the tagged structured document.

また、本発明ではタグ付き構造化文書に含まれる部位の情報の利用頻度が高いもののみを所定期間毎にRDBで管理するため、利用頻度が少ない部位の情報をRDBで管理する必要がなくなり、RDBの記憶領域の有効利用ができる。  Further, in the present invention, only the information that is frequently used in the part information included in the tagged structured document is managed in the RDB for each predetermined period, so that it is not necessary to manage the information in the part that is less frequently used in the RDB. The RDB storage area can be effectively used.

以下、本発明を実施するための最良の形態を、図面を参照しながら詳細に説明する。
図1は、本発明の実施形態におけるタグ付き構造化文書格納システムの原理図である。
本タグ付き構造化文書格納システム1は、例えばXML(eXtensible Markup Language)やSGML(Standard Generalized Markup Language)などのように文書の構成要素間の階層構造や参照関係をタグを用いて表した文書(以下、総称してタグ付き構造化文書と呼ぶこととする)2を文書全体とその文書中の特定部位の情報(文書全体及びその文書中の特定部位の情報を、以下では総称してタグ付き構造化文書情報と呼ぶこととする)とをそれぞれ対応付けてDB3に格納する。このDB3に対するタグ付き構造化文書情報の上記格納や該格納情報に対する諸操作(検索・更新・削除)は、タグ付き構造化文書格納手段4を介して行なわれる。
Hereinafter, the best mode for carrying out the present invention will be described in detail with reference to the drawings.
FIG. 1 is a principle diagram of a tagged structured document storage system according to an embodiment of the present invention.
This structureddocument storage system 1 with a tag is a document (such as XML (eXtensible Markup Language) or SGML (Standard Generalized Markup Language)) that uses a tag to represent a hierarchical structure or a reference relationship between document components. Hereinafter, the term “structured document with tag” will be collectively referred to as “2”, and information on the entire document and specific parts in the document (the whole document and information on specific parts in the document will be collectively referred to as tagged below). Are stored in theDB 3 in association with each other. The storage of tagged structured document information in theDB 3 and various operations (retrieval / update / deletion) on the stored information are performed via the tagged structured document storage means 4.

タグ付き構造化文書格納手段4は、タグ付き構造化文書2を外部から受け取ると、タグ付き構造化文書格納手段4の外部に備えられた設定手段5の設定に応じて、上記入力されたタグ付き構造化文書2をタグ付き構造化文書全体とその文書中の特定部位の情報とに分け、互いの情報に対応関係を持たせてDB3へ格納する。  When the tagged structureddocument storage unit 4 receives the taggedstructured document 2 from the outside, the tagged tag input according to the setting of thesetting unit 5 provided outside the tagged structureddocument storage unit 4 The taggedstructured document 2 is divided into the entire tagged structured document and information on a specific part in the document, and the corresponding information is stored in theDB 3 with a corresponding relationship.

また、DB3に登録されているタグ付き構造化文書情報の更新指示を受けると、DB3に格納されているタグ付き構造化文書情報を更新する。この更新情報は、上記設定手段5の設定に応じて、文書全体に反映することもできる。  Also, when receiving an instruction to update tagged structured document information registered in DB3, the tagged structured document information stored in DB3 is updated. This update information can be reflected in the entire document in accordance with the setting of the setting means 5.

上記設定手段5は、DB3に格納する特定部位の情報の指定、タグ付き構造化文書全体や特定部位の情報をDB3に格納する際の格納形式や振り分け方の指定、更にはDB3に格納されたタグ付き構造化文書情報を一意に特定するためのキーの指定など、タグ付き構造化文書とDBとの間のマッピングの条件を任意に設定でき、しかもこの設定の変更を上記タグ付き構造化文書格納手段4に依存することなく行なうことができる。  The setting means 5 designates specific part information stored in theDB 3, specifies the storage format and sorting method for storing the entire tagged structured document and specific part information in theDB 3, and further stores in theDB 3. Mapping conditions between the tagged structured document and the DB can be arbitrarily set, such as specifying a key for uniquely identifying the structured document information with the tag. This can be done without depending on the storage means 4.

このような構成の下ではDB3に対する格納方式を設定手段5によって様々に設定できるため、タグ付き構造化文書がどのような構造を持っていようとも、またDB3に格納させるべきタグ付き構造化文書中の特定部位の情報が頻繁に変わるような場合でも上記設定手段5の設定を変えることによって、柔軟に、そのタグ付き構造化文書及びタグ付き構造化文書中の任意の特定部位の情報をDB3に格納させることができる。そして、DB3に格納されたタグ付き構造化文書情報は、文書全体と文書中の特定部位の情報とが互いに関係付けされて別々に管理されるため、タグ付き構造化文書の全体だけでなく文書内の特定部位の情報も外部から利用可能になる。そして、上記設定手段5に設定されたタグ付き構造化文書情報を一意に特定できるキー(例えば文書キー)を獲得するだけで、タグ付き構造化文書を取り扱うように設計されていないレガシーシステム6からでもタグ付き構造化文書に含まれる特定部位の情報の取得・更新が可能になる。  Under such a configuration, the storage method for theDB 3 can be variously set by the setting means 5, so that no matter what structure the tagged structured document has, in the tagged structured document to be stored in theDB 3 Even if the information on the specific part of the document changes frequently, by changing the setting of the setting means 5, the structured document with tag and information on the specific part of the structured document with tag are stored in DB3. Can be stored. The structured document information with tags stored in theDB 3 is not only the entire structured document with tags but also the document because the entire document and information on a specific part in the document are related to each other and managed separately. The information on the specific part inside can also be used from outside. From alegacy system 6 that is not designed to handle a tagged structured document only by obtaining a key (for example, a document key) that can uniquely specify the tagged structured document information set in the setting means 5. However, it is possible to acquire and update information on a specific part included in the tagged structured document.

また、特定部位の情報が利用できるようになる上、タグ付き構造化文書の特定部位の情報を更新する際は、DB3に格納されているタグ付き構造化文書の全体ではなくその特定部位の情報のみを更新するだけよいため、タグ付き構造化文書中の特定部位の情報の検索・更新等を外部から高速に行なうことができるようになる。  In addition, the information on the specific part becomes available, and when the information on the specific part of the tagged structured document is updated, the information on the specific part instead of the whole structured document with the tag stored in DB3. Therefore, it is possible to search / update information on a specific part in the tagged structured document at high speed from the outside.

次に、本発明の実施形態におけるタグ付き構造化文書格納システムの実施例を示す。なお以下においては、タグ付き構造化文書の具体例としてXMLで作成されたXML文書を例に挙げて説明する。  Next, an example of a structured document storage system with a tag according to the embodiment of the present invention will be described. In the following description, an XML document created by XML will be described as an example of a tagged structured document.

但し、以下に説明するXML装置を機能させるために必要な基本技術は、様々な文献(例えば特開2002−117055号公報など)に詳しく開示されているため、基本技術に対する詳細な説明は省略或いは簡略化することとし、特に本発明の特徴部分について詳しく説明する。  However, since the basic technology necessary for functioning the XML apparatus described below is disclosed in detail in various documents (for example, Japanese Patent Application Laid-Open No. 2002-117055), detailed description on the basic technology is omitted or omitted. In particular, the features of the present invention will be described in detail.

第一実施例では、RDB(Relational DataBase)に格納するXML文書中の特定部位を設定手段で直接指定する場合の例を示す。
図2は、第一実施例におけるXML文書格納システムの構成図である。
In the first embodiment, an example in which a specific part in an XML document stored in an RDB (Relational DataBase) is directly designated by a setting unit is shown.
FIG. 2 is a configuration diagram of the XML document storage system in the first embodiment.

本例のXML文書格納システム11は、XML装置12と、RDBMSの管理下にあるRDB13と、XML装置12及びRDB13間でのXML文書の格納・更新・検索・削除等の条件設定をする設定情報ファイル14とを備える。これらは一つのコンピュータに実装させたり、或いは通信ネットワークを介して複数のコンピュータに分散して実装させることができる。  The XMLdocument storage system 11 of this example has setting information for setting conditions such as storage, update, search, and deletion of an XML document between theXML device 12, theRDB 13 under the management of the RDBMS, and theXML device 12 and theRDB 13.File 14. These can be mounted on a single computer, or can be distributed and mounted on a plurality of computers via a communication network.

上記XML装置11は、例えば、同図のXML文書15の内容を分割したり合成したりする分割/合成部や、設定情報ファイル14の設定を分析する設定情報分析部や、SQL文を生成してRDBMSにそのSQL文を発行するSQL文発行部や、更に、設定情報ファイル14の設定に応じて必要(具体的な設定は後述する)な、システムの低負荷時を検出する装置負荷監視部などを備え、これらは対応する複数のプログラムやファイルがコンピュータで実行されることによって機能する。そして、上記各種のプログラム(例えばコンパイル済みのプログラム)がコンピュータで実行され、上記設定情報ファイル14の設定が読まれることにより、上記各部が作用し、次の一から三の機能が実現する。
一.XML文書15を対象に、該XML文書の「XML文書全体」、及び該XML文書中に含まれる「特定要素の内容」や「その要素の属性の値」(以下、特定要素やその要素の属性を総称して「特定部分(または特定部位や特定ノード)と呼び、特定部分の内容や値を総称して「特定部分情報」と呼び、「XML文書全体」及び「特定部分情報」を総称して「XML文書情報」と呼ぶこととする)を互いに対応付けてRDB13の別々のカラムへ格納させる機能。
二.RDB13に格納されている「特定部分情報」を更新する機能。
三.「特定部分情報」の更新後のデータを、選択指定に基づいてRDB13に格納されている「XML文書全体」に反映させる機能。
TheXML apparatus 11 generates, for example, a division / synthesis unit that divides and synthesizes the content of theXML document 15 in FIG. 1, a setting information analysis unit that analyzes the setting of the settinginformation file 14, and an SQL statement. A SQL statement issuing unit that issues the SQL statement to the RDBMS, and a device load monitoring unit that detects when the system is under low load (specific setting will be described later) according to the setting of the settinginformation file 14 These function by executing a plurality of corresponding programs and files on the computer. The various programs (for example, compiled programs) are executed by a computer, and the settings of the settinginformation file 14 are read, whereby the above-described units operate and the following one to three functions are realized.
one. For theXML document 15, “the entire XML document” of the XML document, “content of the specific element” and “attribute value of the element” included in the XML document (hereinafter, the specific element and the attribute of the element) Are collectively referred to as “specific part (or specific part or specific node), the contents and values of the specific part are collectively referred to as“ specific part information ”, and“ the entire XML document ”and“ specific part information ”are collectively referred to. (Hereinafter referred to as “XML document information”) and stored in separate columns of theRDB 13.
two. A function of updating “specific partial information” stored in theRDB 13.
three. A function of reflecting the updated data of “specific partial information” in “entire XML document” stored in theRDB 13 based on the selection designation.

この第三の機能については後に詳しく説明するが、RDB13からXML文書を取り出す際、「XML文書全体」に更新後の「特定部分情報」を反映して出力したり、反映せずに元のままのXML文書を出力したり、或いは、例えばシステムの低負荷時に、上記更新後の「特定部分情報」を「XML文書全体」中の対応個所に反映し、反映後の「XML文書全体」を元の「XML文書全体」の位置に格納させたりする。  The third function will be described in detail later. When an XML document is extracted from theRDB 13, the updated "specific partial information" is reflected in the "whole XML document", or the original is not reflected. For example, when the system is under a low load, the updated “specific part information” is reflected in the corresponding part of “the entire XML document”, and the “whole XML document” after the reflection is Or the entire “XML document”.

上記設定情報ファイル14は、XMLで作成されており、XML文書15とRDB13のテーブル(またはRDBテーブルともいう)との間のマッピングを任意に設定できる(言うまでもないが、上記設定は一度設定したものに対して変更を実施する設定変更の意味も含む)。例えば、XML文書中の「特定部分」を指定し、「XML文書全体」及びその「特定部分情報」をRDB13の指定したテーブルやカラムへ格納するように指定できる。  The settinginformation file 14 is created in XML, and mapping between theXML document 15 and the table of the RDB 13 (also referred to as RDB table) can be arbitrarily set (it goes without saying that the above setting is set once) Including the meaning of setting changes that implement changes to For example, a “specific part” in an XML document can be specified, and “the entire XML document” and its “specific part information” can be specified to be stored in a specified table or column in theRDB 13.

また、例えば、RDB13に「XML文書全体」及び「特定部分情報」に振り分けて格納されたXML文書の、「XML文書全体」に対する「特定部分情報」の反映方式を指定できる。上述して説明したように、RDB13からXML文書を取り出す際、「XML文書全体」の「特定部分」に更新後の「特定部分情報」を反映して出力したり、反映せずに「XML文書全体(元のままのXML文書)」を出力したり、或いは、例えばシステムの低負荷時に、上記更新後の「特定部分情報」を「XML文書全体」の「特定部分」に反映し、反映後の「XML文書全体(更新後のXML文書)」を元の「XML文書全体(元のままのXML文書)」に換えて格納させたりするための指定が選択的に行なえる。  In addition, for example, a method of reflecting “specific part information” with respect to “whole XML document” of an XML document that is stored in theRDB 13 as “whole XML document” and “specific part information” can be specified. As described above, when an XML document is extracted from theRDB 13, the updated “specific part information” is reflected in the “specific part” of the “whole XML document”, or the “XML document is not reflected. "The whole (original XML document)" is output, or the updated "specific part information" is reflected in the "specific part" of "the whole XML document", for example, when the system is under low load. The “XML document (updated XML document)” of “1” can be selectively replaced with the original “XML document (original XML document)”.

また更に、格納されている「XML文書情報」を一意に特定するためのキー(文書キー)を指定できる。
上記RDB13は、上記マッピングの設定に対応するように各種名称のテーブル及びカラムが作成されている。なお本例では、XML文書全体の格納には「BLOB型カラム」を使用する。また、「特定部分情報」を格納するカラムを「特定ノード用カラム」と総称する。
Furthermore, it is possible to designate a key (document key) for uniquely specifying the stored “XML document information”.
In theRDB 13, tables and columns of various names are created so as to correspond to the setting of the mapping. In this example, a “BLOB column” is used to store the entire XML document. Further, the column storing “specific partial information” is collectively referred to as “specific node column”.

上記構成の下では、設定情報ファイル14で設定された内容がXML装置12の設定情報分析部で分析され、その分析結果に基づいて、分割部で分割したXML文書15をRDBに格納したり、RDB13から取り出したXML文書を合成部で合成したりできる。その際、XML文書15のRDB13への格納やRDB13からの取り出しは、SQL文発行部で発行するSQL文をRDBMSと取り交わすことにより行なう。  Under the above configuration, the content set in the settinginformation file 14 is analyzed by the setting information analysis unit of theXML device 12, and theXML document 15 divided by the dividing unit is stored in the RDB based on the analysis result. The XML document extracted from theRDB 13 can be synthesized by the synthesis unit. At that time, storage of theXML document 15 in theRDB 13 and retrieval from theRDB 13 are performed by exchanging the SQL statement issued by the SQL statement issuing unit with the RDBMS.

このため、XML文書を取り扱えない既存のシステム(同図のレガシーシステム6)からもSQLを用いてRDB13にアクセスすることができる。
以下に、同一の特定要素を繰り返し含まないXML文書及び同一の特定要素を繰り返し含むXML文書と、それぞれのXML文書に対する設定情報ファイルの記述例を示し、上記XML文書格納システム11の処理を詳しく説明する。
For this reason, it is possible to access theRDB 13 using SQL from an existing system (legacy system 6 in the figure) that cannot handle XML documents.
Below, an XML document that does not repeatedly include the same specific element, an XML document that repeatedly includes the same specific element, and a description example of a setting information file for each XML document are shown, and the processing of the XMLdocument storage system 11 is described in detail. To do.

なお、理解しやすいように以下においては、XML形式で示したXML文書や設定情報ファイルの記述例の説明を、文書の左端に本文とは関係のない行番号(例えば「1:」や「2:」など)を付し、特に関係する個所のみとりあげて説明する。  For the sake of easy understanding, in the following, description examples of XML documents and setting information files described in XML format will be described with line numbers (for example, “1:” and “2” that are not related to the text at the left end of the document. : ”), Etc., and explain only the relevant parts.

先ず、同一の特定要素を繰り返し含まないXML文書と設定情報ファイルの組み合わせから説明する。
図3は、同一の特定要素を繰り返し含まないXML文書の記述例である。
First, a combination of an XML document that does not repeatedly include the same specific element and a setting information file will be described.
FIG. 3 is a description example of an XML document that does not repeatedly include the same specific element.

同図に示されるXML文書30は、要素“data”の子要素“person”の属性“id”に値“AB12345”を含み(3行目)、要素“data”の子要素“person”のそのまた子要素“name”に内容“Mr.Foo”を含み(4行目)、更に、要素“person”の子要素“home”のそのまた子要素“phone”に内容“0000-712-3543”を含んでいる(7行目)。  TheXML document 30 shown in the figure includes the value “AB12345” in the attribute “id” of the child element “person” of the element “data” (line 3), and that of the child element “person” of the element “data”. The child element “name” contains the content “Mr.Foo” (line 4), and the child element “phone” of the child element “home” of the element “person” contains the content “0000-712-3543”. (7th line).

続いて、同一の特定要素を繰り返し含まない上記XML文書に対する設定情報ファイル14の記述例を2種類紹介する。
図4は、同一の特定要素を繰り返し含まないXML文書に対する設定情報ファイル14の一つ目の例である。
Subsequently, two types of description examples of the settinginformation file 14 for the XML document not repeatedly including the same specific element will be introduced.
FIG. 4 is a first example of the settinginformation file 14 for an XML document that does not repeatedly include the same specific element.

本例の設定情報ファイル40では、XML文書と一つのテーブル(RDBテーブル)との間のマッピングを設定する。本例では、設定情報ファイル40において以下に示す一から五の指定を行なう。
一.「XML文書全体」と、テーブル「ADDRBOOK」のカラム「COPY」の値とが対応するように指定(3行目)。
二.「XML文書全体」を圧縮して格納するように指定し、XML文書の取り出し時に、取り出した「XML文書全体」に「特定ノード用カラム」の「特定部分情報」を反映させるように指定(4行目)。
三.XML文書の「特定部分」として、XML文書の木構造の頂点に位置する要素“data”の子要素“person”のそのまた子要素 “name”を指定し、更に、この「特定部分情報」とテーブル「ADDRBOOK」のカラム「NAME」の値とが対応するように指定(8行目)。
In the settinginformation file 40 of this example, mapping between the XML document and one table (RDB table) is set. In this example, the settinginformation file 40 designates one to five shown below.
one. Designation is made so that “the entire XML document” corresponds to the value of the column “COPY” in the table “ADDRBOOK” (third line).
two. Specify that the “whole XML document” is compressed and stored, and specify that the “specific part information” of the “specific node column” is reflected in the extracted “whole XML document” when the XML document is extracted (4 Line).
three. As the “specific part” of the XML document, the child element “name” of the child element “person” of the element “data” located at the apex of the tree structure of the XML document is specified. Designation is made so that the value of column “NAME” of table “ADDRBOOK” corresponds (line 8).

同様に、XML文書の「特定部分」として、要素“person”の子要素 “home”のそのまた子要素“phone”を指定し、更に、この「特定部分情報」とテーブル「ADDRBOOK」のカラム「TEL_HOME」の値とが対応するように指定(10行目)。  Similarly, the child element “phone” of the child element “home” of the element “person” is designated as the “specific part” of the XML document, and this “specific part information” and the column “ADDRBOOK” column “ The value of “TEL_HOME” is designated to correspond (line 10).

同様に、XML文書の「特定部分」として、要素“person”の属性“id”を指定し、更に、この「特定部分情報」とテーブル「ADDRBOOK」のカラム「ID」の値とが対応するように指定(12行目)。
四.更新対象のテーブルとしてテーブル「ADDRBOOK」を指定(16行目)。
五.XML文書ごとに一意になる主キーとして、要素“person”の属性“id”の値を指定し、これを更新対象テーブルのプライマリキーとして指定(17行目から19行目)。
Similarly, the attribute “id” of the element “person” is designated as the “specific part” of the XML document, and the “specific part information” and the value of the column “ID” of the table “ADDRBOOK” correspond to each other. (Line 12).
Four. The table “ADDRBOOK” is designated as the table to be updated (line 16).
Five. The value of the attribute “id” of the element “person” is designated as the primary key that is unique for each XML document, and this is designated as the primary key of the update target table (lines 17 to 19).

図5は、同一の特定要素を繰り返し含まないXML文書に対する設定情報ファイル14の二つ目の例である。
本例の設定情報ファイル50では、一つのXML文書と、互いに関連付けされた複数のRDBテーブルとの間のマッピングを設定する。本例では以下に示す一から六の指定を行なう。
一.「XML文書全体」とテーブル「ORIGINALDATA」のカラム「COPY」の値とが対応するように指定(3行目)。
二.「XML文書全体」を圧縮して格納するように指定し、XML文書の取り出し時に、取り出した「XML文書全体」に「特定ノード用カラム」の「特定部分情報」を反映させないように指定(4行目)。
三.XML文書の「特定部分」として、XML文書の木構造の頂点に位置する要素“data”の子要素“person”のそのまた子要素 “name”を指定し、更に、この「特定部分情報」とテーブル「TELLIST」のカラム「NAME」の値とが対応するように指定(8行目)。
FIG. 5 is a second example of the settinginformation file 14 for an XML document that does not repeatedly include the same specific element.
In the settinginformation file 50 of this example, mapping between one XML document and a plurality of RDB tables associated with each other is set. In this example, the followingdesignations 1 to 6 are performed.
one. Designation is made so that “the entire XML document” corresponds to the value of the column “COPY” of the table “ORIGINALDATA” (third line).
two. Designates to store the entire “XML document” in a compressed manner, and designates that the “specific part information” of the “column for specific node” is not reflected in the extracted “entire XML document” when the XML document is extracted (4 Line).
three. As the “specific part” of the XML document, the child element “name” of the child element “person” of the element “data” located at the apex of the tree structure of the XML document is specified. Designation is made so that the value of the column “NAME” of the table “TELLIST” corresponds (line 8).

同様に、XML文書の「特定部分」として、要素“person”の子要素 “home”のそのまた子要素“phone”を指定し、更に、この「特定部分情報」とテーブル「TELLIST」のカラム「TEL_HOME」の値とが対応するように指定(10行目)。  Similarly, the child element “phone” of the child element “home” of the element “person” is designated as the “specific part” of the XML document, and this “specific part information” and the column “TELLIST” column “ The value of “TEL_HOME” is designated to correspond (line 10).

同様に、XML文書の「特定部分」として、要素“person”の属性“id”を指定し、更に、この「特定部分情報」とテーブル「ORIGINALDATA」のカラム「ID」の値とが対応するように指定(12行目)。
四.上記属性“id”の値をテーブル「TELLIST」のカラム「ID」に対する外部キーとして指定(13行目)。
五.更新対象のテーブルとしてテーブル「ORIGINALDATA」及びテーブル「TELLIST」を指定(18、19行目)。
六.XML文書ごとに一意になるキーとして、要素“person”の属性“id”の値を指定し、これを更新対象テーブルのプライマリキーとして指定(20行目から22行目)。
Similarly, the attribute “id” of the element “person” is designated as the “specific part” of the XML document, and this “specific part information” corresponds to the value of the column “ID” of the table “ORIGINALDATA”. (Line 12).
Four. The value of the attribute “id” is designated as a foreign key for the column “ID” of the table “TELLIST” (13th line).
Five. The table “ORIGINALDATA” and the table “TELLIST” are designated as the tables to be updated (18th and 19th lines).
Six. The value of the attribute “id” of the element “person” is designated as a key that is unique for each XML document, and this is designated as the primary key of the update target table (lines 20 to 22).

以下、同一の「特定部分」を含まないXML文書を対象に実行されるXML文書格納システム11の各種処理を、図4または図5の設定を用いて説明する。
なお以下の説明では特に説明しないが、RDB13には、図4または図5の設定で示される各種テーブル及び各種カラムが予め作成されている。すなわち、図4の設定に対してはテーブル「ADDRBOOK」、該テーブル「ADDRBOOK」に対してカラム「COPY」、カラム「NAME」、カラム「TEL_HOME」、及びカラム「ID」が作成され、図5の設定に対してはテーブル「ORIGINALDATA」、該テーブル「ORIGINALDATA」に対してカラム「ID」及びカラム「COPY」、更に加えて、テーブル「TELLIST」、該テーブル「TELLIST」に対してカラム「ID」、カラム「NAME」、及びカラム「TELHOME」が作成されている。
Hereinafter, various processes of the XMLdocument storage system 11 executed for XML documents that do not include the same “specific part” will be described using the settings in FIG. 4 or FIG.
Although not specifically described in the following description, various tables and various columns shown in FIG. 4 or FIG. 5 are created in advance in theRDB 13. That is, for the setting of FIG. 4, a table “ADDRBOOK”, a column “COPY”, a column “NAME”, a column “TEL_HOME”, and a column “ID” are created for the table “ADDRBOOK”. For the setting, the table “ORIGINALDATA”, the column “ID” and the column “COPY” for the table “ORIGINALDATA”, the table “TELLIST”, the column “ID” for the table “TELLIST”, Column "NAME" and column "TEL" HOME "has been created.

また、以降の説明において特に説明しないが、XML文書中の「特定部分」及びその「特定部分情報」は、XML装置12の分割部から取り出しができる。
図6は、図3のXML文書をXML装置12からRDB13に格納する場合の処理フローである。
Although not specifically described in the following description, the “specific part” and the “specific part information” in the XML document can be extracted from the dividing unit of theXML apparatus 12.
FIG. 6 is a processing flow when the XML document of FIG. 3 is stored from theXML apparatus 12 to theRDB 13.

先ず、設定情報ファイル(図4または図5)から「XML文書全体を格納する指示」を取得する(S100)。 上記「XML文書全体を格納する指示」とは、図4または図5の説明の「一」及び「二」で述べた、「XML文書全体」を対応付けるテーブル名とカラム名、及び格納時に圧縮するか否かの指定である。  First, the “instruction to store the entire XML document” is acquired from the setting information file (FIG. 4 or FIG. 5) (S100). The above “instruction to store the entire XML document” refers to the table name and column name associated with “the entire XML document” described in “1” and “2” in the description of FIG. 4 or FIG. Whether or not.

そしてこの情報を基に、XML文書全体をRDB13の「BLOBカラム」に格納するSQL文(INSERT文)を作成する(S102)。なお上記「BLOBカラム」は、図4の設定ではテーブル「ADDRBOOK」のカラム「COPY」に相当し、図5の設定ではテーブル「ORIGINALDATA」のカラム「COPY」に相当する。  Based on this information, an SQL statement (INSERT statement) is created that stores the entire XML document in the “BLOB column” of the RDB 13 (S102). The “BLOB column” corresponds to the column “COPY” of the table “ADDRBOOK” in the setting of FIG. 4, and corresponds to the column “COPY” of the table “ORIGINALDATA” in the setting of FIG.

次に、上記設定情報ファイルから「XML文書中の特定部分情報を格納するための指示」を一つ取得する(S104)。この指示は、図4または図5の説明の「三」で述べた、「特定部分」の指定及び、その「特定部分情報」とテーブル名とカラム名の値の対応付けの指定であり、それが一つ取得される。  Next, one “instruction for storing specific partial information in the XML document” is acquired from the setting information file (S104). This instruction is the designation of the “specific part” and the designation of the correspondence between the “specific part information”, the table name, and the column name value, as described in “3” in the explanation of FIG. 4 or FIG. Is acquired.

そしてこの取得した情報を基に、XML文書(図3)中の「特定部分情報」をRDB13の対応する「特定ノード用カラム」に格納する命令を作成する(S106)。なお、図4の設定では、「特定ノード用カラム」はステップS102でSQL文を作成したテーブル「ADDRBOOK」と同じテーブルに設けられているため、ステップS106において作成されるSQL文はステップS102で作成されたSQL文に追加される。また、図5の設定では、「特定ノード用カラム」はステップS102でSQL文を作成したテーブル「ADDRBOOK」と異なるテーブル「TELLIST」に設けられているため、ステップS106において作成されるSQL文は新規作成される。  Based on the acquired information, an instruction to store “specific partial information” in the XML document (FIG. 3) in the corresponding “specific node column” of theRDB 13 is created (S106). In the setting of FIG. 4, the “specific node column” is provided in the same table as the table “ADDRBOOK” in which the SQL statement is created in step S102. Therefore, the SQL statement created in step S106 is created in step S102. Added to the SQL statement. Further, in the setting of FIG. 5, the “specific node column” is provided in the table “TELLIST” different from the table “ADDRBOOK” in which the SQL statement was created in step S102, so the SQL statement created in step S106 is new. Created.

ステップS106においてSQL文の追加或いは新規作成が終了すると、上記XML文書中の「特定部分情報」を格納する指定が他にも設定情報ファイル中に残っているか否か判定され(S108)、格納する指定が他にも残っていると判定されればステップS104に処理を戻し、ステップS104から上記と同様な手順で処理を行なう。すなわち、例えば、図4であれば、ステップS104において「XML文書の木構造の頂点に位置する要素“data”の子要素“person”のそのまた子要素 “name”を特定部分とし、更に、この要素“name”の内容をテーブル「ADDRBOOK」のカラム「NAME」の値に対応づけるという指定が、最初に取得され、ステップS106においては、上記取得内容に基づいてSQL文が作成される。そして、図4ではその他にも、「XML文書の要素“person”の子要素 “home”のそのまた子要素“phone”を特定情報とし、更に、この要素“phone”の内容をテーブル「ADDRBOOK」のカラム「TEL_HOME」の値に対応づけるという指定」、「XML文書の要素“person”の属性“id”を特定情報とし、更に、この属性“id”の値をテーブル「ADDRBOOK」のカラム「ID」の値に対応づけるという指定」が残っているため、この順でステップS104からステップ108の処理が繰り返し行なわれる。  When the addition or new creation of the SQL sentence is completed in step S106, it is determined whether or not other designations for storing the “specific part information” in the XML document remain in the setting information file (S108). If it is determined that other designations remain, the process returns to step S104, and the process is performed from step S104 in the same procedure as described above. That is, for example, in FIG. 4, in step S104, the child element “name” of the child element “person” of the element “data” located at the vertex of the tree structure of the XML document is set as a specific part. The designation of associating the content of the element “name” with the value of the column “NAME” of the table “ADDRBOOK” is first acquired, and in step S106, an SQL statement is created based on the acquired content. In addition to this, in FIG. 4, the child element “phone” of the child element “home” of the element “person” of the XML document is specified information, and the contents of this element “phone” are further stored in the table “ADDRBOOK”. “Specification to be associated with the value of the column“ TEL_HOME ””, “Attribute“ id ”of the element“ person ”of the XML document is specified information, and the value of this attribute“ id ”is further set to the column“ ID ”of the table“ ADDRBOOK ”. Since the “designation to associate with the value of” remains, the processing from step S104 to step 108 is repeated in this order.

そして、ステップS108において格納する指定が他に無いと判定されれば、続くステップS110に処理を移行する。
ステップS110においては、テーブルごとに作られたSQL文を一つ選択して発行し、RDB13の対応するテーブルにレコードを追加する。図4の設定では「XML文書全体」、要素“name”の内容である“Mr.Foo”、要素“phone”の内容である“0000-712-3543”、及び属性“id”の値である“AB12345”からなるレコードが、カラム「COPY」、カラム「NAME」、カラム「TEL_HOME」、及びカラム「ID」にそれぞれが対応するようにテーブル「AEERBOOK」に追加される。また図5の設定では、属性“id”の値である“AB12345”及び「XML文書全体」からなるレコードが、カラム「ID」及びカラム「COPY」にそれぞれ対応するようにテーブル「ORIGINALDATA」に追加される。
If it is determined in step S108 that there is no other designation to store, the process proceeds to the subsequent step S110.
In step S110, one SQL statement created for each table is selected and issued, and a record is added to the corresponding table in theRDB 13. In the setting of FIG. 4, “the entire XML document”, “Mr.Foo” that is the content of the element “name”, “0000-712-3543” that is the content of the element “phone”, and the value of the attribute “id”. A record composed of “AB12345” is added to the table “AEERBOOK” so as to correspond to the column “COPY”, the column “NAME”, the column “TEL_HOME”, and the column “ID”. In addition, in the setting of FIG. 5, the record consisting of “AB12345” which is the value of the attribute “id” and “whole XML document” is added to the table “ORIGINALDATA” so as to correspond to the column “ID” and the column “COPY”, respectively. Is done.

そしてこの際に、主キー(本例ではIDの値)の衝突によりレコード追加が失敗したか否か判定され(S112)、失敗と判定され場合はSQL文(INSERT文)をSQL文(UPDATE文)に変え、そのレコードを更新する(S114)。  At this time, it is determined whether or not the record addition has failed due to the collision of the primary key (ID value in this example) (S112). If it is determined to be unsuccessful, the SQL statement (INSERT statement) is changed to the SQL statement (UPDATE statement). And the record is updated (S114).

そして、ステップS112でレコードが追加される、またはステップS114でレコードが更新されると、発行していないSQL文がその他にあるか否か判定される(S116)。  When a record is added in step S112 or a record is updated in step S114, it is determined whether there is any other SQL statement that has not been issued (S116).

ステップS116で発行していないSQL文が残っていると判定されると、ステップS110に処理を戻し、上記と同様な手順でRDB13の所定のテーブルにレコード追加或いはレコード更新を行なう。  If it is determined in step S116 that an SQL statement that has not been issued remains, the process returns to step S110, and a record is added to or updated in a predetermined table of theRDB 13 in the same procedure as described above.

図5の設定では、まだ、属性“id”の値である“AB12345”、要素“name”の内容である“Mr.Foo”、及び要素“phone”の内容である“0000-712-3543”からなるレコードを、カラム「ID」、カラム「NAME」、及びカラム「TEL_HOME」にそれぞれが対応するようにテーブル「TELLIST」に追加するSQL文が残っているため、このSQL文を発行し、上記の通りレコードを追加する。  In the setting of FIG. 5, the value of the attribute “id” is still “AB12345”, the content of the element “name” is “Mr.Foo”, and the content of the element “phone” is “0000-712-3543”. Since there is still an SQL statement for adding a record consisting of to the table “TELLIST” to correspond to the column “ID”, the column “NAME”, and the column “TEL_HOME”, this SQL statement is issued, Add a record as follows.

そして、ステップS116において全てのSQL文が発行されたと判定されると、当該格納処理を終了する。
以上の処理が行なわれる事により、RDB13には、以下のようにXML文書情報が格納される。
If it is determined in step S116 that all SQL statements have been issued, the storage process ends.
By performing the above processing, XML document information is stored in theRDB 13 as follows.

図7は、図4の設定情報ファイルの設定に基づいて図3のXML文書が格納処理された時の、格納後のRDB13のテーブル例である。
同図の表70は、RDB13に設定されているテーブル「ADDRBOOK」を表形式で示したものである。但し、このテーブル「ADDRBOOK」70内の4つのカラム(「COPY」71、「NAME」72、「TEL_HOME」73、及び「ID」74)は予め設定されていたものである。
FIG. 7 is a table example of the storedRDB 13 when the XML document of FIG. 3 is stored based on the setting of the setting information file of FIG.
A table 70 in FIG. 6 shows a table “ADDRBOOK” set in theRDB 13 in a table format. However, the four columns (“COPY” 71, “NAME” 72, “TEL_HOME” 73, and “ID” 74) in the table “ADDRBOOK” 70 are preset.

上記格納処理の結果として、カラム「COPY」71、カラム「NAME」72、カラム「TEL_HOME」73、及びカラム「ID」74には新たに、その順に、「XML文書全体」75、XML文書(図3)中の要素“name”の内容“Mr.Foo”、XML文書(図3)中の要素“phone”の内容“0000-712-3543”、XML文書(図3)中の属性“id”の値“AB12354”からなるレコードが追加された。  As a result of the above storage process, the column “COPY” 71, the column “NAME” 72, the column “TEL_HOME” 73, and the column “ID” 74 are newly added to the “XML document entire” 75, XML document (FIG. 3) The content “Mr.Foo” of the element “name” in the content, the content “0000-712-3543” of the element “phone” in the XML document (FIG. 3), and the attribute “id” in the XML document (FIG. 3). A record consisting of the value "AB12354" has been added.

図8は、図5の設定情報ファイルの設定に基づいて図3のXML文書が格納処理された時の、格納後のRDB13のテーブル例である。
同図の表80、81は、RDB13に設定されているテーブル「ORIGINALDATA」、テーブル「TELLIST」をそれぞれ表形式で示したものである。但し、これらの各テーブルに示されるカラム(カラム「ID」82及びカラム「COPY」83、または、カラム「ID」84、カラム「NAME」85、及びカラム「TEL_HOME」86)は、予め設定されていたものである。
FIG. 8 is a table example of the storedRDB 13 when the XML document of FIG. 3 is stored based on the setting of the setting information file of FIG.
Tables 80 and 81 in the figure show the table “ORIGINALDATA” and the table “TELLIST” set in theRDB 13 in a table format. However, the columns (column “ID” 82 and column “COPY” 83, or column “ID” 84, column “NAME” 85, and column “TEL_HOME” 86) shown in each table are set in advance. It is a thing.

上記処理の結果として、テーブル「ORIGINALDATA」80のカラム「ID」82及びカラム「COPY」83には新たに、その順に、XML文書(図3)中の属性“id”の値“AB12354”及び「XML文書全体」75からなるレコードが追加された。また、テーブル「TELLIST」81のカラム「ID」84、カラム「NAME」85、及びカラム「TELHOME」86には新たに、その順に、XML文書(図3)中の属性“id”の値“AB12354”、XML文書(図3)中の要素“name”の内容“Mr.Foo”、及びXML文書(図3)中の要素“phone”の内容“0000-712-3543”からなるレコードが追加された。As a result of the above processing, the values “AB12354” and “AB12354” of the attribute “id” in the XML document (FIG. 3) are newly added to the column “ID” 82 and the column “COPY” 83 of the table “ORIGINALDATA” 80 in this order. A record consisting of “the entire XML document” 75 has been added. In addition, the column “ID” 84, the column “NAME” 85, and the column “TEL” of the table “TELLIST” 81 are displayed. In the “HOME” 86, the value “AB12354” of the attribute “id” in the XML document (FIG. 3), the content “Mr.Foo” of the element “name” in the XML document (FIG. 3), and A record consisting of the content “0000-712-3543” of the element “phone” in the XML document (FIG. 3) is added.

次に、RDB13に格納されたXML文書の「特定部分情報」を変更する場合の処理について説明する。
この処理は、RDB13の「特定ノード用カラム」に格納される「特定部分情報」を更新の対象とする。これはRDBMSに対してSQLで問合せを行なうため、当然、XML文書を扱えないレガシーシステムからでも同様の処理が可能である。
Next, a process for changing the “specific part information” of the XML document stored in theRDB 13 will be described.
In this process, the “specific partial information” stored in the “specific node column” of theRDB 13 is updated. Since this makes an SQL query to the RDBMS, it is possible to perform the same processing even from a legacy system that cannot handle XML documents.

図9は、RDB13の「特定部分情報」を変更する際に行なわれる、当該XML装置12(またはレガシーシステム16)における処理フローである。
先ず、プライマリキーを基に対象のXML文書を特定し、該XML文書の更新対象の「特定ノード用カラム」及び該「特定ノード用カラム」に対する新しい入力値を基にSQL文(UPDATE文)を作成する(S200)。レガシーシステム16から本更新処理を行なう場合は、予め当該プライマリキーをレガシーシステム16に設定する必要がある。また、XML装置12を介して本更新処理を行なう場合は、設定情報ファイルの設定からプライマリキーを読み出すことができる。
FIG. 9 is a processing flow in the XML apparatus 12 (or legacy system 16) performed when the “specific partial information” in theRDB 13 is changed.
First, the target XML document is identified based on the primary key, and an SQL statement (UPDATE statement) is created based on the “specific node column” to be updated and the new input value for the “specific node column” of the XML document. Create (S200). When this update process is performed from thelegacy system 16, it is necessary to set the primary key in thelegacy system 16 in advance. When this update process is performed via theXML device 12, the primary key can be read from the setting of the setting information file.

そして、上記SQL(UPDATE文)をRDBMSに対して発行する(S202)。
この結果、RDB13の更新対象の「特定ノード用カラム」の値が新しい入力値で更新される。
Then, the above SQL (UPDATE statement) is issued to the RDBMS (S202).
As a result, the value of the “specific node column” to be updated in theRDB 13 is updated with the new input value.

以上の更新処理により、RDB13に格納されたXML文書の「特定部分情報」のみを更新することができる。
図10は、図9の更新処理により、図7に示されるテーブル「ADDRBOOK」70のカラム「NAME」72の値「Mr.Foo」を「Mrs Robinson」に更新処理した場合の、更新後のテーブル「ADDRBOOK」を示すものである。
Through the above update process, only the “specific partial information” of the XML document stored in theRDB 13 can be updated.
FIG. 10 shows an updated table when the value “Mr.Foo” of the column “NAME” 72 of the table “ADDRBOOK” 70 shown in FIG. 7 is updated to “Mrs Robinson” by the update process of FIG. “ADDRBOOK” is indicated.

同図から明らかなように、図7のカラム「NAME」72に格納されていた値「Mr.Foo」が値「Mrs Robinson」(図10の100)に更新されていることが分かる。ただし、カラム「COPY」71に格納されている「XML文書全体」75の中の“name”の内容は“Mr.Foo”のままであることに注意されたい。  As can be seen from the figure, the value “Mr.Foo” stored in the column “NAME” 72 in FIG. 7 is updated to the value “Mrs Robinson” (100 in FIG. 10). However, it should be noted that the content of “name” in “entire XML document” 75 stored in the column “COPY” 71 remains “Mr.Foo”.

続いて、XML文書をRDB13から取り出す際の処理フローを示す。
図11は、XML文書をRDB13から取り出す際の処理フローである。
なお、本処理を効果的に説明できるように、「特定部分情報」のみの更新が行なわれた図10のRDBテーブルから、XML文書を取り出す場合を例に挙げて説明する。
Next, a processing flow when extracting an XML document from theRDB 13 is shown.
FIG. 11 is a processing flow for extracting an XML document from theRDB 13.
In order to effectively explain this processing, an example will be described in which an XML document is extracted from the RDB table of FIG. 10 in which only “specific partial information” has been updated.

先ず、XML文書を一意に特定する値を持つ「特定部分」を設定情報ファイルから取得する。このとき「特定部分」が複数存在する場合は、XML文書を一意に識別できるその他の「特定部分」を設定情報ファイルに作成し、作成した「特定部分」を取得する(S300)。このステップS300により、図4の設定情報ファイルから要素“person”の属性“id”が取得される。  First, a “specific part” having a value that uniquely specifies an XML document is acquired from the setting information file. If there are a plurality of “specific parts” at this time, another “specific part” that can uniquely identify the XML document is created in the setting information file, and the created “specific part” is acquired (S300). By this step S300, the attribute “id” of the element “person” is acquired from the setting information file of FIG.

続いて、ステップS300で取得した「特定部分」に対応するRDBテーブル名とカラム名を設定情報ファイルから取得する(S302)。このステップS302により、図4の設定情報ファイルからテーブル「ADDRBOOK」とカラム「ID」が取得される。  Subsequently, the RDB table name and column name corresponding to the “specific part” acquired in step S300 are acquired from the setting information file (S302). By this step S302, the table “ADDRBOOK” and the column “ID” are acquired from the setting information file of FIG.

続いて、上記「特定部分」の値(例えば、“AB12345”)と、上記取得したRDBテーブル名(テーブル「ADDRBOOK」)及びカラム名(「ID」)を基に、該当するレコードを抽出するようにSQL(SELECT文)を作成する(S304)。  Subsequently, the corresponding record is extracted based on the value of the “specific part” (for example, “AB12345”), the acquired RDB table name (table “ADDRBOOK”), and the column name (“ID”). SQL (SELECT statement) is created (S304).

続いて、ステップS304で作成したSQL文をRDBMSに発行し、RDB13から該当するレコードを取得する(S306)。このステップS306により、図10に示される「XML文書全体」、「Mrs Robinson」、「0000-712-3543」、「AB12354」からなるレコードが取得される。  Subsequently, the SQL statement created in step S304 is issued to the RDBMS, and the corresponding record is acquired from the RDB 13 (S306). Through this step S306, a record including “whole XML document”, “Mrs Robinson”, “0000-712-3543”, and “AB12354” shown in FIG. 10 is acquired.

続いて、「XML文書全体」を格納するカラムの設定(RDBカラム名、圧縮/非圧縮の指定)を設定情報ファイルから取得する(S308)。このステップS308により、図4の設定情報ファイルからは「BLOBカラム」及び「圧縮の指定」が取得される。  Subsequently, the setting of the column storing the “whole XML document” (RDB column name, designation of compression / non-compression) is acquired from the setting information file (S308). By this step S308, “BLOB column” and “compression designation” are acquired from the setting information file of FIG.

続いて、上記「XML文書全体」を格納するカラムの設定を基に、ステップS306で取得したレコードの中の「XML文書全体」を格納するカラムからXML文書全体を取り出す(S310)。このステップS310により、図10の「XML文書全体」65が取得される。  Subsequently, based on the setting of the column for storing the “whole XML document”, the whole XML document is extracted from the column for storing the “whole XML document” in the record acquired in step S306 (S310). By this step S310, the “whole XML document” 65 of FIG. 10 is acquired.

続いて、XML文書の「特定部分情報」を格納する指示(格納する「特定部分」、RDBテーブル名、カラム名)を設定情報ファイルから取得する(S312)。
このステップS312により、図4の設定情報ファイルから要素“data”の子要素“person”のそのまた子要素に該当する“name”、テーブル「ADDRBOOK」、及びカラム「NAME」が取得される。
Next, an instruction to store “specific part information” of the XML document (stored “specific part”, RDB table name, column name) is acquired from the setting information file (S312).
Through this step S312, “name” corresponding to the child element “child” of the element “data”, the table “ADDRBOOK”, and the column “NAME” are acquired from the setting information file of FIG.

続いて、指定されたテーブル「AEERBOOK」のカラム「NAME」の内容を上記レコードの対応カラムから取り出し、上記「特定部分」により特定される「XML文書全体」中の対応部分の内容を上記取り出した「NAME」の内容で上書きする(S314)。このステップS314により、上記レコードのカラム「NAME」の値「Mrs Robinson」が取得され、ステップS312で取得した「要素“data”の子要素“person”のそのまた子要素“name”」で示されるXML文書全体65中の対応部分の値「Mr.Foo」が、上記値「Mrs Robinson」で上書きされる。  Subsequently, the contents of the column “NAME” of the specified table “AEERBOOK” are extracted from the corresponding column of the record, and the contents of the corresponding part in the “whole XML document” specified by the “specific part” are extracted. It is overwritten with the contents of “NAME” (S314). By this step S314, the value “Mrs Robinson” of the column “NAME” of the record is acquired, and is indicated by “the child element“ name ”of the child element“ person ”of the element“ data ”” acquired in step S312. The value “Mr.Foo” of the corresponding part in the entire XML document 65 is overwritten with the value “Mrs Robinson”.

最後に、XML文書の「特定部分情報」を格納する指示が他にあるか否か判定し(S316)、ある場合はステップS312から上記同様に処理を繰り返し、XML文書中の全ての特定部分の値を上書きする。また、ステップS316において格納指示が他に無いと判定された場合は本処理を終了する。  Finally, it is determined whether or not there is another instruction to store the “specific part information” of the XML document (S316). If there is, there is repeated the process in the same manner as described above from step S312, and all of the specific parts in the XML document are determined. Overwrite the value. If it is determined in step S316 that there is no other storage instruction, this process is terminated.

図12は、図10のRDBに格納されるXML文書を上記処理フローにより取り出した場合の結果である。
同図の1200に示されるように、要素“data”の子要素“person”のそのまた子要素“name”の内容が“Mr.Foo”から“Mrs Robinson”に更新されている。
FIG. 12 shows the result when the XML document stored in the RDB of FIG. 10 is extracted by the above processing flow.
As indicated by 1200 in FIG. 9, the content of the child element “name” of the child element “person” of the element “data” is updated from “Mr.Foo” to “Mrs Robinson”.

次に、同一の特定要素を繰り返し含むXML文書と設定情報の組み合わせ例について説明する。
図13は、同一の要素を繰り返し含むXML文書の記述例である。
Next, a combination example of an XML document repeatedly including the same specific element and setting information will be described.
FIG. 13 is a description example of an XML document that repeatedly includes the same elements.

同図に示されるXML文書130は、要素“data”の子要素“docNo”に内容“211”を含んでいる(3行目)。
また、要素“data”の子要素“person”の属性“id”に値“AB12345”を含み(4行目)、要素“person”の子要素“name”に内容“Mr.Foo”を含み(5行目)、更に、要素“person”の子要素“home”のそのまた子要素“phone”に内容“0000-712-3543”を含んでいる(8行目)。
TheXML document 130 shown in the figure includes the content “211” in the child element “docNo” of the element “data” (third line).
In addition, the value “AB12345” is included in the attribute “id” of the child element “person” of the element “data” (line 4), and the content “Mr.Foo” is included in the child element “name” of the element “person” ( Furthermore, the content “0000-712-3543” is included in the child element “phone” of the child element “home” of the element “person” (line 8).

上記4行目、5行目、8行目で指定される各要素や属性は、この順番に11行目、12行目、15行目にも繰り返し現れ、それぞれは、値“CD12456”内容“Mr.Bar”内容“0000-643-3219”を含んでいる。  The elements and attributes specified in the fourth, fifth, and eighth lines repeatedly appear in this order in the eleventh, twelfth, and fifteenth lines, and each has the value “CD12456” content “ "Mr. Bar" contains "0000-643-3219" content.

図14は、同一の要素を繰り返し含むXML文書130に対する設定情報ファイル14の例である。
本例の設定情報ファイル140では、XML文書と二つのRDBテーブルとの間のマッピングを設定する。本例では、以下に示す一から七の指定を行なう。
一.「XML文書全体」と、テーブル「DOCUMENT」のカラム「COPY」の値とが対応するように指定(3行目)。
二.「XML文書全体」を圧縮して格納するように指定し、システム低負荷時に「特定ノード用カラム」の「特定部分情報」を「XML文書全体」に反映し、反映した「XML文書全体」を元のカラムに再格納するように指定(4行目)。
三.XML文書中に繰り返し現れない要素に対し、以下の指定を適用する。
FIG. 14 is an example of the settinginformation file 14 for anXML document 130 that repeatedly includes the same elements.
In the setting information file 140 of this example, mapping between the XML document and the two RDB tables is set. In this example, the followingdesignations 1 to 7 are performed.
one. Designation is made so that “the entire XML document” corresponds to the value of the column “COPY” in the table “DOCUMENT” (third line).
two. It is specified that the “whole XML document” is compressed and stored, and the “specific part information” of the “specific node column” is reflected in the “whole XML document” when the system load is low, and the reflected “whole XML document” is reflected. Specify to store again in the original column (line 4).
three. The following specifications apply to elements that do not appear repeatedly in the XML document.

XML文書の「特定部分」として、要素“data”の子要素“docNo”を指定し、更に、この「特定部分情報」とテーブル「DOCUMENT」のカラム「NO」の値とが対応するように指定(7行目)。
四.上記“docNo”の値をテーブル「ADDRBOOK」のカラム「DOCNO」に対する外部キーとして指定(8行目)。
五.XML文書中に繰り返し現れる同一要素に対し、以下の指定を適用する。
The child element “docNo” of the element “data” is specified as the “specific part” of the XML document, and the “specific part information” and the value of the column “NO” in the table “DOCUMENT” are specified to correspond to each other. (7th line).
Four. The value of “docNo” is designated as an external key for the column “DOCNO” of the table “ADDRBOOK” (line 8).
Five. The following designations apply to the same element that appears repeatedly in an XML document.

XML文書の「特定部分」として、要素“person”のそのまた子要素 “name”を指定し、更に、この「特定部分情報」とテーブル「ADDRBOOK」のカラム「NAME」の値とが対応するようにを指定(13行目)。  The child element “name” of the element “person” is designated as the “specific part” of the XML document, and this “specific part information” and the value of the column “NAME” of the table “ADDRBOOK” correspond to each other. Is specified (line 13).

同様に、XML文書の「特定部分」として、要素“person”の子要素 “home”のそのまた子要素“phone”を指定し、更に、この「特定部分情報」とテーブル「ADDRBOOK」のカラム「TEL_HOME」の値とが対応するようにを指定(15行目)。  Similarly, the child element “phone” of the child element “home” of the element “person” is designated as the “specific part” of the XML document, and this “specific part information” and the column “ADDRBOOK” column “ Specify that the value of “TEL_HOME” corresponds (line 15).

同様に、XML文書の「特定部分」として、要素“person”の属性“id”を指定し、更に、この「特定部分情報」とテーブル「ADDRBOOK」のカラム「ID」の値とが対応するように指定(17行目)。
六.更新対象のテーブルとしてテーブル「DOCUMENT」及びテーブル「ADDRBOOK」を指定(23、24行目)。
七.XML文書ごとに一意となるキーとして、要素“docNo”の値を指定し、同一の要素を一意に示すキーとして、要素“person”の属性“id”の値を指定し、各々の値を合わせたものを更新対象テーブルのプライマリキーとして指定(25行目から28行目)。
Similarly, the attribute “id” of the element “person” is designated as the “specific part” of the XML document, and the “specific part information” and the value of the column “ID” of the table “ADDRBOOK” correspond to each other. (17th line).
Six. The table “DOCUMENT” and the table “ADDRBOOK” are designated as the update target tables (23rd and 24th lines).
Seventh. Specify the value of element “docNo” as a unique key for each XML document, specify the value of attribute “id” of element “person” as the key that uniquely identifies the same element, and match each value Is designated as the primary key of the update target table (from the 25th line to the 28th line).

図15は、同一の特定要素を繰り返し含むXML文書130をRDB13に格納する場合の処理フローである。
先ず、設定情報ファイル(図14)から「XML文書全体を格納する指示」を取得する(S400)。 上記「XML文書全体を格納する指示」とは、図14の説明の「一」及び「二」で述べた、「XML文書全体」とテーブル名とカラム名の値の対応付け、及び格納時に圧縮するか否かの指定である。
FIG. 15 is a processing flow when theXML document 130 repeatedly including the same specific element is stored in theRDB 13.
First, an “instruction to store the entire XML document” is acquired from the setting information file (FIG. 14) (S400). The above “instruction to store the entire XML document” refers to the correspondence between “the entire XML document” and the values of the table name and the column name described in “1” and “2” of FIG. It is specification of whether to do.

そしてこの情報を基に、XML文書全体をRDB13のBLOBカラムに格納するSQL文(INSERT文)を作成する(S402)。なお上記「BLOBカラム」は、図14の設定ではテーブル「DOCUMENT」のカラム「COPY」に相当する。  Based on this information, an SQL statement (INSERT statement) is created that stores the entire XML document in the BLOB column of the RDB 13 (S402). Note that the “BLOB column” corresponds to the column “COPY” of the table “DOCUMENT” in the setting of FIG.

次に上記設定情報ファイルから「XML文書中の特定部分情報を繰り返しなしで格納する指示」を一つ取得する(S404)。この指示は、図14の説明の「三」で述べた、文書中に繰り返し現れない「特定部分」の指定及び、その「特定部分情報」とテーブル名とカラム名の値の対応付けの指定であり、それが一つ取得される。  Next, one “instruction to store specific part information in the XML document without repetition” is acquired from the setting information file (S404). This instruction is the designation of “specific part” that does not appear repeatedly in the document, and the designation of the correspondence between the “specific part information”, the table name, and the column name, as described in “3” of FIG. There is one acquired.

そしてこの取得した情報を基に、XML文書(図13)中の上記「特定部分情報」をRDB13の対応する上記「特定ノード用カラム」に格納する命令を作成する(S406)。設定情報ファイル(図14)の設定では、ステップS402で作成されたSQL文と同一テーブル「DOCUMENT」のカラム「NO」に対して子要素“docNo”の値が対応づけされているため、ステップS406で作成されるSQL文は上記SQL文に追加される。  Based on the acquired information, an instruction to store the “specific part information” in the XML document (FIG. 13) in the corresponding “specific node column” of theRDB 13 is created (S406). In the setting information file (FIG. 14) setting, the value of the child element “docNo” is associated with the column “NO” of the same table “DOCUMENT” as the SQL statement created in step S402. The SQL statement created in is added to the SQL statement.

ステップS406においてSQL文の追加或いは新規作成が終了すると、上記「XML文書中の特定部分情報を繰り返し無しで格納する指示」が他にも設定情報ファイル中に残っているか否か判定され(S408)、その「指示」が他にも残っていると判定されればステップS404に処理を戻し、ステップS404から上記と同様な手順で処理を行なう。本例の設定情報ファイル(図14)では「指示」は図14の7行目に記される一つのみであるため、ステップS408において格納する指定が他に無いと判定され、続くステップS410に処理を移行する。  When the addition or new creation of the SQL sentence is completed in step S406, it is determined whether or not the above “instruction to store specific partial information in the XML document without repetition” remains in the setting information file (S408). If it is determined that other “instructions” remain, the process returns to step S404, and the process is performed from step S404 in the same procedure as described above. In the setting information file (FIG. 14) of this example, since there is only one “instruction” written in the seventh line of FIG. 14, it is determined in step S408 that there is no other designation to store, and the subsequent step S410 is performed. Migrate processing.

ステップS410においては、テーブルごとに作られたSQL文を一つ選択して発行し、RDB13の対応するテーブルにレコードを追加する。設定情報ファイル(図14)の設定では要素“docNo”の内容である“211”及び「XML文書全体」からなるレコードが、カラム「NO」及びカラム「COPY」にそれぞれが対応するようにテーブル「DOCUMENT」に追加される。  In step S410, one SQL statement created for each table is selected and issued, and a record is added to the corresponding table in RDB13. In setting of the setting information file (FIG. 14), the table “[11]” and the “whole XML document” which are the contents of the element “docNo” correspond to the column “NO” and the column “COPY”, respectively. Added to “DOCUMENT”.

そしてこの際に、主キー(本例ではIDの値)の衝突によりレコード追加が失敗したか否か判定され(S412)、失敗と判定され場合はSQL文(INSERT文)をSQL文(UPDATE文)に変え、そのレコードを更新する(S414)。  At this time, it is determined whether or not the record addition has failed due to the collision of the primary key (ID value in this example) (S412). If it is determined to be unsuccessful, the SQL statement (INSERT statement) is changed to the SQL statement (UPDATE statement). And the record is updated (S414).

そして、ステップS412でレコードが追加される、またはステップS414でレコードが更新されると、発行していないSQL文がその他にあるか否か判定される(S416)。  Then, when a record is added in step S412, or when the record is updated in step S414, it is determined whether there is any other SQL statement that has not been issued (S416).

ステップS416でSQL文が残っていると判定されると、ステップS410に処理を戻し、上記と同様な手順でRDB13の所定のテーブルにレコード追加或いはレコード更新を行なう。本例では他に発行されていないSQL文が残っていないため、続く処理に移行する。  If it is determined in step S416 that an SQL sentence remains, the process returns to step S410, and a record is added to or updated in a predetermined table of theRDB 13 in the same procedure as described above. In this example, since there is no other SQL statement that has not been issued, the process proceeds to the subsequent process.

上記続く処理では、上記設定情報ファイルから「XML文書中の特定部分情報を繰り返し格納する指示」を一つ取得する(S418)。この「指示」は、図14の説明の「五」で述べた、文書中に繰り返し現れる「特定部分」の指定及び、その「特定部分情報」とテーブル名とカラム名の値の対応付けの指定であり、それが一つ取得される。  In the subsequent processing, one “instruction to repeatedly store specific partial information in the XML document” is acquired from the setting information file (S418). This “instruction” is the designation of “specific part” repeatedly appearing in the document, and the designation of the correspondence between the “specific part information”, the table name, and the column name, as described in “5” of FIG. And it gets one.

そしてこの取得した情報を基に、XML文書中の「特定部分情報」をRDB13の「特定ノード用カラム」に格納する命令を作成する(S420)。
ステップS420においてSQL文の作成が終了すると、上記「XML文書中の特定部分情報を繰り返し格納する指示」が他にも設定情報ファイル中に残っているか否か判定され(S422)、その「指示」が他にも残っていると判定されればステップS418に処理を戻し、ステップS418から上記と同様な手順で処理を行なう。本例の設定情報ファイル(図14)では、その13行目、15行目及び17行目の3カ所に上記「指示」が記述され、何れもテーブル「ADDRBOOK」が対応付けられているため、上記ステップS418からステップS422までの処理が3回繰り返され、XML文書(図13)中の4から10行目に含まれる一つ目の「特定部分情報」を同一テーブル「ADDRBOOK」に格納するSQL文を作成する。そして、ステップS422において上記「指示」が他に無いと判定され、続くステップS424に処理を移行する。
Based on the acquired information, an instruction to store “specific partial information” in the XML document in the “specific node column” of theRDB 13 is created (S420).
When the creation of the SQL sentence is completed in step S420, it is determined whether or not the “instruction to repeatedly store specific partial information in the XML document” remains in the setting information file (S422). If it is determined that there is another remaining, the process returns to step S418, and the process is performed in the same procedure as described above from step S418. In the setting information file of this example (FIG. 14), the above “instructions” are described in three locations of the 13th, 15th and 17th rows, and the table “ADDRBOOK” is associated with each, The process from step S418 to step S422 is repeated three times, and the first “specific partial information” included in the 4th to 10th lines in the XML document (FIG. 13) is stored in the same table “ADDRBOOK”. Create a statement. In step S422, it is determined that there is no other “instruction”, and the process proceeds to subsequent step S424.

ステップS424においては、テーブルごとに作られたSQL文を一つ選択して発行し、RDB13の対応するテーブルにレコードを追加する。本例の設定情報ファイルの設定では要素“docNo”の内容である“211”、属性“id”の値である“CD12345”、要素“name”の内容である“Mr.Bar”、及び要素“phone”の内容である“0000-643-3219”からなるレコードが、それぞれカラム「DOCNO」、カラム「ID」、カラム「NAME」、及びカラム「TEL_HOME」に対応するようにテーブル「ADDRBOOK」に追加される。なお、カラム「DOCNO」の値に対する要素“docNo”の内容の対応付けは、設定情報ファイル(図4)の8行目でなされている。  In step S424, one SQL statement created for each table is selected and issued, and a record is added to the corresponding table in theRDB 13. In the setting information file setting of this example, the element “docNo” is “211”, the attribute “id” is “CD12345”, the element “name” is “Mr.Bar”, and the element “ A record consisting of “0000-643-3219” which is the contents of “phone” is added to the table “ADDRBOOK” so as to correspond to the column “DOCNO”, the column “ID”, the column “NAME”, and the column “TEL_HOME”, respectively. Is done. Note that the content of the element “docNo” is associated with the value of the column “DOCNO” in the eighth line of the setting information file (FIG. 4).

そしてこの時、主キー(本例の場合ID)の衝突によりレコード追加が失敗したか否か判定され(S426)、失敗と判定され場合はSQL文(INSERT文)をSQL文(UPDATE文)に変え、そのレコードを更新する(S428)。  At this time, it is determined whether or not the record addition has failed due to the collision of the primary key (ID in this example) (S426). If it is determined to be unsuccessful, the SQL statement (INSERT statement) is changed to the SQL statement (UPDATE statement). Then, the record is updated (S428).

ここで、ステップS426でレコードが追加される、またはステップS428でレコードが更新されると、発行していないSQL文がその他にあるか否か判定される(S430)。  Here, when a record is added in step S426 or a record is updated in step S428, it is determined whether there are other SQL statements that have not been issued (S430).

ステップS430でSQL文が残っていると判定されると、ステップS424に処理を戻し、上記と同様な手順でRDB13の所定のテーブルにレコード追加或いはレコード更新を行なう。そして、ステップS430において全てのSQL文が発行されたと判定されると、繰り返し部分の一部が未格納であるかどうかを判定し(S432)、未格納であった場合はSQL文を消去し(S434)、ステップS418以後の処理を再び繰り返す。本例では、図13の11〜17行目に含まれる2つめの「特定部分情報」が未格納であるため、ステップS432で未格納であると判定され、ステップS418から上記二つ目の「特定部分情報」に対する格納処理が行なわれる。  If it is determined in step S430 that an SQL statement remains, the process returns to step S424, and a record is added to or updated in a predetermined table in theRDB 13 in the same procedure as described above. If it is determined in step S430 that all SQL statements have been issued, it is determined whether a part of the repeated portion is unstored (S432), and if not, the SQL statement is erased ( S434), the processing after step S418 is repeated again. In this example, since the second “specific partial information” included in the 11th to 17th lines in FIG. 13 is not stored, it is determined in step S432 that it has not been stored. The storage process for the “specific partial information” is performed.

そして、ステップS432において全て格納されたと判断されると、本格納処理を終了する。
図16は、図14の設定情報ファイルの設定に基づいて図13のXML文書が格納処理された時の、格納後のRDB13のテーブル例である。
If it is determined in step S432 that all the data has been stored, the present storage process is terminated.
FIG. 16 is a table example of the storedRDB 13 when the XML document of FIG. 13 is stored based on the setting of the setting information file of FIG.

同図の表160、161は、RDB13に設定されているテーブル「DOCUMENT」とテーブル「ADDRBOOK」を表形式で示したものである。これらのテーブルの内、6つのカラム「NO」162、カラム「COPY」163、カラム「DOCNO」164、カラム「ID」165、カラム「NAME」166、カラム「TEL_HOME」167、は予め設定されていたものである。  Tables 160 and 161 in the figure show the table “DOCUMENT” and the table “ADDRBOOK” set in theRDB 13 in a table format. Among these tables, six columns “NO” 162, column “COPY” 163, column “DOCNO” 164, column “ID” 165, column “NAME” 166, and column “TEL_HOME” 167 were set in advance. Is.

上記処理により、テーブル「DOCUMENT」160のカラム「NO」162及びカラム「COPY」163のそれぞれに対応するように、「XML文書全体」130の3行目に含まれる値「211」及び「XML文書全体」130が格納された。  By the above processing, the values “211” and “XML document” included in the third row of “entire XML document” 130 so as to correspond to the columns “NO” 162 and “COPY” 163 of the table “DOCUMENT” 160, respectively. "Overall" 130 was stored.

また、テーブル「ADDRBOOK」161のカラム「DOCNO」164、カラム「ID」165、カラム「NAME」166、及びカラム「TEL_HOME」167のぞれぞれに対応するように、一つ目の「特定部分情報」である「211」、「AB12345」、「Mr.Foo」、及び「0000-712-3543」からなるレコードと、二つ目の「特定部分情報」である「211」、「CD12456」、「Mr.Bar」、及び「0000-643-3219」からなるレコードが格納された。  In addition, the first “specific part” is associated with each of the column “DOCNO” 164, the column “ID” 165, the column “NAME” 166, and the column “TEL_HOME” 167 of the table “ADDRBOOK” 161. Information "211", "AB12345", "Mr.Foo", and "0000-712-3543" records, and the second "specific partial information" "211", "CD12456", Records consisting of “Mr.Bar” and “0000-643-3219” are stored.

このように格納された「特定部分情報」は、同一要素が繰り返し含まれないXML文書に対する処理例でも説明したが、RDBMSに対してSQLを発行することで行なえるため、XML文書を扱えないレガシーシステムからでも以下に示す処理に従って取得や更新等の処理が行なえる。  The “partial information” stored in this way has also been explained in the processing example for XML documents that do not contain the same element repeatedly. However, since it can be done by issuing SQL to the RDBMS, it is not possible to handle XML documents. Even from the system, processing such as acquisition and update can be performed according to the following processing.

図17は、「特定部分情報」を取得する際に行なわれる、当該XML装置(またはレガシーシステム)における処理フローである。
先ず、XML文書を特定するカラム(図16のカラム「NO」162)と繰り返し部分を特定するカラム(図16のカラム「ID」165)をキーにレコードを特定し対象の「特定部分情報」に対応するカラムの値を取得するSQL文(SELECT文)を作成する(S500)。
FIG. 17 is a processing flow in the XML apparatus (or legacy system) that is performed when the “specific part information” is acquired.
First, a record is specified using a column for specifying an XML document (column “NO” 162 in FIG. 16) and a column for specifying a repeated portion (column “ID” 165 in FIG. 16) as keys, and the target “specific part information” is specified. An SQL statement (SELECT statement) for acquiring the corresponding column value is created (S500).

そして、上記SQL文(SELECT文)をRDBMSに対して発行する(S502)。
これにより、対象個所が取得される。
図18は、「特定部分情報」を変更する際に行なわれる、当該XML装置(またはレガシーシステム)における処理フローである。
Then, the SQL statement (SELECT statement) is issued to the RDBMS (S502).
Thereby, the target part is acquired.
FIG. 18 is a processing flow in the XML apparatus (or legacy system) that is performed when the “specific part information” is changed.

先ず、XML文書を特定するカラム(図16のカラム「NO」162)と繰り返し部分を特定するカラム(図16のカラム「ID」165)をキーにレコードを特定し更新対象とする「特定部分情報」に対応するカラムの値を変更するSQL文(UPDATE文)を作成する(S600)。  First, a specific part information is specified by specifying a record using a column for specifying an XML document (column “NO” 162 in FIG. 16) and a column for specifying a repetitive part (column “ID” 165 in FIG. 16) as an update target. The SQL statement (UPDATE statement) for changing the column value corresponding to "is created (S600).

そして、上記SQL(UPDATE文)をRDBMSに対して発行する(S602)。
これにより、対象個所が更新される。
続いて、設定情報ファイル(図14)の4行目に指定される反映処理について説明する。
Then, the SQL (UPDATE statement) is issued to the RDBMS (S602).
Thereby, the target part is updated.
Next, the reflection process specified in the fourth line of the setting information file (FIG. 14) will be described.

上記反映処理では、システム低負荷時に「特定ノード用カラム」の「特定部分情報」を「XML文書全体」に反映し、反映した「XML文書全体」を元のカラムに再格納する。
図19は、上記反映処理フローの一例である。
In the reflection process, the “specific partial information” in the “specific node column” is reflected in the “whole XML document” and the reflected “whole XML document” is re-stored in the original column when the system load is low.
FIG. 19 is an example of the reflection processing flow.

先ず、設定情報ファイルから「XML文書の一部を格納する指示」を一つ取得する(S700)。上記「指示」とは、XML文書中の「特定部分」の指定と、その「特定部分情報」と対応する「RDBテーブル名」及び「カラム名」である。  First, one “instruction to store a part of an XML document” is acquired from the setting information file (S700). The “instructions” are designation of “specific part” in the XML document, and “RDB table name” and “column name” corresponding to the “specific part information”.

ここで他にも上記「指示」が設定情報ファイルに含まれているか否か判定し(S702)、含まれている場合はステップS700の処理を繰り返す。そして、ステップS702で上記「指示」が他にないと判定されると、以下の処理に移行する。  Here, it is determined whether or not any other “instruction” is included in the setting information file (S702). If included, the process of step S700 is repeated. If it is determined in step S702 that there is no other “instruction”, the process proceeds to the following process.

先ず、システムの負荷が低くなるまで待機する(S704)。なお、システムの負荷は、XML装置の装置負荷監視部で監視することができる。
続いて、ステップS700で取得した「カラム名」の値の変更の有無を更新フラグで確認する(S706)。当該更新フラグを用いた変更の有無の確認は、図18で説明した「特定部分情報」の変更の際に例えばその変更個所に対応させてフラグ「1」を立て、このフラグの状態を参照することで確認できる。
First, it waits until the system load becomes low (S704). The system load can be monitored by the device load monitoring unit of the XML apparatus.
Subsequently, whether or not the value of the “column name” acquired in step S700 has been changed is confirmed by an update flag (S706). For confirmation of the presence or absence of a change using the update flag, for example, when the “specific part information” described in FIG. 18 is changed, a flag “1” is set corresponding to the change location, and the state of this flag is referred to This can be confirmed.

ここで、上記変更の有無を判定し(S708)、該変更が確認されない場合はステップS704から処理を繰り返す。
そして、ステップS708で変更が確認されると、設定情報ファイルから「XML文書全体を格納する指示」を取得する(S710)。上記「XML文書全体を格納する指示」とは、「XML文書全体」とテーブル名とカラム名の値の対応付け、及び格納時に圧縮するか否かの指定である。
Here, the presence / absence of the change is determined (S708). If the change is not confirmed, the process is repeated from step S704.
When the change is confirmed in step S708, “an instruction to store the entire XML document” is acquired from the setting information file (S710). The “instruction to store the entire XML document” is an association between “entire XML document” and the values of the table name and the column name, and whether or not to compress at the time of storage.

続いて、XML文書を一意に特定する値を持つ「特定部分」(以下、文書キー部分と呼ぶこととする)を設定情報ファイルから取得する。このとき「特定部分」が複数存在する場合は、XML文書を一意に識別できるその他の「特定部分」を設定情報ファイルに作成し、作成した「特定部分」を取得する(S712)。  Subsequently, a “specific part” (hereinafter referred to as a document key part) having a value that uniquely specifies the XML document is acquired from the setting information file. If there are a plurality of “specific parts” at this time, another “specific part” that can uniquely identify the XML document is created in the setting information file, and the created “specific part” is acquired (S712).

続いて、上記文書キー部分に対応するRDBテーブル名及びカラム名を設定情報ファイルから取得する(S714)。
続いて、内容変更があったXML文書に上記文書キーの値をRDBから取得する(S716)。
Subsequently, the RDB table name and column name corresponding to the document key part are acquired from the setting information file (S714).
Subsequently, the value of the document key is acquired from the RDB for the XML document whose contents have been changed (S716).

続いて、上記文書キーの値を使用して、内容変更のあったカラムの値(以下、更新済み特定部分情報と呼ぶこととする)とこれに対応する「XML文書全体」とをRDB13から取り出す(S718)。  Subsequently, using the value of the document key, the value of the column whose contents have been changed (hereinafter referred to as updated specific partial information) and the corresponding “whole XML document” are extracted from theRDB 13. (S718).

続いて、ステップS718で取り出した「更新済み特定部分情報」で、同じくステップS718で取り出した「XML文書全体」中の該当する「特定部分」の値を更新する(S720)。  Subsequently, the value of the “specific part” in the “whole XML document” extracted in step S718 is updated with the “updated specific part information” extracted in step S718 (S720).

最後に、更新後の「XML文書全体」をRDBの元にカラムに格納する(S722)。なおこのとき、更新した個所に対応する更新フラグを「1」から「0」にする。
そして、他の更新個所に対し、ステップS704から処理を繰り返す。
(第二実施例)
本実施例では、RDBに格納するXML文書中の特定部位を、更新・参照の頻度を学習することにより動的に変えていく例を示す。
Finally, the updated “whole XML document” is stored in the column under the RDB (S722). At this time, the update flag corresponding to the updated location is changed from “1” to “0”.
Then, the processing is repeated from step S704 for other update locations.
(Second embodiment)
In this embodiment, an example is shown in which a specific part in an XML document stored in an RDB is dynamically changed by learning the frequency of update / reference.

図20は、第二実施例におけるXML文書格納システムの構成図である。
本例のXML文書格納システム200は、XML装置202と、RDBMSの管理下にあるRDB204と、XML装置202及びRDB204間でのXML文書の格納・更新・検索・削除等の条件設定をする設定情報ファイル206とを備える。これらは一つのコンピュータに実装させたり、或いは通信ネットワークを介して複数のコンピュータに分散して実装させることができる。
FIG. 20 is a configuration diagram of an XML document storage system in the second embodiment.
The XMLdocument storage system 200 of the present example includes setting information for setting conditions such as storage, update, search, and deletion of an XML document between theXML device 202, theRDB 204 under the management of the RDBMS, and theXML device 202 and theRDB 204.File 206. These can be mounted on a single computer, or can be distributed and mounted on a plurality of computers via a communication network.

本実施例では格納対象のXML文書中の特定部位を動的に変化させるため、上記RDB204に2種類のテーブル(XML内容格納テーブル204−1、XMLノード−カラム動的マッピングテーブル204−2)を設ける。  In this embodiment, in order to dynamically change the specific part in the XML document to be stored, two types of tables (XML content storage table 204-1 and XML node-column dynamic mapping table 204-2) are stored in theRDB 204. Provide.

上記XML内容格納テーブル204−1は第一実施例のRDBテーブルに相当し、もう一方の上記XMLノード−カラム動的マッピングテーブル204−2は、XML文書中の「特定部分」と上記XML内容格納テーブル204−1中の「特定ノード用カラム」との間のマッピングを動的に変化させるためのテーブルである。  The XML content storage table 204-1 corresponds to the RDB table of the first embodiment, and the other XML node-column dynamic mapping table 204-2 stores the “specific part” in the XML document and the XML content. This is a table for dynamically changing the mapping with the “specific node column” in the table 204-1.

そして、上記マッピングを動的に変化させるため、XML装置202には第一実施例で述べた機能に加え、更に学習機能を備える。
上記学習機能は、RDB204に格納されたXML文書情報(「XML文書全体」または「特定部分情報」)に対するアクセス処理及び該アクセス先の「特定部分」に対する処理を監視するノードアクセス監視部210と、RDB204の「特定ノード用カラム」へのアクセス処理及び該処理を監視するカラムアクセス監視部212と、上記ノードアクセス監視部210及び上記カラムアクセス監視部212によって検出される「特定部分」(「特定ノード用カラム」と対応する「特定部分」も含む)のアクセス情報(更新・参照)を履歴管理する更新参照履歴管理部214と、該更新参照履歴管理部214によって管理されるアクセス履歴を基に、上記XML内容格納テーブル204−1の「特定ノード用カラム」に格納させる「特定部分情報」の設定変更を上記XMLノード−カラム動的マッピングテーブル204−2に対して行なう更新部216とを備える。
In order to dynamically change the mapping, theXML apparatus 202 is further provided with a learning function in addition to the functions described in the first embodiment.
The learning function includes a nodeaccess monitoring unit 210 that monitors an access process for XML document information (“whole XML document” or “specific part information”) stored in theRDB 204 and a process for the “specific part” of the access destination; Access processing to the “specific node column” of theRDB 204, the columnaccess monitoring unit 212 that monitors the processing, and the “specific part” (“specific node” detected by the nodeaccess monitoring unit 210 and the columnaccess monitoring unit 212 Update referencehistory management unit 214 for managing history of access information (update / reference) including “specific portion” corresponding to “column” and an access history managed by the update referencehistory management unit 214, The “specific part” stored in the “specific node column” of the XML content storage table 204-1 Configuration changes Distribution "the XML node - and aupdate section 216 that performs relative column dynamic mapping table 204-2.

なお、上記設定情報ファイル206では、第一実施例で説明した設定に加え、上記XML内容格納テーブル204−1において動的に変化させるカラムの指定を行なう。
以下に、第一実施例に例示した「同一の特定要素を繰り返し含まないXML文書(図3)と設定情報ファイル(図4)とそのRDBテーブル(図7)の組み合わせ例」、と比較して、第二実施例のXML文書格納システム200の処理を詳しく説明する。
In the settinginformation file 206, in addition to the setting described in the first embodiment, a column to be dynamically changed in the XML content storage table 204-1 is specified.
Compared to the “example of combination of XML document (FIG. 3), setting information file (FIG. 4) and its RDB table (FIG. 7) that does not repeatedly include the same specific elements” exemplified in the first embodiment below. The processing of the XMLdocument storage system 200 of the second embodiment will be described in detail.

なお、第一実施例と同様に、以下の説明においても理解しやすいように、XML形式で示したXML文書や設定情報ファイルの記述例の説明を、文書の左端に本文とは関係のない行番号(例えば「1:」や「2:」など)を付し、特に関係する個所のみとりあげて説明する。  As in the first embodiment, for easy understanding in the following description, the description of the description example of the XML document or setting information file shown in the XML format is described on the left end of the document as a line unrelated to the text. Numbers (for example, “1:”, “2:”, etc.) are attached, and only relevant portions will be described.

図21は、同一の特定要素を繰り返し含まないXML文書(図3)に対する設定情報ファイルの例である。
本例の設定情報ファイル218では、第一実施例の設定情報ファイル(図4)に対し、次のように変更する。
FIG. 21 is an example of a setting information file for an XML document (FIG. 3) that does not repeatedly include the same specific element.
In the setting information file 218 of this example, the setting information file (FIG. 4) of the first embodiment is changed as follows.

XML文書の木構造の頂点に位置する要素“data”の子要素“person”のそのまた子要素 “name”の内容をテーブル「ADDRBOOK」のカラム「NAME」の値に対応させる指定(図4の8行目)と、要素“person”の子要素 “home”のそのまた子要素“phone”の内容をテーブル「ADDRBOOK」のカラム「TEL_HOME」の値に対応させる指定(図4の10行目)を共に解除し、テーブル「ADDRBOOK」の「カラム1」から「カラム5」を、動的に変化する格納対象ノード(特定部分)の内容(特定部分情報)を格納するカラムとして指定する(図21の13行目から17行目)。  Specification that the contents of the child element “name” of the child element “person” of the element “data” located at the apex of the tree structure of the XML document correspond to the value of the column “NAME” of the table “ADDRBOOK” (FIG. 4) (Line 8) and the specification of the content of the child element “phone” of the child element “home” of the element “person” corresponding to the value of the column “TEL_HOME” of the table “ADDRBOOK” (line 10 in FIG. 4) And “column 1” to “column 5” of the table “ADDRBOOK” are designated as columns for storing the contents (specific part information) of the dynamically changing storage target node (specific part) (FIG. 21). 13th to 17th lines).

図22は、上記設定情報ファイル(図21)に対応するように作成したXML格納内容テーブル(テーブル「ADDRBOOK」)を表形式で示したものである。
同図のテーブル「ADDRBOOK」220には、第一実施例の図7に示されるテーブルと同様に、XML文書全体を格納させるためのBLOBカラム「COPY」及びXML文書中の動的に変化しない「特定部分」(本例では属性“id”)に含まれる「特定部分情報」を格納するための固定カラム(本例ではカラム「ID」)が設けられている。そして、カラム「NAME」及びカラム「TEL_HOME」の代わりに、XML文書中の動的に変化する「特定部分」(本例では5つとする)に含まれるそれぞれの「特定部分情報」を格納するための動カラム(上記動的に変化する「特定部分」の数に合わせて本例では5つのカラム「カラム1」、「カラム2」、「カラム3」、「カラム4」、及び「カラム5」)が設けられている。
FIG. 22 shows an XML storage content table (table “ADDRBOOK”) created so as to correspond to the setting information file (FIG. 21) in a table format.
In the table “ADDRBOOK” 220 shown in the figure, like the table shown in FIG. 7 of the first embodiment, the BLOB column “COPY” for storing the entire XML document and the dynamically changing “ A fixed column (column “ID” in this example) for storing “specific part information” included in the “specific part” (attribute “id” in this example) is provided. Then, instead of the column “NAME” and the column “TEL_HOME”, each “specific part information” included in the “specific part” (five in this example) that dynamically changes in the XML document is stored. In this example, five columns “column 1”, “column 2”, “column 3”, “column 4”, and “column 5” are matched to the number of the “specific parts” that dynamically change. ) Is provided.

図23は、本実施例において新たに作成したXMLノード−カラム動的マッピングテーブルを表形式で示したものである。
同図の左から順に、動カラムが設定されているテーブル名を格納するためのカラム「テーブル名」、該動カラム名を格納するためのカラム「カラム名」、及び同一レコードに示されるテーブルのカラムに格納させるXML文書中の「特定部分情報」の位置を格納するカラム「対象ノードのXPath」が設けられている。
FIG. 23 shows the XML node-column dynamic mapping table newly created in the present embodiment in the form of a table.
Starting from the left in the figure, the column “table name” for storing the table name in which the dynamic column is set, the column “column name” for storing the dynamic column name, and the table shown in the same record A column “XPath of target node” for storing the position of “specific partial information” in the XML document to be stored in the column is provided.

図24は、更新参照履歴テーブルを表形式で示したものである。
同図の左から順に、XML内容格納テーブル204−1に格納されたXML文書情報に対して情報の参照・更新が行なわれた「特定部分」の位置を記録するためのカラム「対象ノードのXPath」、該「特定部分」に対する参照・更新回数を記録するためのカラム「のべ参照・更新回数」、及び反映の有無を記録するためのカラム「反映済みフラグ」が設定されている。
FIG. 24 shows the update reference history table in a table format.
In order from the left in the figure, a column “XPath of the target node” for recording the position of the “specific part” where the information is referred to and updated with respect to the XML document information stored in the XML content storage table 204-1. ”, A column“ total reference / update count ”for recording the reference / update count for the“ specific part ”, and a column“ reflected flag ”for recording the presence / absence of reflection.

図25は、設定情報ファイル206に基づいて、XML文書15をXML装置202からRDB204に格納する場合の処理フローである。
但し、本処理を説明する前提として、図23のXMLノード−カラム動的マッピングテーブルは、次に示されるにような設定が現在なされているものとする。
FIG. 25 is a processing flow when theXML document 15 is stored in theRDB 204 from theXML apparatus 202 based on the settinginformation file 206.
However, as a premise for explaining this processing, it is assumed that the XML node-column dynamic mapping table of FIG. 23 is currently set as shown below.

図26にはその設定を示す。
すなわち、カラム「テーブル名」には全て、テーブル「ADDRBOOK」が指定され、カラム「カラム名」には、「カラム1」から「カラム5」が指定され、これら「カラム1」・・・「カラム5」に対し、それぞれ、カラム「対象ノードのXPath」に「要素“data”の子要素“person”の子要素“name”」、・・・、「要素“data”の子要素の“person”の子要素の“home”の子要素“phone”」が割り当てられている。
FIG. 26 shows the setting.
That is, the table “ADDRBOOK” is specified for all the columns “table name”, and “column 1” to “column 5” are specified for the column “column name”. “5” ”,“ Child element “name” of child element “person” of element “data” ”in column“ XPath of target node ”,...,“ Person ”of child element of“ data ” The child element “home” of the “home” child element is assigned.

これらの設定は、後に詳しく説明するが、学習機能によりその時点で最も多く更新・参照がなされた情報を含む「特定部分」をランク付けし、上位の「特定部分」を動的カラムに一つずつ対応付けする処理により、更新参照部位更新部216から設定される。  These settings will be described in detail later. The “specific part” that contains the most updated / referenced information at that time by the learning function is ranked, and the upper “specific part” is assigned to the dynamic column. It is set from the update referencepart update unit 216 by the process of associating with each other.

さて、上記前提条件をもとに、図25の処理フローを説明する。
先ず、設定情報ファイル(図21)から「XML文書全体を格納する指示」を取得する(S800)。上記「XML文書全体を格納する指示」とは、「XML文書全体」とテーブル名とカラム名の値の対応付け、及び格納時に圧縮するか否かの指定である。すなわち本例の場合、「XML文書全体」をBLOBカラム(=テーブル「ADDRBOOK」のカラム「COPY」)に「圧縮」して格納するという指定に相当する。
Now, the processing flow of FIG. 25 will be described based on the above preconditions.
First, an “instruction to store the entire XML document” is acquired from the setting information file (FIG. 21) (S800). The “instruction to store the entire XML document” is an association between “entire XML document” and the values of the table name and the column name, and whether or not to compress at the time of storage. That is, in the case of this example, this corresponds to the designation of “compressing” and storing “whole XML document” in the BLOB column (= column “COPY” of table “ADDRBOOK”).

そしてこの情報を基に、XML文書全体をRDB204の「BLOBカラム」に格納するSQL文(INSERT文)を作成する(S802)。
次に、上記設定情報ファイルから「XML文書中の特定部分情報を静的に格納するための指示」を一つ取得する(S804)。この「静的に」とは、「特定部分」とその「特定部分情報」の格納先とが事前に対応付けされていることを差している。上記「指示」は本例の場合、要素“data”の子要素“person”の属性“id”の値をテーブル「ADDRBOOK」のカラム「ID」に格納する指示に相当する。
Based on this information, an SQL statement (INSERT statement) is created that stores the entire XML document in the “BLOB column” of the RDB 204 (S802).
Next, one “instruction for statically storing specific partial information in the XML document” is acquired from the setting information file (S804). This “statically” means that the “specific part” and the storage destination of the “specific part information” are associated in advance. In the present example, the “instruction” corresponds to an instruction to store the value of the attribute “id” of the child element “person” of the element “data” in the column “ID” of the table “ADDRBOOK”.

そしてこの取得した情報を基に、XML文書(図3)中の事前に指定された「特定部分」の内容をRDB204の対応テーブルの対応カラム(特定ノード用カラム)に格納する命令を作成する(S806)。なお、図21の設定では、カラム「ID」はカラム「COPY」と同じテーブル「ADDRBOOK」に作成されているため、ステップS806において作成されるSQL文はステップS802で作成されたSQL文に追加される。なお、上記対応カラムがテーブル「ADDRBOOK」と異なるテーブルに設けられている場合、SQL文はそのテーブルに対して新規作成される。  Based on the acquired information, an instruction is created to store the contents of the “specific part” designated in advance in the XML document (FIG. 3) in the corresponding column (specific node column) of the correspondence table of the RDB 204 ( S806). In the setting of FIG. 21, the column “ID” is created in the same table “ADDRBOOK” as the column “COPY”, so the SQL statement created in step S806 is added to the SQL statement created in step S802. The When the corresponding column is provided in a table different from the table “ADDRBOOK”, an SQL statement is newly created for the table.

ステップS806においてSQL文の追加或いは新規作成が終了すると、上記XML文書中の「特定部分情報」を静的に格納する指示が他にも設定情報ファイル中に残っているか否か判定され(S808)、格納する指示が他にも残っていると判定されればステップS804に処理を戻し、ステップS804から上記と同様な手順で処理を行なう。  When the addition or new creation of the SQL sentence is completed in step S806, it is determined whether or not there are other instructions in the setting information file for statically storing the “specific partial information” in the XML document (S808). If it is determined that there are other instructions to store, the process returns to step S804, and the process is performed from step S804 in the same procedure as described above.

そして、ステップS808において格納する指示が他に無いと判定されれば、続くステップS810に処理を移行する。
続く処理では、上記設定情報ファイルから「XML文書中の動的に変わる特定部分の内容を格納するための指示」を一つ取得する(S810)。上記「指示」は本例の場合、テーブル「ADDRBOOK」の「カラム1」を動カラムとする指示、テーブル「ADDRBOOK」の「カラム2」を動カラムとする指示、テーブル「ADDRBOOK」の「カラム3」を動カラムとする指示、テーブル「ADDRBOOK」の「カラム4」を動カラムとする指示、及びテーブル「ADDRBOOK」の「カラム5」を動カラムとする指示があり、これらのうちの一つが取得される。
If it is determined in step S808 that there is no other instruction to store, the process proceeds to subsequent step S810.
In the subsequent process, one “instruction for storing the contents of the dynamically changing specific part in the XML document” is acquired from the setting information file (S810). In the case of this example, the above “instruction” is an instruction that “column 1” of the table “ADDRBOOK” is a dynamic column, an instruction that “column 2” of the table “ADDRBOOK” is a dynamic column, and “column 3” of the table “ADDRBOOK”. ”As a dynamic column,“column 4 ”of the table“ ADDRBOOK ”as a dynamic column, and“column 5 ”of the table“ ADDRBOOK ”as a dynamic column, one of which is acquired Is done.

続いて、XMLノード−カラム動的マッピングテーブルから、該テーブルに現在格納している「テーブル名」、「カラム名」、及び「特定部分」の位置の組み合わせを取得する(S812)。  Subsequently, the combination of the positions of “table name”, “column name”, and “specific part” currently stored in the table is acquired from the XML node-column dynamic mapping table (S812).

そして、動カラムとして指定されたカラムに対し、XMLノード−カラム動的マッピングテーブルで対応付けされた「特定部分」の位置の情報を格納させる構文をSQL文に追加する(S814)。本例では、上記動カラムがテーブル「ADDRBOOK」に設けられているため、テーブル「ADDRBOOK」に対して作成されたSQL文に追加する形式をとるが、上記動的カラムがテーブル「ADDRBOOK」と異なるテーブルに設けられている場合は、そのテーブルに対してSQL文を新規作成する。  Then, for the column specified as the dynamic column, a syntax for storing the information on the position of the “specific part” associated in the XML node-column dynamic mapping table is added to the SQL statement (S814). In this example, since the dynamic column is provided in the table “ADDRBOOK”, it is added to the SQL statement created for the table “ADDRBOOK”, but the dynamic column is different from the table “ADDRBOOK”. If the table is provided, a new SQL statement is created for the table.

ステップS814においてSQL文の追加或いは新規作成が終了すると、上記「XML文書中の動的に変わる特定部分の内容を格納するための指示」が他にも設定情報ファイル中に残っているか否か判定され(S816)、格納する指示が他にも残っていると判定されればステップS810に処理を戻し、ステップS810から上記と同様な手順で処理を行なう。  When the addition or new creation of the SQL sentence is completed in step S814, it is determined whether or not the above “instruction for storing the contents of the dynamically changing specific part in the XML document” remains in the setting information file. If it is determined that there are other instructions to store (S816), the process returns to step S810, and the process is performed from step S810 according to the same procedure as described above.

上述したように本例では、上記「XML文書中の動的に変わる特定部分の内容を格納するための指示」が5種類あるため、ステップS810からステップS816までの処理は5回繰り返される。  As described above, in this example, since there are five types of “instructions for storing the contents of the dynamically changing specific part in the XML document”, the processing from step S810 to step S816 is repeated five times.

そして、ステップS816において格納する指示が他に無いと判定されれば、続くステップS818に処理を移行する。
ステップS818においては、テーブルごとに作られたSQL文を一つ選択して発行し、RDB204のXML内容格納テーブル204−1にレコードを追加する。本例では「XML文書全体」、属性“id”の値である“AB12345”要素“name”の内容である“Mr.Foo”、・・・、及び要素“phone”の内容である“0000-712-3543”からなるレコードが、カラム「COPY」、カラム「ID」、カラム「NAME」、・・・、及びカラム「TEL_HOME」にそれぞれが対応するようにテーブル「ADDRBOOK」に追加される。
If it is determined in step S816 that there is no other instruction to store, the process proceeds to subsequent step S818.
In step S818, one SQL statement created for each table is selected and issued, and a record is added to the XML content storage table 204-1 of theRDB 204. In this example, “whole XML document”, “AB12345” element “name” that is the value of the attribute “id”, “Mr.Foo” that is the content of the element “name”, and “0000-” that is the content of the element “phone”. A record composed of “712-3543” is added to the table “ADDRBOOK” so as to correspond to the column “COPY”, the column “ID”, the column “NAME”,..., And the column “TEL_HOME”.

そしてこの際に、主キー(本例ではIDの値)の衝突によりレコード追加が失敗したか否か判定され(S820)、失敗と判定され場合はSQL文(INSERT文)をSQL文(UPDATE文)に変え、そのレコードを更新する(S822)。  At this time, it is determined whether or not the record addition has failed due to the collision of the primary key (ID value in this example) (S820). If it is determined to be unsuccessful, the SQL statement (INSERT statement) is changed to the SQL statement (UPDATE statement). And the record is updated (S822).

そして、ステップS818でレコードが追加される、またはステップS822でレコードが更新されると、発行していないSQL文がその他にあるか否か判定される(S824)。  Then, when a record is added in step S818 or the record is updated in step S822, it is determined whether there is any other SQL statement that has not been issued (S824).

ステップS824で発行していないSQL文が残っていると判定されると、ステップS818に処理を戻し、上記と同様な手順でRDB204の所定のテーブルにレコード追加或いはレコード更新を行なう。  If it is determined in step S824 that an SQL statement that has not been issued remains, the process returns to step S818, and a record is added to or updated in a predetermined table of theRDB 204 in the same procedure as described above.

そして、ステップS824において全てのSQL文が発行されたと判定されると、当該格納処理を終了する。
以上の処理が行なわれる事により、RDB204には、以下のようにXML文書情報が格納される。
If it is determined in step S824 that all SQL statements have been issued, the storage process ends.
By performing the above processing, the XML document information is stored in theRDB 204 as follows.

図27は、図21の設定情報ファイルの設定及び図26のXMLノード−カラム動的マッピングテーブルに基づいて図3のXML文書が格納処理された時の、格納後のXML内容格納テーブル204−1のテーブル例である。  FIG. 27 shows the stored XML content storage table 204-1 when the XML document of FIG. 3 is stored based on the setting information file setting of FIG. 21 and the XML node-column dynamic mapping table of FIG. It is an example of a table.

同図の表270は、本例のXML内容格納テーブル204−1であるテーブル「ADDRBOOK」を表形式で示したものである。
同図から分かるように、上記格納処理の結果、カラム「COPY」271、カラム「ID」272、「カラム1」273、・・・、「カラム5」274には新たに、その順に、「XML文書全体」75、XML文書(図3)中の属性“id”の値“AB12354”、XML文書(図3)中の要素“name”の内容“Mr.Foo”、・・・、XML文書(図3)中の要素“phone”の内容“0000-712-3543”からなるレコードが追加された。
A table 270 in the figure shows a table “ADDRBOOK” which is the XML content storage table 204-1 of this example in a table format.
As can be seen from the figure, as a result of the above storage processing, the column “COPY” 271, column “ID” 272, “column 1” 273,..., “Column 5” 274 are newly added in the order “XML”. Whole document ”75, attribute“ id ”value“ AB12354 ”in the XML document (FIG. 3), element“ name ”content“ Mr.Foo ”in the XML document (FIG. 3), XML document ( A record consisting of the content “0000-712-3543” of the element “phone” in FIG. 3) has been added.

図28はRDB204からXML文書を取り出す際の処理フローである。
先ず、XML文書を一意に特定する値を持つ「特定部分」を設定情報ファイルから取得する。このとき「特定部分」が複数存在する場合は、XML文書を一意に識別できるその他の「特定部分」を設定情報ファイルに作成し、作成した「特定部分」を取得する(S900)。このステップS900により、図21の設定情報ファイルから要素“person”の属性“id”が取得される。
FIG. 28 is a processing flow for extracting an XML document from theRDB 204.
First, a “specific part” having a value that uniquely specifies an XML document is acquired from the setting information file. If there are a plurality of “specific parts” at this time, another “specific part” that can uniquely identify the XML document is created in the setting information file, and the created “specific part” is acquired (S900). By this step S900, the attribute “id” of the element “person” is acquired from the setting information file of FIG.

続いて、ステップS900で取得した「特定部分」に対応するRDBテーブル名とカラム名を設定情報ファイルから取得する(S902)。このステップS902により、図21の設定情報ファイルからテーブル「ADDRBOOK」とカラム「ID」が取得される。  Subsequently, the RDB table name and column name corresponding to the “specific part” acquired in step S900 are acquired from the setting information file (S902). By this step S902, the table “ADDRBOOK” and the column “ID” are acquired from the setting information file of FIG.

続いて、上記「特定部分」の値(例えば、“AB12345”)と、上記取得したRDBテーブル名(テーブル「ADDRBOOK」)及びカラム名(「ID」)を基に、該当するレコードを抽出するようにSQL(SELECT文)を作成する(S904)。  Subsequently, the corresponding record is extracted based on the value of the “specific part” (for example, “AB12345”), the acquired RDB table name (table “ADDRBOOK”), and the column name (“ID”). SQL (SELECT statement) is created (S904).

続いて、ステップS904で作成したSQL文をRDBMSに発行し、RDB204から該当するレコードを取得する(S906)。このステップS906により、図27に示される「XML文書全体」、「AB12354」、「Mr.Foo」、及び「0000-712-3543」、からなるレコードが取得される。  Subsequently, the SQL statement created in step S904 is issued to the RDBMS, and the corresponding record is acquired from the RDB 204 (S906). Through this step S906, a record including “whole XML document”, “AB12354”, “Mr.Foo”, and “0000-712-3543” shown in FIG. 27 is acquired.

続いて、「XML文書全体」を格納するカラムの設定(RDBカラム名、圧縮/非圧縮の指定)を設定情報ファイルから取得する(S908)。このステップS908により、図21の設定情報ファイルからはカラム「COPY」及び「圧縮の指定」が取得される。  Subsequently, the setting of the column storing the “whole XML document” (RDB column name, designation of compression / non-compression) is acquired from the setting information file (S908). By this step S908, the columns “COPY” and “designation of compression” are acquired from the setting information file of FIG.

続いて、上記「XML文書全体」を格納するカラムの設定を基に、ステップS906で取得したレコードの中の「XML文書全体」を格納するカラムから「XML文書全体」を取り出す(S910)。このステップS910により、図27の「XML文書全体」75が取得される。  Subsequently, based on the setting of the column for storing the “whole XML document”, the “whole XML document” is extracted from the column for storing the “whole XML document” in the record acquired in step S906 (S910). Through this step S910, the “whole XML document” 75 in FIG. 27 is acquired.

続いて、「XML文書中の特定部分情報を静的に格納するための指示」(格納する「特定部分」の位置、RDBテーブル名、カラム名)を設定情報ファイルから取得する(S912)。  Subsequently, the “instruction for statically storing the specific part information in the XML document” (the position of the “specific part” to be stored, the RDB table name, the column name) is acquired from the setting information file (S912).

このステップS912により、図21の設定情報ファイルから属性“id”の位置とテーブル「ADDRBOOK」、カラム「ID」が取得される。
続いて、指定されたテーブル「ADDRBOOK」のカラム「ID」の内容を上記レコードの対応カラムから取り出し、上記「特定部分」の位置により特定される「XML文書全体」中の対応部分(属性“id”)の内容を上記対応カラム(カラム「ID」)から取り出した内容で上書きする(S914)。このステップS914により、上記レコードのカラム「ID」の値が書き換えられていれば「XML文書全体」75中の対応部分の内容をその買い替え後の値で更新できる。
By this step S912, the position of the attribute “id”, the table “ADDRBOOK”, and the column “ID” are acquired from the setting information file of FIG.
Subsequently, the contents of the column “ID” of the specified table “ADDRBOOK” are extracted from the corresponding column of the record, and the corresponding part (attribute “id” in the “whole XML document” specified by the position of the “specific part” is specified. ")" Is overwritten with the content extracted from the corresponding column (column "ID") (S914). By this step S914, if the value of the column “ID” of the record is rewritten, the content of the corresponding part in the “whole XML document” 75 can be updated with the value after the replacement.

ここで、XML文書の「特定部分情報」を格納する指示が他にあるか否か判定し(S916)、ある場合はステップS912から上記同様に処理を繰り返し、「XML文書全体」中の全ての特定部分の値を上書きする。また、ステップS916において格納指示が他に無いと判定された場合は続く処理に移行する。  Here, it is determined whether or not there is another instruction to store the “specific partial information” of the XML document (S916). If there is, there is repeated the same processing from step S912 as described above, and all of the “all XML documents” Overwrite the value of a specific part. If it is determined in step S916 that there is no other storage instruction, the process proceeds to the subsequent process.

続く処理では、「XML文書中の動的に変わる特定部分の内容を格納するための指示」(RDBテーブル名、カラム名)を設定情報ファイルから取得する(S918)。
このステップS918により、図21の設定情報ファイルからテーブル「ADDRBOOK」と「カラム1」が取得される。
In the subsequent processing, “an instruction to store the contents of the dynamically changing specific part in the XML document” (RDB table name, column name) is acquired from the setting information file (S918).
By this step S918, the tables “ADDRBOOK” and “Column 1” are acquired from the setting information file of FIG.

続いて、XMLノード−カラム動的マッピングテーブルから、当該テーブル「ADDRBOOK」、当該カラム「カラム1」、及びこれに対応する「特定部分」の位置の組み合わせを取得する(S920)。XMLノード−カラム動的マッピングテーブルの現在の設定が図26に示される設定である場合、「ADDRBOOK」、「カラム1」、及び「要素“name”の位置」が取得される。  Subsequently, a combination of positions of the table “ADDRBOOK”, the column “column 1”, and the “specific part” corresponding to the table “ADDRBOOK” is acquired from the XML node-column dynamic mapping table (S920). When the current setting of the XML node-column dynamic mapping table is the setting shown in FIG. 26, “ADDRBOOK”, “column 1”, and “position of element“ name ”” are acquired.

指定されたテーブル「ADDRBOOK」の「カラム1」の内容を上記レコードの対応カラムから取り出し、上記「特定部分」の位置により特定される「XML文書全体」中の対応部分(上記の場合、要素“name”)の内容を上記対応カラム(カラム1)から取り出した内容で上書きする(S922)。このステップS922により、上記レコードの「カラム1」の値が書き換えられていれば「XML文書全体」75中の対応部分の内容をその書き替え後の値で更新できる。  The content of “column 1” of the specified table “ADDRBOOK” is taken out from the corresponding column of the record, and the corresponding part in the “whole XML document” specified by the position of the “specific part” (in this case, the element “ The content of “name”) is overwritten with the content extracted from the corresponding column (column 1) (S922). In step S922, if the value of “column 1” of the record has been rewritten, the contents of the corresponding portion in “whole XML document” 75 can be updated with the rewritten value.

ここで、「XML文書中の動的に変わる特定部分の内容を格納するための指示」が他にあるか否か判定し(S924)、ある場合はステップS918から上記同様に処理を繰り返し、動的に変化する「特定部分」に対応する「XML文書全体」中の情報を全て上書きする。本例では、上記「カラム1」以外に「カラム2」、「カラム3」、「カラム4」、及び「カラム5」が動カラムに指定されているため、それらに対しても同様に処理が繰り返される。そして、ステップS924において格納指示が他に無いと判定された場合は本処理を終了する。  Here, it is determined whether or not there is another “instruction for storing the contents of the dynamically changing specific part in the XML document” (S924), and if there is, the process is repeated from step S918 in the same manner as described above. All the information in the “whole XML document” corresponding to the “specific part” that changes with time is overwritten. In this example, “column 2”, “column 3”, “column 4”, and “column 5” are designated as dynamic columns in addition to the above “column 1”, and the same processing is performed for these columns. Repeated. If it is determined in step S924 that there is no other storage instruction, this process is terminated.

続いて、RDB204に格納されたXML文書の「特定部分」を参照・更新した場合の、更新参照履歴管理部214に対する記録処理について説明する。
RDB204に格納されているXML文書の「特定部分」を参照・更新する場合、例えばXML文書を一意に特定できるキーにより該当レコードを特定し、上記「特定部分」のカラムに対する参照・更新処理を行なう。例えばレガシーシステムからこの処理を行なう場合、カラムアクセス監視部212を介して該当レコード中の「動カラム」または「固定カラム」に対する参照・更新処理が行なわれる。上記「特定部分」が「動カラム」及び「固定カラム」の何れにも対応しない場合には、「BLOBカラム」に格納された「XML文書全体」中の上記「特定部分」の値に対して参照・更新処理を行なう必要がある。この場合はノードアクセス監視部210を介して、該当レコード中の「BLOBカラム」に対して所望の「特定部分」の値が参照・更新される。
Next, a recording process for the update referencehistory management unit 214 when the “specific part” of the XML document stored in theRDB 204 is referred to / updated will be described.
When referring to / updating the “specific part” of the XML document stored in theRDB 204, for example, the corresponding record is specified by a key that can uniquely specify the XML document, and the reference / update process for the column of the “specific part” is performed. . For example, when this process is performed from a legacy system, a reference / update process for a “dynamic column” or “fixed column” in the corresponding record is performed via the columnaccess monitoring unit 212. If the “specific part” does not correspond to either “dynamic column” or “fixed column”, the value of the “specific part” in the “whole XML document” stored in the “BLOB column” It is necessary to perform reference / update processing. In this case, the desired “specific part” value is referred to / updated for the “BLOB column” in the corresponding record via the nodeaccess monitoring unit 210.

図29は、ノードアクセス監視部210(またはカラムアクセス監視部212)及び更新参照履歴管理部214における参照・更新記録の処理フローである。
先ず、ノードアクセス監視部210(またはカラムアクセス監視部212)において、RDB204に格納されたXML文書の「特定部分」の値に対する参照・更新を監視し(S1000)、参照・更新があったか否かを判定する(S1002)。ここで参照・更新が検出されなければ処理を繰り返し、参照・更新が検出されるとステップS1004に処理を移行する。
FIG. 29 is a processing flow of reference / update recording in the node access monitoring unit 210 (or column access monitoring unit 212) and the update referencehistory management unit 214.
First, the node access monitoring unit 210 (or the column access monitoring unit 212) monitors the reference / update for the value of the “specific part” of the XML document stored in the RDB 204 (S1000), and determines whether there is a reference / update. Determination is made (S1002). If the reference / update is not detected, the process is repeated. If the reference / update is detected, the process proceeds to step S1004.

ステップS1004においては、参照・更新を行なった「特定部分」が含まれる「XML文書全体」の位置(「XPath文字列」)または「固定カラム」や「動カラム」に対応する「特定部分」の「XPath文字列」と、その「特定部分」に対する「のべ更新・参照回数」を更新参照履歴管理部214に記録する(S1004)。  In step S1004, the position of the “whole XML document” (“XPath character string”) including the “specific part” that has been referred to or updated, or the “specific part” corresponding to the “fixed column” or “dynamic column” The “XPath character string” and the “total update / reference count” for the “specific part” are recorded in the update reference history management unit 214 (S1004).

そして最後に、更新・参照履歴の当該XPath文字列の「反映済みフラグ」を“未反映”にセットし(S1006)、ステップS1000の処理に戻る。
図30は、上記参照・更新記録の処理フローによって情報が記録された場合の、更新参照履歴管理部214のテーブルに対する格納例を、表形式で示したものである。
Finally, the “reflected flag” of the XPath character string in the update / reference history is set to “unreflected” (S1006), and the process returns to step S1000.
FIG. 30 shows an example of storage in the table of the update referencehistory management unit 214 in the form of a table when information is recorded by the reference / update recording process flow.

本例では、カラム「対象ノードのXPath」、カラム「のべ参照・更新回数」、及びカラム「反映済みフラグ」に対し、この順に“data/person/home/phone”、“25”、及び“未反映”が記録されている。これは、要素“data”の子要素“person”の子要素“home”の子要素“phone”の内容に対して参照・更新がのべ25回なされ、未反映であることを示している。  In this example, “data / person / home / phone”, “25”, and “data / person / home / phone” in this order are applied to the column “XPath of the target node”, the column “total reference / update count”, and the column “reflected flag”. “Not reflected” is recorded. This indicates that the content of the child element “phone” of the child element “home” of the child element “person” of the element “data” is referred to and updated a total of 25 times and has not been reflected.

図31は、動的格納部位の変更処理である。
先ず、XML文書を一意に特定する値を持つ「特定部分」(以下、文書キーのノードと呼ぶこととする)を設定情報ファイルから取得する(S1100)。なお、同名の「特定部分」が複数ある場合は設定情報ファイルに別名を設定し、この別名を文書キーのノードとする。
FIG. 31 shows a dynamic storage part change process.
First, a “specific part” (hereinafter referred to as a document key node) having a value for uniquely specifying an XML document is acquired from the setting information file (S1100). If there are a plurality of “specific parts” with the same name, an alias is set in the setting information file, and this alias is set as a document key node.

続いて、XML文書の繰り返し部分の一つを特定する値を持つ「特定部分」(以下、繰り返しキーのノードと呼ぶこととする)を、設定情報ファイルから取得する(S1102)。なお、同名の「特定部分」が複数ある場合は設定情報ファイルに別名を設定し、この別名を繰り返しキーのノードとする。  Subsequently, a “specific part” (hereinafter referred to as a repetition key node) having a value for specifying one of the repeated parts of the XML document is acquired from the setting information file (S1102). When there are a plurality of “specific parts” with the same name, an alias is set in the setting information file, and this alias is used as a key node repeatedly.

ここで、設定情報ファイルを見て、文書キーのノードを格納するRDBテーブルの名前を取得する。そして、それらのテーブルのうち、動的に変わる格納対象部位を格納する指示のあるテーブルの名前のリスト(以下、格納テーブルリストと呼ぶこととする)を作成する(S1104)。  Here, the name of the RDB table storing the document key node is obtained by looking at the setting information file. Then, among these tables, a list of table names (hereinafter referred to as storage table list) with an instruction to store dynamically changing storage target parts is created (S1104).

続いて、XMLノード−カラム動的マッピングテーブルの内容を全消去する(S1106)。
続いて、動的に変わる格納対象部位を格納するカラム(動カラム)の内容を消去する(S1108)。
Subsequently, all contents of the XML node-column dynamic mapping table are deleted (S1106).
Subsequently, the contents of the column (dynamic column) for storing the dynamically changing storage target part are deleted (S1108).

そして、参照・更新履歴テーブルに「未反映」の記録があるか否か判定される(S1110)。
この判定により「未反映」の記録があると判定されると、続く処理が実行される。
Then, it is determined whether there is a record of “unreflected” in the reference / update history table (S1110).
If it is determined by this determination that there is a record of “unreflected”, subsequent processing is executed.

先ず、「未反映」・のべ参照・更新回数が最も多い「特定部分」(以下、対象ノードと呼ぶこととする)を参照・更新履歴テーブルから選択する(S1112)。
続いて、設定情報ファイルを見て繰り返し現れる要素の位置を確認する(S1114)。
First, the “specific part” (hereinafter referred to as the target node) having the largest number of “unreflected” / total reference / update is selected from the reference / update history table (S1112).
Subsequently, the position of the element that repeatedly appears is confirmed by looking at the setting information file (S1114).

続いて、対象ノードは繰り返し現れる要素かその子かが判定される(S1116)。
NOの場合、格納テーブルリストのテーブルの動カラムのうち、XMLノード−カラム動的マッピングテーブルに載っていないカラムの有無をチェックする(S1118)。
Subsequently, it is determined whether the target node is an element that repeatedly appears or its child (S1116).
In the case of NO, it is checked whether or not there is a column not listed in the XML node-column dynamic mapping table among the dynamic columns in the table of the storage table list (S1118).

そして、続くステップS1120へ処理を移行する。
一方、ステップS1116でYESと判定された場合、格納テーブルリストに載っておりかつ繰り返しキーのノードを格納するテーブルの動カラムのうち、XMLノード−カラム動的マッピングテーブルに載っていないカラムの有無をチェックする(S1122)し、ステップS1120に処理を移行する。
Then, the process proceeds to subsequent step S1120.
On the other hand, if “YES” is determined in step S1116, the presence / absence of a column that is not included in the XML node-column dynamic mapping table among the dynamic columns of the table that is included in the storage table list and that stores the node of the repetitive key is determined. A check is made (S1122), and the process proceeds to step S1120.

ここで、XMLノード−カラム動的マッピングテーブルに載っていないカラムがあるか否かをチェックし(S1120)、ある場合はXMLノード−カラム動的マッピングテーブルに、選択したノードのXPathと当該カラム名・テーブル名を記録する(S1124)。  Here, it is checked whether or not there is a column not included in the XML node-column dynamic mapping table (S1120). If there is, the XPath of the selected node and the column name are stored in the XML node-column dynamic mapping table. Record the table name (S1124).

そして、選択したノードに対応する反映済みフラグを「反映済み」にセットし(S1126)、ステップS1110の判定処理に戻る。
なお、ステップS1120において判定がNOの場合は、ステップS1124の処理をとばしてステップS1126の処理を行ない、ステップS1110の判定処理に戻る。
Then, the reflected flag corresponding to the selected node is set to “reflected” (S1126), and the process returns to the determination process in step S1110.
If the determination is NO in step S1120, the process of step S1124 is skipped, the process of step S1126 is performed, and the process returns to the determination process of step S1110.

さて、ステップS1110で参照・更新履歴テーブルに未反映の記録がないと判定されると、続いて、設定情報ファイルからXML文書全体を格納するカラムの指示(RDBカラム名、圧縮/非圧縮の指定)を取得する(S1128)。  If it is determined in step S1110 that there is no unreflected record in the reference / update history table, the column information (RDB column name, compression / non-compression designation) for storing the entire XML document from the setting information file is subsequently continued. ) Is acquired (S1128).

ここで、動カラムに内容を未反映のXML文書があるか否か判定され(S1130)、「ある」という判定結果であれば、動カラムに内容未反映のXML文書をRDBから取得する(S1132)。  Here, it is determined whether or not there is an XML document whose contents are not reflected in the dynamic column (S1130). If the determination result is “Yes”, an XML document whose contents are not reflected in the dynamic column is acquired from the RDB (S1132). ).

そして、XMLノード−カラム動的マッピングテーブルに従って動的格納カラムに対象ノードの内容を格納し(S1134)、ステップS1130の判定処理に戻って同様に処理を繰り返す。  Then, the contents of the target node are stored in the dynamic storage column in accordance with the XML node-column dynamic mapping table (S1134), and the process returns to the determination process in step S1130 to repeat the same process.

一方、ステップS1130で「ない」という判定結果であれば、本処理を終了する。
さて、以上の各種処理は、同一の特定要素を繰り返し含むXML文書(図13)に対しても適用できる処理フローである。
On the other hand, if the determination result is “NO” in step S1130, this process ends.
The various processes described above are processing flows that can be applied to an XML document (FIG. 13) repeatedly including the same specific element.

以下に、同一特定要素を繰り返し含むXML文書に対して上記各種処理を施す場合の設定情報ファイルの例と、各種テーブルの構成例を示す。
図32は、同一の特定要素を繰り返し含むXML文書(図13)に対する設定情報ファイルの例である。
An example of a setting information file and a configuration example of various tables when performing the above-described various processes on an XML document that repeatedly includes the same specific element are shown below.
FIG. 32 is an example of a setting information file for an XML document (FIG. 13) that repeatedly includes the same specific element.

本例の設定情報ファイル320では、第一実施例の設定情報ファイル(図14)に対し、以下の点を変更する。
XML文書の木構造の頂点に位置する要素“data”の子要素“person”のそのまた子要素 “name”の内容をテーブル「ADDRBOOK」のカラム「NAME」の値に対応させる指定(図14の13行目)と、要素“person”の子要素 “home”のそのまた子要素“phone”の内容をテーブル「ADDRBOOK」のカラム「TEL_HOME」の値に対応させる指定(図14の15行目)を共に解除し、テーブル「ADDRBOOK」の「カラム1」から「カラム5」を、動的に変化する格納対象ノード(特定部分)の内容(特定部分情報)を格納するカラムとして指定する(図32の21行目から25行目)。
In the setting information file 320 of this example, the following points are changed with respect to the setting information file (FIG. 14) of the first embodiment.
A specification that associates the contents of the child element “name” of the child element “person” of the element “data” located at the apex of the tree structure of the XML document with the value of the column “NAME” of the table “ADDRBOOK” (FIG. 14). (Line 13) and the specification of the child element “phone” of the element “person” corresponding to the value of the column “TEL_HOME” of the table “ADDRBOOK” (line 15 in FIG. 14) Are both designated, and “column 1” to “column 5” of the table “ADDRBOOK” are designated as columns for storing the contents (specific portion information) of the dynamically changing storage target node (specific portion) (FIG. 32). From the 21st line to the 25th line).

図33は、上記設定情報ファイル(図32)に対応するように作成したXML内容格納テーブル(テーブル「DOCUMENT」及びテーブル「ADDRBOOK」)と、そこに格納される情報を表形式で示したものである。  FIG. 33 shows an XML content storage table (table “DOCUMENT” and table “ADDRBOOK”) created so as to correspond to the setting information file (FIG. 32) and information stored in the table format. is there.

同図には、XMLノード−カラム動的マッピングテーブルが図26に示される内容の時に格納処理された場合の例が示される。
図33に示されるように、図32の設定情報ファイルにおけるテーブル「DOCUMENT」に対する設定は第一実施例の設定情報ファイル(図14)の設定から変更がないため、図16に示されるテーブル「DOCUMENT」160と同一となる。
This figure shows an example in which the XML node-column dynamic mapping table is stored when the contents shown in FIG. 26 are stored.
As shown in FIG. 33, since the setting for the table “DOCUMENT” in the setting information file of FIG. 32 is not changed from the setting of the setting information file (FIG. 14) of the first embodiment, the table “DOCUMENT” shown in FIG. "160".

また、図33のテーブル「ADDRBOOK」330においては、図32の設定情報ファイルでカラム「DOCNO」及びカラム「ID」に対する設定の変更はないため、当該カラム「DOCNO」及びカラム「ID」は図16と同一となる。一方、設定情報ファイルの上記変更点により、「カラム1」332・・・「カラム5」334には現在、その順に、「要素“data”の子要素“person”の子要素“name”」・・・「要素“data”の子要素“person”の子要素“home”の子要素“phone”」が割り当てられている。  Also, in the table “ADDRBOOK” 330 of FIG. 33, there is no change in the settings for the columns “DOCNO” and “ID” in the setting information file of FIG. 32, so the columns “DOCNO” and column “ID” are not changed. Is the same as On the other hand, due to the above change in the setting information file, “column 1” 332... “Column 5” 334 is currently displayed in the order of “child element“ name ”of child element“ person ”of element“ data ””. .. The child element “phone” of the child element “home” of the child element “person” of the element “data” is assigned.

以上説明してきた各処理はプログラムの形態で配布することもできる。
その場合、フロッピー(登録商標)ディスク、CD−ROM、DVDなどの記録媒体に上記プログラムやファイルを記録させて配布したり、或いは、公衆網等で用いられる伝送媒体を介して、そのプログラムやファイルの一部、若しくは全部を配信するようにしたりすることができる。この場合、それを受け取ったユーザは、CD−ROM装置などの読み取り装置(入出力部の一部)を利用してフロッピー(登録商標)ディスクやCD−ROMやDVDなどの可搬型記録媒体から上記プログラムやファイルを外部記録部にコピーしたり、コンピュータの通信部を介してインターネットから上記プログラムやファイルを外部記録部にコピーしたりすることができる。そして、CPUで実行することにより、ユーザのコンピュータ上でも上述した機能を実現できる。
Each process described above can be distributed in the form of a program.
In that case, the program or file may be distributed by recording the program or file on a recording medium such as a floppy (registered trademark) disk, CD-ROM, or DVD, or via a transmission medium used in a public network or the like. It is possible to distribute a part or all of the information. In this case, the user who has received the information from the portable recording medium such as a floppy (registered trademark) disk, CD-ROM, or DVD uses a reading device (a part of the input / output unit) such as a CD-ROM device. The program or file can be copied to an external recording unit, or the program or file can be copied from the Internet to the external recording unit via a computer communication unit. Then, the above-described functions can be realized on the user's computer by being executed by the CPU.

以上のように本発明の実施の形態では、設定情報ファイルを設けているため、タグ付き構造化文書とRDBとの間のマッピング条件や検索キーを自由に設定変更できる。このため既存のRDBシステムと連携する場合においても、設定情報ファイルの設定内容を変更し、検索キーをRDBシステムに与える程度のことで容易に既存のRDBシステムにおいてタグ付き構造化文書の情報が扱えるようになる。  As described above, in the embodiment of the present invention, since the setting information file is provided, the mapping condition and search key between the tagged structured document and the RDB can be freely set and changed. For this reason, even when linking with an existing RDB system, it is possible to easily handle structured document information with a tag in the existing RDB system by changing the setting contents of the setting information file and giving a search key to the RDB system. It becomes like this.

また、本発明の実施の形態では、タグ付き構造化文書中に繰り返し現れる同一構造の部位を一意に特定できるようにRDBに格納させるため、当該部位の情報を検索したり、更新したりすることが可能になる。また、当該部位の情報をタグ付き構造化文書中の所定位置に戻すことも可能になる。  Further, in the embodiment of the present invention, in order to store in the RDB so that a part having the same structure repeatedly appearing in the structured document with tag can be uniquely specified, information on the part is searched or updated. Is possible. It is also possible to return the information of the part to a predetermined position in the tagged structured document.

また、本発明の実施の形態ではタグ付き構造化文書に含まれる部位の情報の利用頻度が高いもののみを所定期間毎にRDBで管理するため、利用頻度が少ない部位の情報をRDBで管理する必要がなくなり、RDBの記憶領域の有効利用ができる。  Further, in the embodiment of the present invention, only information that is frequently used in the part information included in the tagged structured document is managed by the RDB for each predetermined period. Therefore, the part information that is not frequently used is managed by the RDB. This eliminates the need for effective use of the RDB storage area.

(付記1)タグ付き構造化文書とRDBとの間のマッピング条件及び上記RDBに格納される上記タグ付き構造化文書を一意に特定するための文書特定キーとを設定情報ファイルに任意設定する機能と、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーとなる情報に対応付けて上記タグ付き構造化文書の全体を上記RDBの全体用カラムに格納し且つ上記タグ付き構造化文書の特定部位の情報を上記RDBの特定部位用カラムに格納する機能と、上記文書特定キーに基づいて、上記RDBの特定部位用カラムに格納される情報へアクセスする機能と、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーの所定情報に対応付けされた上記全体用カラムの情報及び上記特定部位用カラムの情報からタグ付き構造化文書を生成する機能と、をコンピュータに実行させるプログラム。  (Supplementary Note 1) A function for arbitrarily setting a mapping condition between a tagged structured document and an RDB and a document specifying key for uniquely specifying the tagged structured document stored in the RDB in a setting information file The latest setting information of the setting information file is read, the entire tagged structured document is stored in the entire column of the RDB in association with the information serving as the document specifying key, and the tagged structured document A function for storing the information on the specific part in the column for the specific part in the RDB, a function for accessing the information stored in the column for the specific part in the RDB based on the document specific key, and the latest of the setting information file The setting information is read, and the tagged structure is determined from the information for the whole column and the information for the specific part column that are associated with the predetermined information of the document specific key. Program to be executed and generating a document, to the computer.

(付記2) 同一の特定部位を二つ以上含むタグ付き構造化文書において、該タグ付き構造化文書中の各特定部位の位置を一意に特定する部位特定キーを上記設定情報ファイルに任意設定する機能と、上記タグ付き構造化文書中に同一の特定部位を二つ以上含む場合、上記同一の特定部位の情報を上記部位特定キーによって指定される情報に対応付けて上記特定部位用カラムに格納する機能と、上記特定部位用カラムに格納される上記同一の特定部位の情報の夫々に上記部位特定キーに基づいてアクセスする機能と、上記部位特定キーの情報から上記タグ付き構造化文書全体中の上記同一の特定部位の情報の位置を特定し、上記全体用カラムの情報及び上記特定部位用カラムの情報から、上記タグ付き構造化文書全体に上記同一の特定部位の情報が反映されたタグ付き構造化文書を生成する機能と、を更にコンピュータに実行させることを特徴とする付記1に記載のプログラム。  (Supplementary Note 2) In a structured document with a tag including two or more identical specific parts, a part specifying key for uniquely specifying the position of each specific part in the tagged structured document is arbitrarily set in the setting information file. When two or more same specific parts are included in the function and the tagged structured document, the information on the same specific part is stored in the specific part column in association with the information specified by the part specific key. A function for accessing the information on the same specific part stored in the specific part column based on the part specific key and the information on the part specific key in the entire structured document with tag. The position of the information of the same specific part is specified, and from the information of the column for the whole and the information of the column for the specific part, the whole of the tagged structured document has the position of the same specific part. Program ofstatement 1, characterized in that to execute a function of generating a broadcast is tagged structured document reflected in the further computer.

(付記3)上記特定部位用カラムは少なくとも動的部位用カラムを含み、上記タグ付き構造化文書に含まれる部位の中から動的に選択される部位の情報の格納先として上記動的部位用カラムの指定を上記設定情報ファイルに任意設定する機能と、上記全体用カラムに格納されるタグ付き構造化文書全体及び上記特定部位用カラムに格納される部位の情報を対象に、上記タグ付き構造化文書に含まれる部位の情報へのアクセス数を上記部位ごとに履歴管理する機能と、上記設定情報ファイルに指定された上記動的部位用カラムに対し、上記タグ付き構造化文書中の上記部位の位置を指定する指定パスにより、上記タグ付き構造化文書中の上記アクセス数の多い部位を上記動的に選択される部位として昇降順に対応付けする機能と、上記指定パスに基づいて上記タグ付き構造化文書中の上記動的に選択される部位を上記動的部位用カラムに格納する機能と、上記指定パスに基づいて上記タグ付き構造化文書全体中の上記動的に選択される部位の位置を特定し、上記全体用カラムの情報及び上記動的部位用カラムの情報から、上記動的に選択される部位の情報が上記タグ付き構造化文書全体に反映されたタグ付き構造化文書を生成する機能と、を更にコンピュータに実行させることを特徴とする付記1または2に記載のプログラム。  (Supplementary Note 3) The specific part column includes at least a dynamic part column, and is used for the dynamic part as a storage destination of information on a part that is dynamically selected from parts included in the tagged structured document. The above-mentioned tagged structure for the function of arbitrarily setting the column specification in the setting information file, the entire structured document with tag stored in the whole column, and the part information stored in the column for the specific part A function for managing the number of accesses to information on parts included in a structured document for each part, and the part in the tagged structured document for the dynamic part column specified in the setting information file A function for associating the part with a large number of accesses in the tagged structured document with the designated path that designates the position of the position as the dynamically selected part in ascending / descending order, and the designated path A function for storing the dynamically selected part in the tagged structured document based on the dynamic part column, and the dynamic in the whole tagged structured document based on the designated path. A tag in which the position of the selected part is identified, and the information on the dynamically selected part is reflected in the entire structured document with tag from the information on the whole column and the information on the dynamic part column The program according toappendix 1 or 2, further causing a computer to execute a function of generating a supplementary structured document.

(付記4) 上記マッピング条件には、上記タグ付き構造化文書の生成時に、上記特定部位用カラムに格納されている情報を上記全体用カラムに格納されているタグ付き構造化文書全体の対応個所に反映させるか否かの指定が含まれ、上記反映させる指定の場合、上記タグ付き構造化文書の生成時に、上記特定部位用カラムに格納されている情報を上記全体用カラムに格納されているタグ付き構造化文書全体の対応個所に反映させる機能と、をコンピュータに実行させることを特徴とする付記1乃至3の何れか一つに記載のプログラム。  (Supplementary Note 4) The mapping condition includes the corresponding location of the entire tagged structured document stored in the entire column when information stored in the specific part column is generated when the tagged structured document is generated. In the case of the above-mentioned designation, the information stored in the specific part column is stored in the whole column at the time of generating the tagged structured document. The program according to any one ofappendices 1 to 3, which causes a computer to execute a function to be reflected in corresponding portions of the entire structured document with tags.

(付記5)タグ付き構造化文書とRDBとの間のマッピング条件及び上記RDBに格納される上記タグ付き構造化文書を一意に特定するための文書特定キーとを設定情報ファイルに任意設定する機能と、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーとなる情報に対応付けて上記タグ付き構造化文書の全体を上記RDBの全体用カラムに格納し且つ上記タグ付き構造化文書の特定部位の情報を上記RDBの特定部位用カラムに格納する機能と、上記文書特定キーに基づいて、上記RDBの特定部位用カラムに格納される情報へアクセスする機能と、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーの所定情報に対応付けされた上記全体用カラムの情報及び上記特定部位用カラムの情報からタグ付き構造化文書を生成する機能と、をコンピュータに実現させるプログラムを記録したコンピュータ読み取り可能な記録媒体。  (Supplementary Note 5) A function for arbitrarily setting a mapping condition between a tagged structured document and an RDB and a document specifying key for uniquely specifying the tagged structured document stored in the RDB in a setting information file The latest setting information of the setting information file is read, the entire tagged structured document is stored in the entire column of the RDB in association with the information serving as the document specifying key, and the tagged structured document A function for storing the information on the specific part in the column for the specific part in the RDB, a function for accessing the information stored in the column for the specific part in the RDB based on the document specific key, and the latest of the setting information file The setting information is read, and the tagged structure is determined from the information for the whole column and the information for the specific part column that are associated with the predetermined information of the document specific key. A computer-readable recording medium a program for realizing a function of generating a document, to the computer.

(付記6) 同一の特定部位を二つ以上含むタグ付き構造化文書において、該タグ付き構造化文書中の各特定部位の位置を一意に特定する部位特定キーを上記設定情報ファイルに任意設定する機能と、上記タグ付き構造化文書中に同一の特定部位を二つ以上含む場合、上記同一の特定部位の情報を上記部位特定キーによって指定される情報に対応付けて上記特定部位用カラムに格納する機能と、上記特定部位用カラムに格納される上記同一の特定部位の情報の夫々に上記部位特定キーに基づいてアクセスする機能と、上記部位特定キーの情報から上記タグ付き構造化文書全体中の上記同一の特定部位の情報の位置を特定し、上記全体用カラムの情報及び上記特定部位用カラムの情報から、上記タグ付き構造化文書全体に上記同一の特定部位の情報が反映されたタグ付き構造化文書を生成する機能と、を更にコンピュータに実現させるプログラムを記録した付記5に記載のコンピュータ読み取り可能な記録媒体。  (Supplementary Note 6) In a structured document with a tag including two or more identical specific parts, a part specifying key for uniquely specifying the position of each specific part in the tagged structured document is arbitrarily set in the setting information file. When two or more same specific parts are included in the function and the tagged structured document, the information on the same specific part is stored in the specific part column in association with the information specified by the part specific key. A function for accessing the information on the same specific part stored in the specific part column based on the part specific key and the information on the part specific key in the entire structured document with tag. The position of the information of the same specific part is specified, and from the information of the column for the whole and the information of the column for the specific part, the whole of the tagged structured document has the position of the same specific part. A computer-readable recording medium according toNote 5 for recording a program for realizing a function of generating a tagged structured document distribution is reflected in a further computer.

(付記7)タグ付き構造化文書とRDBとの間のマッピング条件及び上記RDBに格納される上記タグ付き構造化文書を一意に特定するための文書特定キーとを設定情報ファイルに任意設定し、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーとなる情報に対応付けて上記タグ付き構造化文書の全体を上記RDBの全体用カラムに格納し且つ上記タグ付き構造化文書の特定部位の情報を上記RDBの特定部位用カラムに格納し、上記文書特定キーに基づいて、上記RDBの特定部位用カラムに格納される情報へアクセスし、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーの所定情報に対応付けされた上記全体用カラムの情報及び上記特定部位用カラムの情報からタグ付き構造化文書を生成する、ことを特徴とするタグ付き構造化文書格納方法。  (Appendix 7) A mapping condition between the tagged structured document and the RDB and a document specifying key for uniquely specifying the tagged structured document stored in the RDB are arbitrarily set in the setting information file, The latest setting information of the setting information file is read, the entire tagged structured document is stored in the entire column of the RDB in association with the information serving as the document specifying key, and the specified part of the tagged structured document is stored. Is stored in the specific part column of the RDB, the information stored in the specific part column of the RDB is accessed based on the document specifying key, the latest setting information in the setting information file is read, Generating a structured document with a tag from the information of the column for the whole corresponding to the predetermined information of the document specific key and the information of the column for the specific part Tagged structured document storage method characterized.

(付記8) 同一の特定部位を二つ以上含むタグ付き構造化文書において、該タグ付き構造化文書中の各特定部位の位置を一意に特定する部位特定キーを上記設定情報ファイルに任意設定し、上記タグ付き構造化文書中に同一の特定部位を二つ以上含む場合、上記同一の特定部位の情報を上記部位特定キーによって指定される情報に対応付けて上記特定部位用カラムに格納し、上記特定部位用カラムに格納される上記同一の特定部位の情報の夫々に上記部位特定キーに基づいてアクセスし、上記部位特定キーの情報から上記タグ付き構造化文書全体中の上記同一の特定部位の情報の位置を特定し、上記全体用カラムの情報及び上記特定部位用カラムの情報から、上記タグ付き構造化文書全体に上記同一の特定部位の情報が反映されたタグ付き構造化文書を生成する、ことを更に特徴とする付記7に記載のタグ付き構造化文書格納方法。  (Supplementary Note 8) In a structured document with a tag including two or more of the same specific part, a part specific key for uniquely specifying the position of each specific part in the structured document with a tag is arbitrarily set in the setting information file. In the case where two or more identical specific parts are included in the tagged structured document, the information on the same specific part is stored in the specific part column in association with the information specified by the part specific key, The information on the same specific part stored in the specific part column is accessed based on the part specific key, and the same specific part in the entire structured document with tag is obtained from the information on the part specific key. With the tag that reflects the information of the same specific part in the entire structured document with the tag from the information of the column for the whole part and the information of the column for the specific part. Generating a Zoka document, further tagged structured document storage method ofstatement 7, characterized in that.

(付記9)タグ付き構造化文書とRDBとの間のマッピング条件及び上記RDBに格納される上記タグ付き構造化文書を一意に特定するための文書特定キーとを設定情報ファイルに任意設定する機能と、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーとなる情報に対応付けて上記タグ付き構造化文書の全体を上記RDBの全体用カラムに格納し且つ上記タグ付き構造化文書の特定部位の情報を上記RDBの特定部位用カラムに格納する機能と、上記文書特定キーに基づいて、上記RDBの特定部位用カラムに格納される情報へアクセスする機能と、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーの所定情報に対応付けされた上記全体用カラムの情報及び上記特定部位用カラムの情報からタグ付き構造化文書を生成する機能と、を有することを特徴とするタグ付き構造化文書格納システム。  (Supplementary Note 9) A function for arbitrarily setting a mapping condition between a tagged structured document and an RDB and a document specifying key for uniquely specifying the tagged structured document stored in the RDB in a setting information file The latest setting information of the setting information file is read, the entire tagged structured document is stored in the entire column of the RDB in association with the information serving as the document specifying key, and the tagged structured document A function for storing the information on the specific part in the column for the specific part in the RDB, a function for accessing the information stored in the column for the specific part in the RDB based on the document specific key, and the latest of the setting information file The setting information is read, and the tagged structure is determined from the information for the whole column and the information for the specific part column that are associated with the predetermined information of the document specific key. Tagged structured document storage system characterized by having a function of generating a document.

(付記10) 同一の特定部位を二つ以上含むタグ付き構造化文書において、該タグ付き構造化文書中の各特定部位の位置を一意に特定する部位特定キーを上記設定情報ファイルに任意設定する機能と、上記タグ付き構造化文書中に同一の特定部位を二つ以上含む場合、上記同一の特定部位の情報を上記部位特定キーによって指定される情報に対応付けて上記特定部位用カラムに格納する機能と、上記特定部位用カラムに格納される上記同一の特定部位の情報の夫々に上記部位特定キーに基づいてアクセスする機能と、上記部位特定キーの情報から上記タグ付き構造化文書全体中の上記同一の特定部位の情報の位置を特定し、上記全体用カラムの情報及び上記特定部位用カラムの情報から、上記タグ付き構造化文書全体に上記同一の特定部位の情報が反映されたタグ付き構造化文書を生成する機能と、を更に有することを特徴とする付記9に記載のタグ付き構造化文書格納システム。  (Supplementary Note 10) In a structured document with a tag including two or more identical specific parts, a part specifying key for uniquely specifying the position of each specific part in the structured document with a tag is arbitrarily set in the setting information file. When two or more same specific parts are included in the function and the tagged structured document, the information on the same specific part is stored in the specific part column in association with the information specified by the part specific key. A function for accessing the information on the same specific part stored in the specific part column based on the part specific key and the information on the part specific key in the entire structured document with tag. The position of the information of the same specific part is specified, and the same specific part is added to the whole structured document with the tag from the information of the column for the whole and the information of the column for the specific part. Tagged structured document storage system according toNote 9, characterized in that information further has a function of generating a tagged structured document reflected, the.

本発明の実施形態におけるタグ付き構造化文書格納システムの原理図である。It is a principle figure of the structured document storage system with a tag in the embodiment of the present invention.第一実施例におけるXML文書格納システムの構成図である。It is a block diagram of the XML document storage system in a 1st Example.同一の特定要素を繰り返し含まないXML文書の記述例である。This is a description example of an XML document that does not repeatedly include the same specific element.同一の特定要素を繰り返し含まないXML文書に対する設定情報ファイル14の一つ目の例である。This is a first example of the settinginformation file 14 for an XML document that does not repeatedly include the same specific element.同一の特定要素を繰り返し含まないXML文書に対する設定情報ファイル14の二つ目の例である。It is the 2nd example of the settinginformation file 14 with respect to the XML document which does not repeatedly contain the same specific element.図3のXML文書をXML装置12からRDB13に格納する場合の処理フローである。It is a processing flow in the case of storing the XML document of FIG. 3 from theXML apparatus 12 to RDB13.図4の設定情報ファイルの設定に基づいて図3のXML文書が格納処理された時の、格納後のRDB13のテーブル例である。5 is a table example of the storedRDB 13 when the XML document of FIG. 3 is stored based on the setting of the setting information file of FIG.図5の設定情報ファイルの設定に基づいて図3のXML文書が格納処理された時の、格納後のRDB13のテーブル例である。6 is a table example of theRDB 13 after storage when the XML document of FIG. 3 is stored based on the setting of the setting information file of FIG.RDB13の「特定部分情報」を変更する際に行なわれる、当該XML装置12(またはレガシーシステム16)における処理フローである。This is a processing flow in the XML device 12 (or legacy system 16) performed when changing the “specific part information” of theRDB 13.図9の更新処理後のテーブル「ADDRBOOK」である。FIG. 10 is the table “ADDRBOOK” after the update process in FIG. 9.XML文書をRDB13から取り出す際の処理フローである。It is a processing flow at the time of taking out an XML document from RDB13.図10のRDBに格納されるXML文書を図11の処理フローにより取り出した場合の結果である。This is the result when the XML document stored in the RDB of FIG. 10 is extracted by the processing flow of FIG.同一の要素を繰り返し含むXML文書の記述例である。It is a description example of an XML document that repeatedly includes the same element.同一の要素を繰り返し含むXML文書130に対する設定情報ファイル14の例である。It is an example of the settinginformation file 14 for anXML document 130 that repeatedly includes the same elements.同一の特定要素を繰り返し含むXML文書130をRDB13に格納する場合の処理フローである。This is a processing flow when anXML document 130 repeatedly including the same specific element is stored in theRDB 13.図14の設定情報ファイルの設定に基づいて図13のXML文書が格納処理された時の、格納後のRDB13のテーブル例である15 is a table example of the storedRDB 13 when the XML document of FIG. 13 is stored based on the setting of the setting information file of FIG.「特定部分情報」を取得する際に行なわれる、当該XML装置(またはレガシーシステム)における処理フローである。It is a processing flow in the XML device (or legacy system) performed when acquiring “specific partial information”.「特定部分情報」を変更する際に行なわれる、当該XML装置(またはレガシーシステム)における処理フローである。It is a processing flow in the XML device (or legacy system) performed when changing “specific partial information”.反映処理フローの一例である。It is an example of a reflection process flow.第二実施例におけるXML文書格納システムの構成図である。It is a block diagram of the XML document storage system in a 2nd Example.同一の特定要素を繰り返し含まないXML文書(図3)に対する設定情報ファイルの例である。It is an example of a setting information file for an XML document (FIG. 3) that does not repeatedly include the same specific element.設定情報ファイル(図21)に対応するように作成したXML格納内容テーブル(テーブル「ADDRBOOK」)を表形式で示したものである。An XML storage content table (table “ADDRBOOK”) created so as to correspond to the setting information file (FIG. 21) is shown in a table format.本実施例において新たに作成したXMLノード−カラム動的マッピングテーブルを表形式で示したものである。The XML node-column dynamic mapping table newly created in the present embodiment is shown in a table format.更新参照履歴テーブルを表形式で示したものである。The update reference history table is shown in tabular form.設定情報ファイル206に基づいて、XML文書15をXML装置202からRDB204に格納する場合の処理フローである。This is a processing flow when theXML document 15 is stored in theRDB 204 from theXML device 202 based on the settinginformation file 206.XMLノード−カラム動的マッピングテーブルの設定例である。It is an example of a setting of an XML node-column dynamic mapping table.図21の設定情報ファイルの設定及び図26のXMLノード−カラム動的マッピングテーブルに基づいて図3のXML文書が格納処理された時の、格納後のXML内容格納テーブル204−1のテーブル例である。21 is a table example of the XML content storage table 204-1 after storage when the XML document of FIG. 3 is stored based on the setting information file setting of FIG. 21 and the XML node-column dynamic mapping table of FIG. is there.RDB204からXML文書を取り出す際の処理フローである。It is a processing flow when extracting an XML document from theRDB 204.ノードアクセス監視部210(またはカラムアクセス監視部212)及び更新参照履歴管理部214における参照・更新記録の処理フローである。6 is a reference / update record processing flow in a node access monitoring unit 210 (or column access monitoring unit 212) and an update referencehistory management unit 214.参照・更新記録の処理フローによって情報が記録された場合の、更新参照履歴管理部214のテーブルに対する格納例を、表形式で示したものである。A storage example for the table of the update referencehistory management unit 214 when information is recorded by the processing flow of reference / update recording is shown in a table format.動的格納部位の変更処理である。This is a dynamic storage part change process.同一の特定要素を繰り返し含むXML文書(図13)に対する設定情報ファイルの例である。It is an example of the setting information file with respect to the XML document (FIG. 13) repeatedly including the same specific element.設定情報ファイル(図32)に対応するように作成したXML内容格納テーブル(テーブル「DOCUMENT」及びテーブル「ADDRBOOK」)と、そこに格納される情報を表形式で示したものである。An XML content storage table (table “DOCUMENT” and table “ADDRBOOK”) created so as to correspond to the setting information file (FIG. 32) and information stored therein are shown in a table format.

符号の説明Explanation of symbols

1 タグ付き構造化文書格納システム
2 タグ付き構造化文書
3 DB
4 タグ付き構造化文書格納手段
5 設定手段
1 Tagged structureddocument storage system 2 Tagged structureddocument 3 DB
4 Tagged structured document storage means 5 Setting means

Claims (5)

Translated fromJapanese
タグ付き構造化文書とRDBとの間のマッピング条件及び前記RDBに格納される前記タグ付き構造化文書を一意に特定するための文書特定キーとを設定情報ファイルに任意設定する機能と、
前記設定情報ファイルの最新設定情報を読み取り、前記文書特定キーとなる情報に対応付けて前記タグ付き構造化文書の全体を前記RDBの全体用カラムに格納し且つ前記タグ付き構造化文書の特定部位の情報を前記RDBの特定部位用カラムに格納する機能と、
前記文書特定キーに基づいて、前記RDBの特定部位用カラムに格納される情報へアクセスする機能と、
前記設定情報ファイルの最新設定情報を読み取り、前記文書特定キーの所定情報に対応付けされた前記全体用カラムの情報及び前記特定部位用カラムの情報からタグ付き構造化文書を生成する機能と、
をコンピュータに実行させるプログラム。
A function for arbitrarily setting a mapping condition between the tagged structured document and the RDB and a document specifying key for uniquely specifying the tagged structured document stored in the RDB in a setting information file;
The latest setting information of the setting information file is read, the entire tagged structured document is stored in the entire column of the RDB in association with information serving as the document specifying key, and the specified part of the tagged structured document A function of storing the information in the specific part column of the RDB;
A function of accessing information stored in the specific part column of the RDB based on the document specific key;
A function of reading the latest setting information of the setting information file and generating a structured document with a tag from the information of the column for the whole and the information of the column for the specific part associated with the predetermined information of the document specifying key;
A program that causes a computer to execute.
同一の特定部位を二つ以上含むタグ付き構造化文書において、該タグ付き構造化文書中の各特定部位の位置を一意に特定する部位特定キーを前記設定情報ファイルに任意設定する機能と、
前記タグ付き構造化文書中に同一の特定部位を二つ以上含む場合、前記同一の特定部位の情報を前記部位特定キーによって指定される情報に対応付けて前記特定部位用カラムに格納する機能と、
前記特定部位用カラムに格納される前記同一の特定部位の情報の夫々に前記部位特定キーに基づいてアクセスする機能と、
前記部位特定キーの情報から前記タグ付き構造化文書全体中の前記同一の特定部位の情報の位置を特定し、前記全体用カラムの情報及び前記特定部位用カラムの情報から、前記タグ付き構造化文書全体に前記同一の特定部位の情報が反映されたタグ付き構造化文書を生成する機能と、
を更にコンピュータに実行させることを特徴とする請求項1に記載のプログラム。
In a structured document with a tag including two or more of the same specific part, a function for arbitrarily setting a part specifying key for uniquely specifying the position of each specific part in the tagged structured document in the setting information file;
A function of storing the same specific part information in the specific part column in association with information specified by the part specific key when the tagged structured document includes two or more of the same specific part; ,
A function of accessing each of the same specific part information stored in the specific part column based on the part specific key;
The position of the information of the same specific part in the whole structured document with tag is specified from the information of the part specific key, and the structured with tag is determined from the information of the column for the whole and the information of the column for the specific part. A function of generating a tagged structured document in which the information of the same specific part is reflected in the entire document;
The program according to claim 1, further causing a computer to execute.
タグ付き構造化文書とRDBとの間のマッピング条件及び前記RDBに格納される前記タグ付き構造化文書を一意に特定するための文書特定キーとを設定情報ファイルに任意設定する機能と、
前記設定情報ファイルの最新設定情報を読み取り、前記文書特定キーとなる情報に対応付けて前記タグ付き構造化文書の全体を前記RDBの全体用カラムに格納し且つ前記タグ付き構造化文書の特定部位の情報を前記RDBの特定部位用カラムに格納する機能と、
前記文書特定キーに基づいて、前記RDBの特定部位用カラムに格納される情報へアクセスする機能と、
前記設定情報ファイルの最新設定情報を読み取り、前記文書特定キーの所定情報に対応付けされた前記全体用カラムの情報及び前記特定部位用カラムの情報からタグ付き構造化文書を生成する機能と、
を有することを特徴とするタグ付き構造化文書格納システム。
A function for arbitrarily setting a mapping condition between the tagged structured document and the RDB and a document specifying key for uniquely specifying the tagged structured document stored in the RDB in a setting information file;
The latest setting information of the setting information file is read, the entire tagged structured document is stored in the entire column of the RDB in association with information serving as the document specifying key, and the specified part of the tagged structured document A function of storing the information in the specific part column of the RDB;
A function of accessing information stored in the specific part column of the RDB based on the document specific key;
A function of reading the latest setting information of the setting information file and generating a structured document with a tag from the information of the column for the whole and the information of the column for the specific part associated with the predetermined information of the document specifying key;
A structured document storage system with a tag, comprising:
同一の特定部位を二つ以上含むタグ付き構造化文書において、該タグ付き構造化文書中の各特定部位の位置を一意に特定する部位特定キーを前記設定情報ファイルに任意設定する機能と、
前記タグ付き構造化文書中に同一の特定部位を二つ以上含む場合、前記同一の特定部位の情報を前記部位特定キーによって指定される情報に対応付けて前記特定部位用カラムに格納する機能と、
前記特定部位用カラムに格納される前記同一の特定部位の情報の夫々に前記部位特定キーに基づいてアクセスする機能と、
前記部位特定キーの情報から前記タグ付き構造化文書全体中の前記同一の特定部位の情報の位置を特定し、前記全体用カラムの情報及び前記特定部位用カラムの情報から、前記タグ付き構造化文書全体に前記同一の特定部位の情報が反映されたタグ付き構造化文書を生成する機能と、
を更に有することを特徴とする請求項3に記載のタグ付き構造化文書格納システム。
In a structured document with a tag including two or more of the same specific part, a function for arbitrarily setting a part specifying key for uniquely specifying the position of each specific part in the tagged structured document in the setting information file;
A function of storing the same specific part information in the specific part column in association with information specified by the part specific key when the tagged structured document includes two or more of the same specific part; ,
A function of accessing each of the same specific part information stored in the specific part column based on the part specific key;
The position of the information of the same specific part in the whole structured document with tag is specified from the information of the part specific key, and the structured with tag is determined from the information of the column for the whole and the information of the column for the specific part. A function of generating a tagged structured document in which the information of the same specific part is reflected in the entire document;
The tagged structured document storage system according to claim 3, further comprising:
タグ付き構造化文書とRDBとの間のマッピング条件及び上記RDBに格納される上記タグ付き構造化文書を一意に特定するための文書特定キーとを設定情報ファイルに任意設定し、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーとなる情報に対応付けて上記タグ付き構造化文書の全体を上記RDBの全体用カラムに格納し且つ上記タグ付き構造化文書の特定部位の情報を上記RDBの特定部位用カラムに格納し、上記文書特定キーに基づいて、上記RDBの特定部位用カラムに格納される情報へアクセスし、上記設定情報ファイルの最新設定情報を読み取り、上記文書特定キーの所定情報に対応付けされた上記全体用カラムの情報及び上記特定部位用カラムの情報からタグ付き構造化文書を生成する、ことを特徴とするタグ付き構造化文書格納方法。A mapping condition between the tagged structured document and the RDB and a document specifying key for uniquely specifying the tagged structured document stored in the RDB are arbitrarily set in the setting information file, and the setting information file The latest setting information is read, the entire tagged structured document is stored in the entire column of the RDB in association with the information serving as the document specifying key, and the information on the specific part of the tagged structured document is stored in the column. Based on the document specifying key, the information stored in the RDB specific part column is accessed, and the information stored in the RDB specific part column is accessed, the latest setting information in the setting information file is read, and the document specifying key A structured document with a tag is generated from the information of the column for the whole corresponding to the predetermined information and the information of the column for the specific part. Tagged structured document storage method.
JP2004095931A2004-03-292004-03-29 Tagged structured document storage system, program thereof, and method thereofPendingJP2005284575A (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
JP2004095931AJP2005284575A (en)2004-03-292004-03-29 Tagged structured document storage system, program thereof, and method thereof

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
JP2004095931AJP2005284575A (en)2004-03-292004-03-29 Tagged structured document storage system, program thereof, and method thereof

Publications (1)

Publication NumberPublication Date
JP2005284575Atrue JP2005284575A (en)2005-10-13

Family

ID=35182901

Family Applications (1)

Application NumberTitlePriority DateFiling Date
JP2004095931APendingJP2005284575A (en)2004-03-292004-03-29 Tagged structured document storage system, program thereof, and method thereof

Country Status (1)

CountryLink
JP (1)JP2005284575A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
JP2011253323A (en)*2010-06-012011-12-15Nippon Telegr & Teleph Corp <Ntt>Xml database management system, method and program
JP2012032858A (en)*2010-07-282012-02-16Nippon Telegr & Teleph Corp <Ntt>Operation method of document search device and computer program for making computer execute the same
WO2012081131A1 (en)*2010-12-162012-06-21株式会社 東雲Key-value index store type database system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
JP2011253323A (en)*2010-06-012011-12-15Nippon Telegr & Teleph Corp <Ntt>Xml database management system, method and program
JP2012032858A (en)*2010-07-282012-02-16Nippon Telegr & Teleph Corp <Ntt>Operation method of document search device and computer program for making computer execute the same
WO2012081131A1 (en)*2010-12-162012-06-21株式会社 東雲Key-value index store type database system

Similar Documents

PublicationPublication DateTitle
USRE48030E1 (en)Computer-implemented system and method for tagged and rectangular data processing
US5909570A (en)Template mapping system for data translation
US20130254171A1 (en)Query-based searching using a virtual table
US20020116373A1 (en)Database management system, and query method and query execution program in the database management system
KR20070053083A (en) System and method for fragment-based serialization
CN101706801A (en)Method and system for managing memory database data
US7222125B2 (en)Data structure managing device, data structure managing system, data structure managing method, and recorded medium where data structure managing program is stored
JP2008090500A (en) Data structure conversion system, program and data structure
US7376658B1 (en)Managing cross-store relationships to data objects
US20250036625A1 (en)Late Materialization of Queried Data in Database Cache
US20040078355A1 (en)Information management system
AU2005225020B2 (en)Complex data access
KR20160117965A (en)Method and apparatus for generating NoSQL model
JP4562749B2 (en) Document compression storage method and apparatus
JP2005284575A (en) Tagged structured document storage system, program thereof, and method thereof
JP3980326B2 (en) Data management method and computer-readable recording medium
JP5083612B2 (en) Search device
CN119938765A (en) A method and device for processing business data based on relational data table
KR20070097660A (en) Multimedia File Management Method Using Escule in Mobile Communication Terminal
JP2003186670A (en) Automatic generation device, automatic generation method and automatic generation program for database access component
JP4090226B2 (en) Display method of stored procedure call relation diagram and database management system
JP2785966B2 (en) Foreign key dynamic resolution processing method
JP2639330B2 (en) Error system
JPH08161345A (en) Information retrieval method
KR100577516B1 (en) ISO9735 Standard Code Construction Method Supporting Electronic Document Structure

Legal Events

DateCodeTitleDescription
A621Written request for application examination

Free format text:JAPANESE INTERMEDIATE CODE: A621

Effective date:20051125

A131Notification of reasons for refusal

Free format text:JAPANESE INTERMEDIATE CODE: A131

Effective date:20081111

A521Written amendment

Free format text:JAPANESE INTERMEDIATE CODE: A523

Effective date:20081229

A02Decision of refusal

Free format text:JAPANESE INTERMEDIATE CODE: A02

Effective date:20091006


[8]ページ先頭

©2009-2025 Movatter.jp