説明

XMLデータ構造の復元システム、XMLデータ構造の復元方法、およびXMLデータ構造の復元プログラム

【課題】XMLデータにおける記述構造によらず、XMLデータとテキストまたはCSV形式データとの相互変換時におけるXMLデータ構造の正確な復元を可能とする。
【解決手段】XMLデータを格納するデータ取得部110と、開始タグを検索し終了タグが検知される階層Yまでタグの読取り処理を実行するタグ読取り部111と、読み取ったタグに対応させてタグ位置IDを採番し階層XからYに至る経路についてのタグ位置ID群を格納する位置情報格納部112と、階層XからYに至る経路についてタグ位置IDと階層データとが対応付けされたレコードを生成し格納するレコード生成部113と、レコードが含むタグ位置ID毎にXMLデータ構造における階層を生成し階層データを設定しXMLデータを復元する復元処理部114と、復元したXMLデータを所定端末に送信するか出力する出力処理部115とからXMLデータ構造の復元システム100を構成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、XMLデータ構造の復元システム、XMLデータ構造の復元方法、およびXMLデータ構造の復元プログラムに関し、具体的には、流通ビジネスメッセージ標準に準拠したXMLデータとテキストやCSV形式データとの相互変換における、XMLデータ構造の復元技術に関する。
【背景技術】
【0002】
企業間における商取引に関する各種データ(標準的書式に統一)をやりとりするEDI(Electronic Data Interchange)の仕組みが普及し始めている。この仕組みでは、商品の受発注や見積もり、決済、出入荷などに関わるデータを、あらかじめ定められた形式にしたがって電子化しネットワークを通じて取引企業の端末間で送受信する。こうした中で、流通ビジネスメッセージ標準に準拠したXMLファイルを用いてデータの送受信をする場合、取引相手等の端末から受信した流通ビジネスメッセージをテキスト又はCSV形式に変換する手段と、変換したテキスト又はCSV形式から、流通ビジネスメッセージ標準に準拠したXMLファイルの構造に再変換する手段とが提案されている。
【0003】
例えば、構造を持つデータを受け渡す遠隔メソッド呼出しの処理負荷の軽減とこのXMLパーシングを行うシステム構築での記憶容量の削減とができることを課題とした、データ転送プロトコルを用いたクライアントとサーバとの間のサービス連携システムにおいて、プログラミング言語の構造型データ及び基本型データを、送付先で逆変換可能な高々一段の階層を持つテキスト文書に作成するクライアント非再帰データ表現生成シリアライザと、前記クライアント非再帰データ表現生成シリアライザで作成された高々一段の階層を持つテキスト文書を解釈して、サーバアプリケーション起動に必要な情報を取り出すサーバ非再帰データ表現解釈パーサと、サーバアプリケーションを起動した戻り値である構造型データ及び基本型データを、高々一段の階層でかつクライアント側で逆変換可能なテキスト文書に作成するサーバ非再帰データ表現生成シリアライザと、高々一段の階層を持つテキスト文書を入力して、サーバアプリケーションからの戻り値である構造を持ったパラメータを作成するクライアント非再帰データ表現解釈パーサとを有することにより、クライアントアプリケーションとサーバアプリケーションとの連携を可能とすることを特徴とするサービス連携システム(特許文献1参照)などが提案されている。
【0004】
また、データ変換後のデータをより柔軟に利用することを可能にしたデータ変換処理装置、変換処理方法およびそのプログラムを提供することを課題とした、レガシーシステムが使用するレガシーデータとXMLデータとをデータ変換処理する際に、前記レガシーシステムが使用するフォーマットをXMLで定義したフォーマット定義XMLファイルを参照してデータ変換処理を行うデータ変換手段を具備することを特徴とするデータ変換処理装置(特許文献2参照)なども提案されている。
【特許文献1】特開2004−265164号公報
【特許文献2】特開2004−318420号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
ところで、流通ビジネスメッセージ標準で定義されているXMLスキーマには、各項目(タグ)が階層構造で定義されることとなっている。また、このスキーマにおける繰り返し記述は、同一階層で異なる内容のタグが繰返し記述される場合と、上位階層のタグから所定階層のタグまで繰返し記述する場合の2つの構造パターンがある。この2つの構造パターンのそれぞれにおいて繰り返し記述されたタグが前記2パターン間で同じである場合、このXMLデータをテキスト又はCSV形式に変換すると変換結果が同じになってしまう。つまり、前記どちらの構造パターンで記述されていたXMLデータなのかが不明となる。このため、この変換後のテキスト又はCSV形式のデータをXMLデータに逆変換するとしても、元のXMLデータと同一構造への復元が保障されない。
【0006】
そこで、本発明は上記課題を鑑みてなされたものであり、XMLデータにおける記述構造によらず、XMLデータとテキストまたはCSV形式データとの相互変換時におけるXMLデータ構造の正確な復元を可能とする技術の提供を目的とする。
【課題を解決するための手段】
【0007】
本発明のXMLデータ構造の復元システムは、XMLデータとテキストまたはCSV形式のデータとを相互変換するコンピュータシステムであって、ネットワーク上の所定端末よりXMLデータを受信し、記憶装置に格納するデータ取得部と、前記記憶装置よりXMLデータをメモリに読み出して、前記XMLデータにおける開始タグを検索し、開始タグが検索された階層Xから下位階層に向けて、終了タグが検知される階層Yまでタグの読取り処理を実行する、タグ読取り部と、前記階層Xから前記階層Yまでの各階層で読み取ったタグに対応させて、各タグを一意に特定するタグ位置IDを採番し、前記階層Xから階層Yに至る経路についてのタグ位置ID群をメモリに格納する位置情報格納部と、前記XMLデータの階層Xから階層Yまでの各階層で記述されている階層データをXMLデータから読取り、各階層のXMLデータを、前記メモリにおけるタグ位置ID群が含む各階層のタグ位置IDに対応付けし、前記階層Xから階層Yに至る経路についてタグ位置IDと階層データとが対応付けされたレコードを生成し、テキストまたはCSV形式のデータとして記憶装置に格納するレコード生成部と、ネットワーク上の所定端末または入力インターフェイスからXMLデータ構造の復元指示を受け付けるか、記憶装置にて予め設定されていたXMLデータ構造の復元時期の到来を検知したならば、前記記憶装置より前記レコードをメモリに読み出して、当該レコードが含むタグ位置ID毎にXMLデータ構造における階層を生成し、生成した各階層に対し、該当タグ位置IDに対応する階層データを前記レコードより抽出して設定し、開始タグが検索された前記階層Xから終了タグが検知された階層Yまでの各階層が階層データを含んだ構造をなすXMLデータを復元する復元処理部と、前記メモリにて復元したXMLデータを、ネットワーク上の所定端末に送信するか、出力インターフェイスに出力する、出力処理部と、を備えること。
【0008】
これによれば、所定の端末から受信した、例えば、流通ビジネスメッセージ標準準拠のXMLデータを、XMLデータ構造についても配慮しつつテキスト又はCSV形式に変換し保存することができる。そのため、たとえXMLデータ自体を紛失した場合でも、テキスト又はCSV形式に変換し保存してあるデータから、前記端末から受信した時のデータ構造を備えたXMLデータに復元する事が保障できる。したがって、XMLデータにおける記述構造によらず、XMLデータとテキストまたはCSV形式データとの相互変換時におけるXMLデータ構造の正確な復元が可能なる。
【0009】
また、前記XMLデータ構造の復元システムにおいて、前記タグ読取り部は、前記階層Yの終了タグの読取り処理を実行した後、当該階層Yを包含する上位の階層Aにおいて、前記階層Yのものとは別の開始タグを検索し、この開始タグが検索された階層Aから下位階層に向けて、前記階層Yのものとは別の終了タグが検知される階層Bまでタグの読取り処理を実行するものであり、前記位置情報格納部は、前記階層Aから前記階層Bまでの各階層で読み取ったタグに対応させて、各タグを一意に特定するタグ位置IDを採番し、既にタグ位置IDを採番済みの前記所定階層Xから前記階層Aの経路についてのタグ位置ID群に、前記階層Aから階層Bに至る経路について採番したタグ位置ID群をマージし、階層X〜A〜Bの経路についてのタグ位置ID群としてメモリに格納するものであり、前記レコード生成部は、前記XMLデータの階層X〜A〜Bの各階層で記述されている階層データをXMLデータから読取り、各階層のXMLデータを、前記メモリにおけるタグ位置ID群が含む各階層のタグ位置IDに対応付けし、前記階層X〜A〜Bに至る経路についてタグ位置IDと階層データとが対応付けされたレコードを生成し、テキストまたはCSV形式のデータとして記憶装置に格納するものであり、前記復元処理部は、前記記憶装置より前記レコードをメモリに読み出して、当該レコードが含むタグ位置IDのうち、前記階層Aから階層BまでのものについてXMLデータ構造における階層を生成し、生成した階層Aから階層Bまでの各階層に対し、該当タグ位置IDに対応する階層データを前記レコードより抽出して設定し、前記階層Aから階層Bまでの各階層が階層データを含んだ構造をなすXMLデータを復元し、このXMLデータを、既に復元済みの前記階層Xから階層YまでのXMLデータに追記し、前記階層X〜A〜Bの各階層が階層データを含んだ構造をなすXMLデータを復元するものである、としてもよい。
【0010】
これによれば、XMLデータの階層構造が多重化している状況にも対応して、タグ位置の把握および記憶を可能とし、XMLデータのテキストまたはCSV形式への変換と、テキストまたはCSV形式のデータからのXMLデータへの復元が、XMLデータ構造に沿って正確に実行できる。
【0011】
また、前記XMLデータ構造の復元システムにおいて、前記XMLデータは、流通ビジネスメッセージ標準に準拠したデータのうち、出荷梱包についてのデータであるとしてもよい。
【0012】
これによれば、XMLデータとして現在広く取り扱われている流通ビジネスメッセージ標準準拠の出荷梱包データについて、一度テキストまたはCSV形式へ変換したデータからの正確なXMLデータ構造の復元が困難といった問題点を解消することが可能となる。
【0013】
また、本発明のXMLデータ構造の復元方法は、XMLデータとテキストまたはCSV形式のデータとを相互変換するコンピュータが、ネットワーク上の所定端末よりXMLデータを受信し、記憶装置に格納する処理と、前記記憶装置よりXMLデータをメモリに読み出して、前記XMLデータにおける開始タグを検索し、開始タグが検索された階層Xから下位階層に向けて、終了タグが検知される階層Yまでタグの読取り処理を実行する処理と、前記階層Xから前記階層Yまでの各階層で読み取ったタグに対応させて、各タグを一意に特定するタグ位置IDを採番し、前記階層Xから階層Yに至る経路についてのタグ位置ID群をメモリに格納する処理と、前記XMLデータの階層Xから階層Yまでの各階層で記述されている階層データをXMLデータから読取り、各階層のXMLデータを、前記メモリにおけるタグ位置ID群が含む各階層のタグ位置IDに対応付けし、前記階層Xから階層Yに至る経路についてタグ位置IDと階層データとが対応付けされたレコードを生成し、テキストまたはCSV形式のデータとして記憶装置に格納する処理と、ネットワーク上の所定端末または入力インターフェイスからXMLデータ構造の復元指示を受け付けるか、記憶装置にて予め設定されていたXMLデータ構造の復元時期の到来を検知したならば、前記記憶装置より前記レコードをメモリに読み出して、当該レコードが含むタグ位置ID毎にXMLデータ構造における階層を生成し、生成した各階層に対し、該当タグ位置IDに対応する階層データを前記レコードより抽出して設定し、開始タグが検索された前記階層Xから終了タグが検知された階層Yまでの各階層が階層データを含んだ構造をなすXMLデータを復元する処理と、前記メモリにて復元したXMLデータを、ネットワーク上の所定端末に送信するか、出力インターフェイスに出力する処理と、を実行することを特徴とする。
【0014】
これによれば、所定の端末から受信した、例えば、流通ビジネスメッセージ標準準拠のXMLデータを、XMLデータ構造についても配慮しつつテキスト又はCSV形式に変換し保存することができる。そのため、たとえXMLデータ自体を紛失した場合でも、テキスト又はCSV形式に変換し保存してあるデータから、前記端末から受信した時のデータ構造を備えたXMLデータに復元する事が保障できる。したがって、XMLデータにおける記述構造によらず、XMLデータとテキストまたはCSV形式データとの相互変換時におけるXMLデータ構造の正確な復元が可能なる。
【0015】
また、本発明のXMLデータ構造の復元プログラムは、XMLデータとテキストまたはCSV形式のデータとを相互変換するコンピュータに、ネットワーク上の所定端末よりXMLデータを受信し、記憶装置に格納するステップと、前記記憶装置よりXMLデータをメモリに読み出して、前記XMLデータにおける開始タグを検索し、開始タグが検索された階層Xから下位階層に向けて、終了タグが検知される階層Yまでタグの読取り処理を実行するステップと、前記階層Xから前記階層Yまでの各階層で読み取ったタグに対応させて、各タグを一意に特定するタグ位置IDを採番し、前記階層Xから階層Yに至る経路についてのタグ位置ID群をメモリに格納するステップと、前記XMLデータの階層Xから階層Yまでの各階層で記述されている階層データをXMLデータから読取り、各階層のXMLデータを、前記メモリにおけるタグ位置ID群が含む各階層のタグ位置IDに対応付けし、前記階層Xから階層Yに至る経路についてタグ位置IDと階層データとが対応付けされたレコードを生成し、テキストまたはCSV形式のデータとして記憶装置に格納するステップと、ネットワーク上の所定端末または入力インターフェイスからXMLデータ構造の復元指示を受け付けるか、記憶装置にて予め設定されていたXMLデータ構造の復元時期の到来を検知したならば、前記記憶装置より前記レコードをメモリに読み出して、当該レコードが含むタグ位置ID毎にXMLデータ構造における階層を生成し、生成した各階層に対し、該当タグ位置IDに対応する階層データを前記レコードより抽出して設定し、開始タグが検索された前記階層Xから終了タグが検知された階層Yまでの各階層が階層データを含んだ構造をなすXMLデータを復元するステップと、前記メモリにて復元したXMLデータを、ネットワーク上の所定端末に送信するか、出力インターフェイスに出力するステップと、を実行させるプログラムである。
【0016】
これによれば、所定の端末から受信した、例えば、流通ビジネスメッセージ標準準拠のXMLデータを、XMLデータ構造についても配慮しつつテキスト又はCSV形式に変換し保存することができる。そのため、たとえXMLデータ自体を紛失した場合でも、テキスト又はCSV形式に変換し保存してあるデータから、前記端末から受信した時のデータ構造を備えたXMLデータに復元する事が保障できる。したがって、XMLデータにおける記述構造によらず、XMLデータとテキストまたはCSV形式データとの相互変換時におけるXMLデータ構造の正確な復元が可能なる。
【0017】
その他、本願が開示する課題、及びその解決方法は、発明の実施の形態の欄、及び図面により明らかにされる。
【発明の効果】
【0018】
本発明によれば、XMLデータにおける記述構造によらず、XMLデータとテキストまたはCSV形式データとの相互変換時におけるXMLデータ構造の正確な復元が可能となる。
【発明を実施するための最良の形態】
【0019】
−−−システム構成−−−
以下に本発明の実施形態について図面を用いて詳細に説明する。図1は本実施形態におけるXMLデータ構造の復元システム100の構成図である。本実施形態におけるXMLデータ構造の復元システム100(以下、システム100)は、XMLデータとテキストまたはCSV形式のデータとを相互変換するコンピュータシステムであり、例えば、流通ビジネスメッセージ標準に準拠したXMLデータのやりとりを行う、企業のサーバ装置を想定できる。こうしたサーバ装置は、商取引に関する各種データ、例えば、商品の受発注や見積もり、決済、出入荷などに関わるデータを、あらかじめ定められた形式にしたがって電子化しネットワークを通じて他社の備える他社端末200との間で送受信するものとなる。
【0020】
流通ビジネスメッセージ標準に準拠したXMLデータを送受信するには、企業間での相対関係が前提となる。そこで本実施形態では、取引で相対する企業を他社と自社とに分けて示している。例えば、自社においては、本発明のXMLデータ構造の復元システムを実現する送受信サーバ100の他に、従来から商取引に関するデータ処理を制御していた基幹サーバ11、担当者からの指示を受け付けて前記送受信サーバに入力する運用端末12などが含まれると想定できる。また例えば、他社が備える他社端末200には、送受信サーバ20(機能として前記送受信サーバ100と同様)、従来から商取引に関するデータ処理を制御していた基幹システム21などが含まれると想定できる。なお、こうした構成例は具体的な装置構成をイメージした一例であり、以下の説明では、相対する企業からXMLデータを受信し、このXMLデータとてテキストまたはCSV形式のデータとを相互変換する装置をシステム100とし、このシステム100がテキストまたはCSV形式のデータから逆変換して生成したXMLデータを送信する先が他社端末200とする。
【0021】
勿論、流通ビジネスメッセージ標準準拠のXMLデータは他社端末200からシステム100側(前記他社に対して自社のもの)に送られるだけでなく、システム100から他社端末200に送られる訳であるから、システム100としての機能を前記他社端末200が備えて、自社のシステム100と他社の他社端末200とで相互にXMLデータの送受信と本発明のXMLデータ構造の復元方法を実行するとしてもよい。
【0022】
前記システム100は、XMLデータ構造の復元方法を実行する機能を実現すべく不揮発性メモリなどの記憶装置101に格納されたプログラム102をメモリ103に読み出し、演算装置たるCPU104により実行する。また、前記システム100は、コンピュータ装置が一般に備えている各種ボタン類、キーボードなどの入力インターフェイス105や、LEDやディスプレイなどの出力インターフェイス106、ならびに他社の端末との通信を担う通信装置107などを有している。
【0023】
続いて、前記システム100が例えばプログラム102に基づき構成・保持する機能部につき説明を行う。前記システム100は、ネットワーク140上の所定端末たる他社端末200よりXMLデータを受信し、記憶装置101に格納するデータ取得部110を備える。
【0024】
また、前記システム100は、前記記憶装置101よりXMLデータをメモリ103に読み出して、前記XMLデータにおける開始タグを検索し、開始タグが検索された階層Xから下位階層に向けて、終了タグが検知される階層Yまでタグの読取り処理を実行する、タグ読取り部111を備える。
【0025】
また、前記システム100は、前記階層Xから前記階層Yまでの各階層で読み取ったタグに対応させて、各タグを一意に特定するタグ位置IDを採番し、前記階層Xから階層Yに至る経路についてのタグ位置ID群をメモリ103に格納する位置情報格納部112を備える。
【0026】
また、前記システム100は、前記XMLデータの階層Xから階層Yまでの各階層で記述されている階層データをXMLデータから読取り、各階層のXMLデータを、前記メモリ103におけるタグ位置ID群が含む各階層のタグ位置IDに対応付けし、前記階層Xから階層Yに至る経路についてタグ位置IDと階層データとが対応付けされたレコードを生成し、テキストまたはCSV形式のデータとして記憶装置101に格納するレコード生成部113を備える。
【0027】
また、前記システム100は、ネットワーク140上の所定端末200または入力インターフェイス105からXMLデータ構造の復元指示を受け付けるか、記憶装置101にて予め設定されていたXMLデータ構造の復元時期の到来を検知したならば、前記記憶装置101より前記レコードをメモリ103に読み出して、当該レコードが含むタグ位置ID毎にXMLデータ構造における階層を生成し、生成した各階層に対し、該当タグ位置IDに対応する階層データを前記レコードより抽出して設定し、開始タグが検索された前記階層Xから終了タグが検知された階層Yまでの各階層が階層データを含んだ構造をなすXMLデータを復元する復元処理部114を備える。
【0028】
また、前記システム100は、前記メモリ103にて復元したXMLデータを、ネットワーク140上の所定端末200に送信するか、出力インターフェイス106に出力する、出力処理部115を備える。
【0029】
なお、前記タグ読取り部111は、前記階層Yの終了タグの読取り処理を実行した後、当該階層Yを包含する上位の階層Aにおいて、前記階層Yのものとは別の開始タグを検索し、この開始タグが検索された階層Aから下位階層に向けて、前記階層Yのものとは別の終了タグが検知される階層Bまでタグの読取り処理を実行するものである、としてもよい。この場合、前記位置情報格納部112は、前記階層Aから前記階層Bまでの各階層で読み取ったタグに対応させて、各タグを一意に特定するタグ位置IDを採番し、既にタグ位置IDを採番済みの前記所定階層Xから前記階層Aの経路についてのタグ位置ID群に、前記階層Aから階層Bに至る経路について採番したタグ位置ID群をマージし、階層X〜A〜Bの経路についてのタグ位置ID群としてメモリ103に格納するものとなる。また、前記レコード生成部113は、前記XMLデータの階層X〜A〜Bの各階層で記述されている階層データをXMLデータから読取り、各階層のXMLデータを、前記メモリ103におけるタグ位置ID群が含む各階層のタグ位置IDに対応付けし、前記階層X〜A〜Bに至る経路についてタグ位置IDと階層データとが対応付けされたレコードを生成し、テキストまたはCSV形式のデータとして記憶装置101に格納するものとなる。また、前記復元処理部114は、前記記憶装置101より前記レコードをメモリ103に読み出して、当該レコードが含むタグ位置IDのうち、前記階層Aから階層BまでのものについてXMLデータ構造における階層を生成し、生成した階層Aから階層Bまでの各階層に対し、該当タグ位置IDに対応する階層データを前記レコードより抽出して設定し、前記階層Aから階層Bまでの各階層が階層データを含んだ構造をなすXMLデータを復元し、このXMLデータを、既に復元済みの前記階層Xから階層YまでのXMLデータに追記し、前記階層X〜A〜Bの各階層が階層データを含んだ構造をなすXMLデータを復元するものとなる。
【0030】
また、前記システム100において、前記XMLデータは、流通ビジネスメッセージ標準に準拠したデータのうち、出荷梱包についてのデータであるとしてもよい。
【0031】
なお、これまで示した前記システム100における各機能部110〜115は、ハードウェアとして実現してもよいし、メモリやHDD(Hard Disk Drive)などの適宜な記憶装置に格納したプログラムとして実現するとしてもよい。この場合、システム100のCPUがプログラム実行に合わせて記憶装置より該当プログラムをメモリに読み出して、これを実行することとなる。
【0032】
−−−全体フロー例1−−−
以下、本実施形態におけるXMLデータ構造の復元方法の実際手順について、図に基づき説明する。なお、以下で説明するXMLデータ構造の復元方法に対応する各種動作は、前記システム100がメモリに読み出して実行するプログラムによって実現される。そしてこのプログラムは、以下に説明される各種の動作を行うためのコードから構成されている。
【0033】
図2は、本実施形態の全体シーケンス例1である。ここで、前記システム100のデータ取得部110は、ネットワーク140上の他社端末200よりXMLデータを受信し、記憶装置101に格納する(s100)。
【0034】
また、前記システム100のタグ読取り部111は、前記記憶装置101よりXMLデータをメモリ103に読み出して、前記XMLデータにおける開始タグを検索し、開始タグが検索された階層Xから下位階層に向けて、終了タグが検知される階層Yまでタグの読取り処理を実行する(s101)。
【0035】
次に、前記システム100の位置情報格納部112は、前記階層Xから前記階層Yまでの各階層で読み取ったタグに対応させて、各タグを一意に特定するタグ位置IDを採番し、前記階層Xから階層Yに至る経路についてのタグ位置ID群をメモリ103に格納する(s102)。
【0036】
また、前記システム100のレコード生成部113は、前記XMLデータの階層Xから階層Yまでの各階層で記述されている階層データをXMLデータから読取り、各階層のXMLデータを、前記メモリ103におけるタグ位置ID群が含む各階層のタグ位置IDに対応付けし、前記階層Xから階層Yに至る経路についてタグ位置IDと階層データとが対応付けされたレコードを生成し、テキストまたはCSV形式のデータとして記憶装置101に格納する(s103)。
【0037】
また、その後、前記システム100の復元処理部114は、ネットワーク140上の他社端末200または入力インターフェイス105からXMLデータ構造の復元指示を受け付けるか、記憶装置101にて予め設定されていたXMLデータ構造の復元時期の到来を検知したならば、前記記憶装置101より前記レコードをメモリ103に読み出して、当該レコードが含むタグ位置ID毎にXMLデータ構造における階層を生成し、生成した各階層に対し、該当タグ位置IDに対応する階層データを前記レコードより抽出して設定し、開始タグが検索された前記階層Xから終了タグが検知された階層Yまでの各階層が階層データを含んだ構造をなすXMLデータを復元する(s104)。
【0038】
また、前記システム100の出力処理部115は、前記メモリ103にて復元したXMLデータを、ネットワーク140上の他社端末200に送信するか、出力インターフェイス106に出力する(s105)。
【0039】
−−−全体フロー例2−−−
図3は、本実施形態の全体シーケンス例2である。次に、前記タグ読取り部111が、前記階層Yの終了タグの読取り処理を実行した後、当該階層Yを包含する上位の階層Aにおいて、前記階層Yのものとは別の開始タグを検索した場合の処理について説明する。この場合、前記タグ読取り部111は、前記階層Yの終了タグの読取り処理を実行した後、当該階層Yを包含する上位の階層Aにおいて、前記階層Yのものとは別の開始タグを検索し、この開始タグが検索された階層Aから下位階層に向けて、前記階層Yのものとは別の終了タグが検知される階層Bまでタグの読取り処理を実行する(s200)。
【0040】
また前記位置情報格納部112は、前記階層Aから前記階層Bまでの各階層で読み取ったタグに対応させて、各タグを一意に特定するタグ位置IDを採番し、既にタグ位置IDを採番済みの前記所定階層Xから前記階層Aの経路についてのタグ位置ID群に、前記階層Aから階層Bに至る経路について採番したタグ位置ID群をマージし、階層X〜A〜Bの経路についてのタグ位置ID群としてメモリ103に格納する(s201)。
【0041】
次に、前記レコード生成部113は、前記XMLデータの階層X〜A〜Bの各階層で記述されている階層データをXMLデータから読取り、各階層のXMLデータを、前記メモリ103におけるタグ位置ID群が含む各階層のタグ位置IDに対応付けし、前記階層X〜A〜Bに至る経路についてタグ位置IDと階層データとが対応付けされたレコードを生成し、テキストまたはCSV形式のデータとして記憶装置101に格納する(s202)。 またその後、前記復元処理部114は、前記記憶装置101より前記レコードをメモリ103に読み出して、当該レコードが含むタグ位置IDのうち、前記階層Aから階層BまでのものについてXMLデータ構造における階層を生成し、生成した階層Aから階層Bまでの各階層に対し、該当タグ位置IDに対応する階層データを前記レコードより抽出して設定し、前記階層Aから階層Bまでの各階層が階層データを含んだ構造をなすXMLデータを復元し、このXMLデータを、既に復元済みの前記階層Xから階層YまでのXMLデータに追記し、前記階層X〜A〜Bの各階層が階層データを含んだ構造をなすXMLデータを復元する(s203)。
【0042】
−−−XMLデータおよびテキストまたはCSV形式データの構造例−−−
次に、XMLデータおよびXMLデータを変換したテキストまたはCSV形式データのの構造例について説明する。図4は流通ビジネスメッセージ標準で定義されているXMLデータの構造例を示している。この例のXMLデータ40は、発注、受領、返品、支払、請求、出荷伝票、出荷梱包といったデータ種の内、出荷梱包のXMLデータ構造を示す。本XMLデータ構造は、最上位階層(階層1)をSBDH(Standard Business Document Header)として定義しており、そのSBDH内に内包される形で出荷梱包ファイルヘッダ(ListOfPackageShipments:階層2)を定義している。同様に、前記階層2に内包されているのが出荷梱包発注元情報(PackageShipmentByReciever:階層3)となり、出荷梱包情報(PackageInfo:階層4)および出荷梱包明細情報(ItemInfo:階層5)もそれぞれ1段階上位の階層に内包されている。
【0043】
また図5に、本実施形態におけるテキストまたはCSVファイルの構造例を示している。ここで示すテキストまたはCSVファイル50は、本発明のXMLデータ構造の復元方法によりXMLデータ40を変換して生成したものであり、XMLデータ構造中におけるタグ位置情報たるタグ位置IDを取入れたテキストまたはCSVファイルの構造体(出荷梱包)となっている。このCSVファイル50の構造は、図4において階層的に表したXMLデータ40の構造を2次元の表形式で表しており、XMLデータ40の各階層毎にタグ位置IDを取入れた構造となる。
【0044】
−−−変換処理例1−−−
次に、XMLデータからのテキストまたはCSV形式データへの変換処理について詳細を説明する。図6は、本実施形態のXMLデータ構造の復元方法の処理手順例1を示すフローチャートである。まずこの説明での前提として、他社端末200がネットワーク140経由で送信した流通ビジネスメッセージ標準準拠のXMLデータを、システム100のデータ取得部110が受信し、記憶装置101等に格納する(s300)。
【0045】
次に、前記システム100のタグ読取り部111は、記憶装置101に格納したXMLデータが、例えば、メッセージ種情報208(図4参照)のエリアに引数を含むか判定する(s301)。
【0046】
前記タグ読取り部111は、前記判定処理にて引数がXMLデータ中に存在すると判明した場合は(s301:Yes)、メモリ103上に該当引数を待避する(s302)。他方、記判定処理にて引数がXMLデータに存在しないと判明した場合は(s301:No)、本フローを終了する。
【0047】
前記ステップs302に続いて前記タグ読取り部111は、前記ステップs302でメモリ103上に待避した引数と、記憶装置101にて予め備えている引数一覧で定義している引数とが一致するか判定する(s303)。引数一覧としては、発注:order、受領:RecievingNotification、・・・全て:ALL、などが想定できる。一例として、XMLデータとテキストまたはCSV形式データとの相互変換時に、XMLデータ構造の復元が従来は困難であった「出荷梱包」に関する引数のみを前記引数一覧に定義しておき、この出荷梱包に関するXMLデータの存在をシステム100が検知することを想定する。
【0048】
前記タグ読取り部111は、前記ステップs303でメモリ103上に待避した引数と前記引数一覧で設定された引数とが一致した場合(s303:Yes)、該当XMLデータに関して図4の例で示した最上位階層(SBDH)から下位の階層に向けて順次開始タグを検索し、開始タグが検索された階層X(図4の場合だと階層1)から下位階層に向けて、終了タグが検知される階層Y(図4の場合だと階層5)までタグの読取り処理を実行する(s304)。なお、メモリ103上に待避した引数と前記引数一覧で設定された引数とが一致しなかった場合(s303:No)、本フローを終了する。
【0049】
続いて前記システム100の位置情報格納部112は、前記階層Xたる階層1から前記階層Yたる階層5までの各階層で読み取ったタグに対応させて、各タグを一意に特定するタグ位置IDを採番し、前記階層Xから階層Yに至る経路についてのタグ位置ID群をメモリ103に格納する(s305)。
【0050】
そして、前記システム100のレコード生成部113は、前記XMLデータの階層Xから階層Yまでの各階層で記述されている階層データをXMLデータから読取り、各階層のXMLデータを、前記メモリ103におけるタグ位置ID群が含む各階層のタグ位置IDに対応付けし、前記階層Xから階層Yに至る経路についてタグ位置IDと階層データとが対応付けされたレコードを生成し、テキストまたはCSV形式のデータとして記憶装置101に格納する(s306)。なお、前記レコードにおけるタグ位置ID群の設定先としては、図5に示したCSVファイル50におけるタグ位置ID欄297〜301となる。
【0051】
ここで、前記タグ位置IDの採番やレコードへの設定処理の詳細について説明しておく。ここでの説明に際して採用するXMLデータとしては図8に示すXMLデータ41を想定する。また、このXMLデータ41を変換して得られるCSVファイル(またはテキスト)としては図10に示すCSVファイル51を想定する。
【0052】
例えば図8のXMLデータ41のように、階層5(開始タグ217、219、221)のレベルで繰返しデータが記述されている場合、前記タグ読取り部111は、階層1の開始タグ213を検知して読込み、階層1における階層データ282(データ“AAA”)をメモリ103に待避させる。そして、次の開始タグである階層2の開始タグ214を読込むと、これに応じてメモリカウンター(システム100が備えてタグ読取り部111が制御するものであり、初期値:000)に1を加算して“001”を採番する。
【0053】
前記レコード生成部113は、前記タグ読取り部111が採番した“001”のデータをタグ位置IDとして、CSVファイル51(図10)における1レコード目の階層1のタグ位置ID欄243にセットする。また、タグ位置IDのセット後、メモリ103に待避させた階層1における階層データ282(“AAA”)を前記CSVファイル51における1レコード目の階層1のデータ欄244にセットする。そして、階層2以降、階層4まで、階層1で先に示した内容と同様の処理を実施し、CSVファイル51における1レコード目の階層2、階層3、階層4それぞれのタグ位置ID欄245、247、249に、それぞれタグ位置ID“002”、“003”、“004”、をセットする。また、データ欄246、248、250に、それぞれ階層データ“BBB”、“CCC”、“DDD”をセットする。
【0054】
階層5についても同様に、前記タグ読取り部111は、階層5の最初の開始タグ217を検知し、階層5における階層データ286(“EEE”)をメモリ103に待避させる。そして、次に検知できる開始タグが階層5の終了タグ218となるので、階層4までについて加算されていた前記メモリカウンタ(この時点で“004”)に1を加算してタグ位置ID“005”を採番する。
【0055】
そしてレコード生成部113は、前記タグ位置ID“005”をCSVファイル51における1レコード目の階層5のタグ位置ID欄251にセットする。このタグ位置ID“005”のセット後、メモリ103に待避させた階層5における階層データ286(“EEE”)をCSVファイル51における1レコード目の階層5のデータ欄252にセットする。
【0056】
次に、前記タグ読取り部111は、階層4の終了タグ223を読込む前に、階層5における他の開始タグ219を検知する。また、この開始タグ219に対応した階層5の階層データ287(“FFF”)をメモリ103に待避させ、メモリカウンター(この時点で“005”)に1を加算してタグ位置ID“006”を採番する。
【0057】
前記レコード生成部113は、前記CSVファイル51において新たなレコード(2レコード目となる)を生成し、前記タグ位置ID“006”をこの2レコード目の階層5のタグ位置ID欄261にセットする。このタグ位置IDのセット後、メモリ103に待避させていた階層5における階層データ287(“FFF”)を、前記2レコード目の階層5のデータ欄262にセットする。
【0058】
なお、前記レコード生成部113は、前記2レコード目を生成する際、2レコード目の階層1、階層2、階層3、階層4それぞれのタグ位置ID欄253、255、257、259には、前記1レコード目の階層1、階層2、階層3、階層4のそれぞれのタグ位置ID“001”、“002”、“003”、“004”、をセットする。また、2レコード目のデータ欄254、256、258、260には、前記1レコード目の階層データ“AAA”、“BBB”、“CCC”、“DDD”、をセットする。
【0059】
こうして、前記XMLデータ41について、XMLデータ構造の情報を取り込んだCSVファイル51が生成されることとなる。
【0060】
−−−変換処理例2−−−
また、図9に示すXMLデータ42のように、開始タグ230と終了タグ233で区切られた階層4(階層データ292と1つの階層5を含むもの)と、同じく階層4あって、開始タグ234と終了タグ239で区切られた他の階層4(階層データ294と2つの階層5を含むもの)とを含むXMLデータについて、前記タグ位置IDの採番やレコードへの設定処理の詳細について説明しておく。
【0061】
この場合まず、前記タグ読取り部111は、階層1の開始タグ227を検知して読込み、階層1における階層データ289(“AAA”)をメモリ103に待避させる。そして、次の開始タグである階層2の開始タグ228を検知して読込んで、前記メモリカウンター(初期値:000)に1を加算してタグ位置ID“001”を採番する。
【0062】
また、前記レコード生成部113は、前記タグ位置ID“001”を、図11に示すCSVファイル52における1レコード目の階層1のタグ位置ID欄263にセットする。レコード生成部113は、このタグ位置IDのセット後、メモリ103に待避させていた階層1における階層データ“AAA”を前記CSVファイル52における1レコード目の階層1のデータ欄264にセットする。
【0063】
前記レコード生成部113は、階層2以降、階層4まで前記階層1について示した処理内容と同様の処理を実施し、前記CSVファイル52における1レコード目の階層2、階層3、階層4それぞれの、タグ位置ID欄265、267、269に、タグ位置ID“002”、“003”、“004”をセットする。また、前記CSVファイル52における1レコード目の階層2、階層3、階層4それぞれのデータ欄266、268、270に、階層データ“BBB”、“CCC”、“DDD”をセットする。
【0064】
前記タグ読取り部111は、階層5についても上記と同様に、前記階層4の開始タグ230の読み込み後に、階層5の開始タグ231を検知して読込み、前記階層5における階層データ293(“FFF”)をメモリ103に待避させる。また、次に読み込むタグが階層5の終了タグ232となるので、階層4までについて加算されていたメモリカウンタ(“004”)に1を加算してタグ位置ID“005”を採番する。
【0065】
前記レコード生成部113は、前記タグ位置ID“005”を、前記CSVファイル52における1レコード目の階層5のタグ位置ID欄271にセットする。また、タグ位置IDのセット後、メモリ103に待避していた階層5の階層データ“FFF”を、CSVファイル52の1レコード目の階層5のデータ欄272にセットする。
【0066】
前記タグ読取り部111は、前記階層4の終了タグ233を読込んだ後に、階層3の終了タグ240を読み込む前に、別の階層4の開始タグ234を新たに検知して読込むこととなる。その為、この新たな階層4における階層データ294(“GGG”)をメモリ103に待避させる。また、前記メモリカウンタ(この時点で“005”)に1を加算してタグ位置ID“006”を採番する。
【0067】
その後、レコード生成部113は、前記CSVファイル52における2レコード目を生成し、この2レコード目の階層4のタグ位置ID欄279に前記タグ位置ID“006”をセットする。そして、前記タグ位置ID“006”のセット後、メモリ103に待避させていた前記階層4の階層データ“GGG”を、前記CSVファイル52における2レコード目の階層4のデータ欄280にセットする。
【0068】
なお、前記レコード生成部113が前記階層4の2レコード目をセットする際、2レコード目の階層1、階層2、階層3それぞれの、タグ位置ID欄273、275、277には、1レコード目の階層1、階層2、階層3それぞれのタグ位置ID“001”、“002”、“003”をそれぞれセットする。また前記2レコード目の階層1、階層2、階層3それぞれの、データ欄274、276、278には、1レコード目の階層1、階層2、階層3それぞれの、階層データ“AAA”、“BBB”、“CCC”、をセットする。
【0069】
前記タグ読取り部111は、前記階層4の階層データ294を読み込んだ後、新たな階層5の開始タグ235を検知して読込むこととなる。そこで、この階層5の階層データ295(“HHH”)をメモリ103に待避させる。また、次に読み込むタグが階層5の終了タグ236となるので、前記2レコード目の階層4についてまで加算されていたメモリカウンタ(この時点で“006”)に1を加算してタグ位置ID“007”を採番する。
【0070】
そしてレコード生成部113は、CSVファイル52における1レコード目の階層5のタグ位置ID欄281に、前記タグ位置ID“007”をセットする。このタグ位置IDのセット後、メモリ103に待避させていた階層5の階層データ“HHH”を、CSVファイル52における2レコード目の階層5のデータ欄282にセットする。
【0071】
前記タグ読取り部111は、前記階層5の終了タグ236を読込んだ後に、階層4の終了タグ239を読み込む前に、別の階層5の開始タグ237を新たに検知して読込むこととなる。その為、この新たな階層5における階層データ296(“III”)をメモリ103に待避させる。また、前記メモリカウンタ(この時点で“007”)に1を加算してタグ位置ID“008”を採番する。
【0072】
その後、レコード生成部113は、前記CSVファイル52における3レコード目を生成し、この3レコード目の階層5のタグ位置ID欄291に前記タグ位置ID“008”をセットする。そして、前記タグ位置ID“008”のセット後、メモリ103に待避させていた前記階層5の階層データ“III”を、前記CSVファイル52における3レコード目の階層5のデータ欄292にセットする。
【0073】
なお、前記レコード生成部113が前記階層5の3レコード目をセットする際、3レコード目の階層1、階層2、階層3それぞれの、タグ位置ID欄283、285、287、289には、2レコード目の階層1、階層2、階層3、階層4それぞれのタグ位置ID“001”、“002”、“003”、“006”をそれぞれセットする。また前記3レコード目の階層1、階層2、階層3それぞれの、データ欄284、286、288、290には、2レコード目の階層1、階層2、階層3それぞれの、階層データ“AAA”、“BBB”、“CCC”、“DDD”、をセットする。
【0074】
こうして、前記XMLデータ42について、XMLデータ構造の情報を取り込んだCSVファイル52が生成されることとなる。
【0075】
−−−逆変換処理について−−−
次に、XMLデータから生成したCSVファイルを逆変換して元のXMLデータを復元する処理について説明する。図7は、本実施形態のXMLデータ構造の復元方法の処理手順例2を示す図である。ここで、前記システム100の復元処理部114は、ネットワーク140上の他社端末200または入力インターフェイス105からXMLデータ構造の復元指示を受け付けるか、記憶装置101にて予め設定されていたXMLデータ構造の復元時期の到来を検知(例:コンピュータが備えるクロック機能やカレンダ機能で所定日時到来を検知)したならば(s400)、復元指示を受けたXMLデータないしは復元時期が到来したXMLデータについて生成されているテキストまたはCSVファイルを、記憶装置101よりメモリ103に読み出す(s401)。勿論、XMLデータとこれに基づいて生成したテキストまたはCSVファイルとは、記憶装置101にて対照表が予め生成されている。
【0076】
また、前記復元処理部114は、前記テキストまたはCSVファイルを構成する前記レコードを1つずつ読込み、メモリ103に待避させる(s402)。そして、前記レコードが含むタグ位置ID間で重複を判定し、重複無いタグ位置ID毎にXMLデータ構造における階層を生成する(s403)。また、生成した各階層に対し、該当タグ位置IDに対応する階層データを前記レコードより抽出して設定し(s404)、開始タグが検索された階層Xから終了タグが検知された階層Yまでの各階層が階層データを含んだ構造をなすXMLデータを復元する(s405)。
【0077】
そして前記システム100の出力処理部115は、前記メモリ103にて復元したXMLデータを、ネットワーク上の他社端末200に送信するか、出力インターフェイス106に出力し、処理を終了する。
【0078】
続いて、前記レコードからのタグ位置IDの取込やCSVファイル生成の処理詳細について説明する。なお、この説明においては、逆変換対象のCSVファイルとして図12に示すCSVファイル60を想定し、逆変換により復元されたXMLデータとして図13に示すXMLデータ70を想定するものとする。例えば、図12に示すように、CSVファイル60が2つのレコードを含むものである場合、前記復元処理部114は、まず1レコード目を読込み、階層1、階層2、階層3、階層4、階層5それぞれの、タグ位置ID欄305、306、307、308、309におけるタグ位置ID“001”、“002”、“003”、“004”、“005”、をメモリ103に待避させる。また同様に、前記1レコード目が含む、階層データを各階層1〜5毎に、“AAA”、“BBB”、“CCC”、“DDD”、“EEE”、と読み出してメモリ103に退避させる。そして、メモリ103に退避させていた、各タグ位置ID毎に階層を生成し、この階層に対応する階層データを設定してXMLデータ350に生成する。
【0079】
次に、復元処理部114は、前記CSVファイル60の2レコード目を読込み、1レコード目と同様、階層1、階層2、階層3、階層4それぞれの、タグ位置ID310、311、312、313、314として、“001”、“002”、“006”、“007”、“008”、を読み取る。そしてこのタグ位置IDのデータをメモリ103に待避させる(前記メモリ103において1レコード目の記憶領域とは別の記憶領域に退避)。
【0080】
また、復元処理部114は、1レコード目で待避させた各階層のタグ位置ID群315のタグ位置IDそれぞれと、2レコード目で待避させた各階層のタグ位置ID群316のタグ位置IDそれぞれとで比較し、異なる階層のタグ位置ID317が存在した場合は、この異なる階層から新たにタグ(図中の囲み318)を生成する。生成されたXMLデータ360は、前記出力処理部115が他社端末200に送信し、処理を終了する。
【0081】
こうして、CSVファイル等から、正確なデータ構造を再現しつつXMLデータを復元することができる。
【0082】
本実施形態によれば、所定の端末から受信した、例えば、流通ビジネスメッセージ標準準拠のXMLデータを、XMLデータ構造についても配慮しつつテキスト又はCSV形式に変換し保存することができる。そのため、たとえXMLデータ自体を紛失した場合でも、テキスト又はCSV形式に変換し保存してあるデータから、前記端末から受信した時のデータ構造を備えたXMLデータに復元する事が保障できる。
【0083】
したがって、XMLデータにおける記述構造によらず、XMLデータとテキストまたはCSV形式データとの相互変換時におけるXMLデータ構造の正確な復元を可能となる。
【0084】
以上、本発明の実施の形態について、その実施の形態に基づき具体的に説明したが、これに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【図面の簡単な説明】
【0085】
【図1】本実施形態におけるXMLデータ構造の復元システムの全体構成図である。
【図2】本実施形態の全体シーケンス例1を示す図である。
【図3】本実施形態の全体シーケンス例2を示す図である。
【図4】本実施形態におけるXMLデータ構造の例1を示す図である。
【図5】本実施形態におけるテキストまたはCSVファイルの構造例を示す図である。
【図6】本実施形態のXMLデータ構造の復元方法の処理手順例1を示すフローチャートである。
【図7】本実施形態のXMLデータ構造の復元方法の処理手順例2を示す図である。
【図8】本実施形態におけるXMLデータ構造の例2を示す図である。
【図9】本実施形態におけるXMLデータ構造の例3を示す図である。
【図10】本実施形態の変換後のテキストまたはCSVファイルの構造例1を示す図である。
【図11】本実施形態の変換後のテキストまたはCSVファイルの構造例2を示す図である。
【図12】本実施形態の逆変換処理対象のテキストまたはCSVファイルの構造例を示す図である。
【図13】本実施形態の逆変換処理により生成したXMLデータ構造例1を示す図である。
【図14】本実施形態の逆変換処理により生成したXMLデータ構造例2を示す図である。
【符号の説明】
【0086】
100 XMLデータ構造の復元システム
101 記憶装置
102 プログラム
103 メモリ
104 CPU
105 入力インターフェイス
106 出力インターフェイス
107 通信装置
110 データ取得部
111 タグ読取り部
112 位置情報格納部
113 レコード生成部
114 復元処理部
115 出力処理部
200 他社端末

【特許請求の範囲】
【請求項1】
XMLデータとテキストまたはCSV形式のデータとを相互変換するコンピュータシステムであって、
ネットワーク上の所定端末よりXMLデータを受信し、記憶装置に格納するデータ取得部と、
前記記憶装置よりXMLデータをメモリに読み出して、前記XMLデータにおける開始タグを検索し、開始タグが検索された階層Xから下位階層に向けて、終了タグが検知される階層Yまでタグの読取り処理を実行する、タグ読取り部と、
前記階層Xから前記階層Yまでの各階層で読み取ったタグに対応させて、各タグを一意に特定するタグ位置IDを採番し、前記階層Xから階層Yに至る経路についてのタグ位置ID群をメモリに格納する位置情報格納部と、
前記XMLデータの階層Xから階層Yまでの各階層で記述されている階層データをXMLデータから読取り、各階層のXMLデータを、前記メモリにおけるタグ位置ID群が含む各階層のタグ位置IDに対応付けし、前記階層Xから階層Yに至る経路についてタグ位置IDと階層データとが対応付けされたレコードを生成し、テキストまたはCSV形式のデータとして記憶装置に格納するレコード生成部と、
ネットワーク上の所定端末または入力インターフェイスからXMLデータ構造の復元指示を受け付けるか、記憶装置にて予め設定されていたXMLデータ構造の復元時期の到来を検知したならば、前記記憶装置より前記レコードをメモリに読み出して、当該レコードが含むタグ位置ID毎にXMLデータ構造における階層を生成し、生成した各階層に対し、該当タグ位置IDに対応する階層データを前記レコードより抽出して設定し、開始タグが検索された前記階層Xから終了タグが検知された階層Yまでの各階層が階層データを含んだ構造をなすXMLデータを復元する復元処理部と、
前記メモリにて復元したXMLデータを、ネットワーク上の所定端末に送信するか、出力インターフェイスに出力する、出力処理部と、
を備えることを特徴とするXMLデータ構造の復元システム。
【請求項2】
前記タグ読取り部は、前記階層Yの終了タグの読取り処理を実行した後、当該階層Yを包含する上位の階層Aにおいて、前記階層Yのものとは別の開始タグを検索し、この開始タグが検索された階層Aから下位階層に向けて、前記階層Yのものとは別の終了タグが検知される階層Bまでタグの読取り処理を実行するものであり、
前記位置情報格納部は、前記階層Aから前記階層Bまでの各階層で読み取ったタグに対応させて、各タグを一意に特定するタグ位置IDを採番し、既にタグ位置IDを採番済みの前記所定階層Xから前記階層Aの経路についてのタグ位置ID群に、前記階層Aから階層Bに至る経路について採番したタグ位置ID群をマージし、階層X〜A〜Bの経路についてのタグ位置ID群としてメモリに格納するものであり、
前記レコード生成部は、前記XMLデータの階層X〜A〜Bの各階層で記述されている階層データをXMLデータから読取り、各階層のXMLデータを、前記メモリにおけるタグ位置ID群が含む各階層のタグ位置IDに対応付けし、前記階層X〜A〜Bに至る経路についてタグ位置IDと階層データとが対応付けされたレコードを生成し、テキストまたはCSV形式のデータとして記憶装置に格納するものであり、
前記復元処理部は、前記記憶装置より前記レコードをメモリに読み出して、当該レコードが含むタグ位置IDのうち、前記階層Aから階層BまでのものについてXMLデータ構造における階層を生成し、生成した階層Aから階層Bまでの各階層に対し、該当タグ位置IDに対応する階層データを前記レコードより抽出して設定し、前記階層Aから階層Bまでの各階層が階層データを含んだ構造をなすXMLデータを復元し、このXMLデータを、既に復元済みの前記階層Xから階層YまでのXMLデータに追記し、前記階層X〜A〜Bの各階層が階層データを含んだ構造をなすXMLデータを復元するものである、
ことを特徴とする請求項1に記載のXMLデータ構造の復元システム。
【請求項3】
前記XMLデータは、流通ビジネスメッセージ標準に準拠したデータのうち、出荷梱包についてのデータであることを特徴とする請求項1または2に記載のXMLデータ構造の復元システム。
【請求項4】
XMLデータとテキストまたはCSV形式のデータとを相互変換するコンピュータが、
ネットワーク上の所定端末よりXMLデータを受信し、記憶装置に格納する処理と、
前記記憶装置よりXMLデータをメモリに読み出して、前記XMLデータにおける開始タグを検索し、開始タグが検索された階層Xから下位階層に向けて、終了タグが検知される階層Yまでタグの読取り処理を実行する処理と、
前記階層Xから前記階層Yまでの各階層で読み取ったタグに対応させて、各タグを一意に特定するタグ位置IDを採番し、前記階層Xから階層Yに至る経路についてのタグ位置ID群をメモリに格納する処理と、
前記XMLデータの階層Xから階層Yまでの各階層で記述されている階層データをXMLデータから読取り、各階層のXMLデータを、前記メモリにおけるタグ位置ID群が含む各階層のタグ位置IDに対応付けし、前記階層Xから階層Yに至る経路についてタグ位置IDと階層データとが対応付けされたレコードを生成し、テキストまたはCSV形式のデータとして記憶装置に格納する処理と、
ネットワーク上の所定端末または入力インターフェイスからXMLデータ構造の復元指示を受け付けるか、記憶装置にて予め設定されていたXMLデータ構造の復元時期の到来を検知したならば、前記記憶装置より前記レコードをメモリに読み出して、当該レコードが含むタグ位置ID毎にXMLデータ構造における階層を生成し、生成した各階層に対し、該当タグ位置IDに対応する階層データを前記レコードより抽出して設定し、開始タグが検索された前記階層Xから終了タグが検知された階層Yまでの各階層が階層データを含んだ構造をなすXMLデータを復元する処理と、
前記メモリにて復元したXMLデータを、ネットワーク上の所定端末に送信するか、出力インターフェイスに出力する処理と、
を実行することを特徴とするXMLデータ構造の復元方法。
【請求項5】
XMLデータとテキストまたはCSV形式のデータとを相互変換するコンピュータに、
ネットワーク上の所定端末よりXMLデータを受信し、記憶装置に格納するステップと、
前記記憶装置よりXMLデータをメモリに読み出して、前記XMLデータにおける開始タグを検索し、開始タグが検索された階層Xから下位階層に向けて、終了タグが検知される階層Yまでタグの読取り処理を実行するステップと、
前記階層Xから前記階層Yまでの各階層で読み取ったタグに対応させて、各タグを一意に特定するタグ位置IDを採番し、前記階層Xから階層Yに至る経路についてのタグ位置ID群をメモリに格納するステップと、
前記XMLデータの階層Xから階層Yまでの各階層で記述されている階層データをXMLデータから読取り、各階層のXMLデータを、前記メモリにおけるタグ位置ID群が含む各階層のタグ位置IDに対応付けし、前記階層Xから階層Yに至る経路についてタグ位置IDと階層データとが対応付けされたレコードを生成し、テキストまたはCSV形式のデータとして記憶装置に格納するステップと、
ネットワーク上の所定端末または入力インターフェイスからXMLデータ構造の復元指示を受け付けるか、記憶装置にて予め設定されていたXMLデータ構造の復元時期の到来を検知したならば、前記記憶装置より前記レコードをメモリに読み出して、当該レコードが含むタグ位置ID毎にXMLデータ構造における階層を生成し、生成した各階層に対し、該当タグ位置IDに対応する階層データを前記レコードより抽出して設定し、開始タグが検索された前記階層Xから終了タグが検知された階層Yまでの各階層が階層データを含んだ構造をなすXMLデータを復元するステップと、
前記メモリにて復元したXMLデータを、ネットワーク上の所定端末に送信するか、出力インターフェイスに出力するステップと、
を実行させるXMLデータ構造の復元プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate