(57)【要約】  簡単なクエリ処理によるＸＭＬ圧縮方法及び装置が提供される。ＸＭＬファイルがＳＡＸパーサにより解析され、実用のないタブやホワイトスペースなどの文字が削除され、標識データマークが挿入され、ＬＺ７７圧縮が適用され、最終的に、当該データはハフマン符号化され、データブロックにパッキングされる。標識マークは、アルファベット順などに基づき、文書のタグ又はリテラルについて圧縮されたファイル内を検索するのに使用される。標識マークは、タブやＸＭＬコメントなどの特別な文字から構成され、このため、それらはＸＭＬ互換性を有する。独立したデータブロックによる圧縮ファイルの構成は、圧縮ファイルの迅速なクエリ処理及び部分的解凍を容易にする。
2007520112.tif 000002
【特許請求の範囲】
【請求項１】
ＸＭＬデータを圧縮する方法であって、
ａ．前記ＸＭＬデータを受け付けるステップと、
ｂ．前記ＸＭＬデータを符号化するステップと、
ｃ．前記符号化されたＸＭＬデータをパケット化するステップと、
ｄ．圧縮されたＸＭＬデータを取得するため、前記ブロックパッキングされたＸＭＬデータ間に特定のデータを識別するのに使用される標識データを挿入するステップと、
を有することを特徴とする方法。
【請求項２】
請求項１記載の方法であって、
前記標識データは、ヌルデータブロックに配置されることを特徴とする方法。
【請求項３】
請求項２記載の方法であって、
前記標識データは、前記ヌルデータブロックのブロックヘッドに配置されることを特徴とする方法。
【請求項４】
ＸＭＬデータを圧縮する方法であって、
ａ．前記ＸＭＬデータを受け付けるステップと、
ｂ．特定のデータを識別するのに使用される標識データを前記ＸＭＬデータに挿入するステップと、
ｃ．前記圧縮されたデータを取得するため、前記標識データを有する前記ＸＭＬデータを圧縮するステップと、
を有することを特徴とする方法。
【請求項５】
請求項４記載の方法であって、
前記ステップｂは、
実用のないデータ群を標識データマークとして取得するため、前記ＸＭＬデータを解析するステップと、
前記対応する標識データを特定数の前記標識データマークの後方に挿入するステップと、
残りの標識データマークを他の実用のないデータ群と置換するステップと、
を有することを特徴とする方法。
【請求項６】
請求項４記載の方法であって、
前記ステップｂは、
実用のないデータ群を取得するため、前記ＸＭＬデータを解析するステップと、
特定数の前記実用のないデータを標識データパケットに変換するステップと、
前記標識データを前記標識データパケットに配置するステップと、
を有することを特徴とする方法。
【請求項７】
請求項５又は６記載の方法であって、
前記実用のないデータは、タブマーク、ブランクマーク及びエンターマークの１つであることを特徴とする方法。
【請求項８】
圧縮されたＸＭＬデータを解凍する方法であって、
ａ．標識データを有する前記圧縮されたＸＭＬデータを受け付けるステップと、
ｂ．前記標識データを取得するステップ（ｉ）を有し、前記圧縮されたＸＭＬデータを解凍するステップと、
ｃ．前記標識データに従って前記対応する解凍されたＸＭＬデータを破棄するステップと、
を有することを特徴とする方法。
【請求項９】
請求項８記載の方法であって、
前記標識データは、ヌルデータブロックに配置されることを特徴とする方法。
【請求項１０】
請求項８記載の方法であって、
前記ステップｂのステップ（ｉ）は、
ヌルデータブロックを検出するため、前記圧縮されたＸＭＬデータをブロックヘッド復号化するステップと、
前記ヌルデータブロックのブロックヘッドから前記標識データを取得するステップと、
を有することを特徴とする方法。
【請求項１１】
請求項８記載の方法であって、さらに、
特定の状態に従って前記標識データのコンテンツを変更するステップを有し、
前記ステップｃは、前記変更された標識データのコンテンツに従って実行される、
ことを特徴とする方法。
【請求項１２】
請求項８記載の方法であって、
前記破棄されたＸＭＬデータは、前記圧縮されたＸＭＬデータの特定のデータブロックに対応することを特徴とする方法。
【請求項１３】
圧縮されたＸＭＬデータを解凍する方法であって、
ａ．前記解凍されたＸＭＬデータを取得するため、前記圧縮されたＸＭＬデータを解凍するステップと、
ｂ．前記解凍されたＸＭＬデータから特定のデータを識別するのに使用される標識データを取得するステップと、
ｃ．前記標識データに従って前記対応する解凍されたＸＭＬデータを破棄するステップと、
を有することを特徴とする方法。
【請求項１４】
請求項１３記載の方法であって、
前記標識データは、前記元のＸＭＬデータに挿入されることを特徴とする方法。
【請求項１５】
請求項１３記載の方法であって、
前記ステップｂは、
前記ＸＭＬデータにおいて標識データマークを検出するステップと、
前記標識データマークに従って前記標識データを取得するステップと、
を有することを特徴とする方法。
【請求項１６】
請求項１３記載の方法であって、さらに、
特定の状態に従って前記標識データのコンテンツを変更するステップを有し、
前記ステップｃは、前記変更された標識データのコンテンツに従って実行される、
ことを特徴とする方法。
【請求項１７】
ＸＭＬデータを圧縮する装置であって、
前記ＸＭＬデータを受け付ける受付手段と、
前記ＸＭＬデータを符号化する符号化手段と、
前記符号化されたＸＭＬデータをパケット化するパケット化手段と、
圧縮されたＸＭＬデータを取得するため、前記ブロックパッキングされたＸＭＬデータ間に特定のデータを識別するのに使用される標識データを挿入する表示データブロック挿入手段と、
を有することを特徴とする装置。
【請求項１８】
請求項１７記載の装置であって、
前記標識データは、ヌルデータブロックに配置されることを特徴とする装置。
【請求項１９】
ＸＭＬデータを圧縮する装置であって、
前記ＸＭＬデータを受け付ける受付手段と、
特定のデータを識別するのに使用される標識データを前記ＸＭＬデータに挿入する標識データパケット挿入手段と、
前記圧縮されたデータを取得するため、前記標識データが挿入される前記ＸＭＬデータを圧縮する圧縮手段と、
を有することを特徴とする装置。
【請求項２０】
請求項１９記載の装置であって、
前記標識データパケット挿入手段は、
前記標識データマークとして実用のないデータ群を取得するため、前記ＸＭＬデータを解析する配置手段と、
前記対応する標識データを特定数の標識データマークの後方に挿入し、残りの標識データマークを他の実用のないデータ群と置換するデータ挿入手段と、
を有することを特徴とする装置。
【請求項２１】
請求項２０記載の装置であって、
前記実用のないデータは、タブマーク、ブランクマーク及びエンターマークの１つであることを特徴とする装置。
【請求項２２】
圧縮されたＸＭＬデータを解凍する装置であって、
標識データを有する前記圧縮されたＸＭＬデータを受け付ける受付手段と、
前記圧縮されたＸＭＬデータを解凍し、前記標識データを取得するデータ処理手段と、
前記標識データに従って前記対応する圧縮されたＸＭＬデータを破棄する破棄手段と、
を有することを特徴とする装置。
【請求項２３】
請求項２２記載の装置であって、
前記標識データは、ヌルデータブロックに配置されることを特徴とする装置。
【請求項２４】
請求項２２記載の装置であって、
前記データ処理手段は、
ヌルデータブロックを検出するため、前記圧縮されたＸＭＬデータをブロックヘッド復号化するヌルデータブロック検出手段と、
前記ヌルデータブロックのブロックヘッドから前記標識データを取得する標識データ取得手段と、
を有することを特徴とする装置。
【請求項２５】
請求項２２記載の装置であって、さらに、
特定の状態に従って前記標識データのコンテンツを変更するアナライザを有し、
前記破棄手段は、前記変更された標識データのコンテンツに従って動作する、
ことを特徴とする装置。
【請求項２６】
請求項２４記載の装置であって、
前記標識データは、前記元のＸＭＬデータに挿入されることを特徴とする装置。
【請求項２７】
請求項２４記載の装置であって、
前記標識データは、前記解凍されたＸＭＬデータから取得されることを特徴とする装置。
【請求項２８】
請求項２４記載の装置であって、
前記データ処理手段は、前記解凍されたＸＭＬデータから標識データマーク群を検出し、前記標識データマークに従って前記標識データを取得する検出結果取下手段を有することを特徴とする装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ圧縮及び解凍方法及び装置に関し、特にＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）データ圧縮及び解凍方法及び装置に関する。
【背景技術】
【０００２】
ＸＭＬは、データ通信においてますます普及しつつあるテキストフォーマットである。マルチメディアフィールド、ＭＰＥＧ−７及びＴＶ−Ａｎｙｔｉｍｅなどのますます多くの規格が、データを表すのにＸＭＬテキストフォーマットを利用している。
【０００３】
ＸＭＬは冗長なフォーマットであり、すなわち、ＸＭＬによりデータ及び構造を表現する方法は、比較的に大きなテキストをもたらす。従って、データ圧縮は、送信又は格納のため注意深く検討される必要がある。最も一般的な圧縮方法は、最も良く知られているｚｉｐ（．ｚｉｐファイル）やｇｚｉｐ（．ｇｚファイル）などのＺｌｉｂである。それは、ハフマン、ＬＺ７７又はその両方に基づくものである。
【０００４】
従来技術では、圧縮装置は、ＸＭＬデータを圧縮し、圧縮されたＸＭＬデータを解凍し、その解析を行う。
【０００５】
図１は、従来技術のコンプレッサの構造図である。コンプレッサ１００は、ＬＺ７７エンコーダ１０２と、ハフマンエンコーダ１０４と、ブロックパッカー１０６とを有する。コンプレッサ１００は、Ｚｌｉｂフォーマットに基づきＸＭＬデータを圧縮する。
【０００６】
まず、コンプレッサ１００はＸＭＬデータを受け取り、ＬＺ７７エンコーダ１０２がＬＺ７７アルゴリズムに従ってＸＭＬデータをエンコードし、コードワード及びリテラル群を生成する。当該リテラルは、圧縮不可能なＸＭＬデータからのバイトを有する。１つのコードワードは、ＸＭＬデータにおいて以前に遭遇したデータ、すなわち、冗長データをバイトシーケンスに変換することが可能である。典型的なコードワードは、以前に遭遇したシーケンスの長さと、バイトにおけるシーケンスの始めから現在のバイトまでのスペースであるピッチとを有する。
【０００７】
ハフマンエンコーダ１０４は、コードワード及びリテラルに対してハフマン符号化を実行し、異なる長さのコードシーケンスを出力し、ハフマンリストを生成する。
【０００８】
ブロックパッカー１０６は、ハフマンエンコーダ１０４からハフマンリストを取得し、データを複数のブロックにパッキングする。各ブロックは、異なるハフマンリストを利用することが可能であり、又はＬＺ７７符号化及びハフマン符号化を全く必要としないものであってもよい。ここで、当該パッキングは、バイパス圧縮、デフォルトハフマンリストの利用及び従来のハフマンリストの利用の３つの可能性を有する。これら３つの可能性は、情報の平均量と実際の圧縮率とに基づく。各ブロックは、ブロックヘッダから始まる。最終的に、圧縮されたＸＭＬデータが出力され、解凍装置に送信される。
【０００９】
図２は、従来技術による解凍装置のデコンプレッサとアナライザの構造図である。デコンプレッサ２００は、圧縮されたＸＭＬデータを解凍し、ＸＭＬデータを取得する。デコンプレッサ２００は、ブロックヘッダデコーダ２０２と、ハフマンデコーダ２０４と、ＬＺ７７デコーダ２０６とを有する。
【００１０】
ブロックヘッダデコーダ２０２は、圧縮されたＸＭＬデータを復号し、ハフマンリストと、異なる長さのコード及び／又はリテラルを取得する。ハフマンデコーダ２０４は、圧縮されたＸＭＬデータを再び復号し、コードワード及びリテラルを取得し、最終的に、それらはＸＭＬデータを復号及び取得するため、ＬＺ７７デコーダ２０６に送信される。
【００１１】
アナライザ２１０は、ＸＭＬデータのためのＳＡＸ（Ｓｉｍｐｌｅ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を有し、ＳＡＸは、イベントタイプ及びイベントデータを取得するためＸＭＬデータをＳＡＸ解析する。ここで、ＳＡＸは、実際、ＸＭＬデータを処理するための規格である。それは大変シンプルなものであり、このため大変高速である。ＳＡＸは、シーケンスによりＸＭＬデータを処理し、このため、それはＺｌｉｂベースのイン・シーケンスデコンプレッサ２００と良好に適合する。ＳＡＸは、ＸＭＬデータのシーケンシャルな処理中にＳＡＸ解析により遭遇するエンティティに対して生成されるイベントに基づくコンセプトである。アナライザ２１０のイベントタイプは、実行されるイベントのタイプにより示され、これにより、アナライザ２１０は対応してイベントデータを解析及び処理し、解析されたＸＭＬデータを取得することが可能である。
【００１２】
ＳＡＸ解析前、システムは単に、リテラルシーケンスとしてＸＭＬデータとするが（すなわち、コンプレッサは、当該データのプロパティを前提としない）、ＳＡＸ解析後、要素及び非要素（リテラル）などの異なるＸＭＬエンティティは区別される。従って、ＳＡＸ解析後の出力は、個々のリテラルでなくイベントシーケンスを有し、各イベントは、ＸＭＬデータにおける複数の異なるリテラルから構成されるエンティティに対応する。
【００１３】
従来技術では、大きな圧縮ファイルから特別なデータを抽出することは、受信者にとって負担であるが、小さなＸＭＬデータより大きなＸＭＬデータにおいて、特にコストのかかる帯域幅のドメインにおいて圧縮を実行することが好ましく、圧縮効率の最適化が大変重要である。さらに、ターゲットとなる受信者が格納しない場合、解凍フォーマットによりすべてのデータを１つのデータベースに格納することは不可能であろう。せいぜい、それは圧縮フォーマットによりデータを保持し、又はデータが再び送信されるまで待機する。従って、大きな格納容量などの従来技術によるたくさんのリソースを有する装置は、大きなＸＭＬファイルに対して直接的に機能することはできず、小さな格納容量などの限られたリソースしか有しない装置は、解凍フォーマット又はデータベースフォーマットによりデータを格納することはできない。それらは、圧縮ファイルの基づいてのみデータを抽出することができる。
【発明の開示】
【発明が解決しようとする課題】
【００１４】
従来技術の問題点について、本発明は、ＸＭＬデータ圧縮及び解凍のための方法及び装置を提供する。
【課題を解決するための手段】
【００１５】
本発明は、ＸＭＬデータ圧縮のための方法を提供する。まず、ＸＭＬデータが受付及び符号化され、符号化されたＸＭＬデータがいくつかのデータブロックにパッキングされ、最終的に、圧縮されたＸＭＬデータを取得するため、データブロック間に標識データが挿入され、当該標識データは特定のデータを識別するためのものである。
【００１６】
本発明は、他のＸＭＬデータ圧縮方法を提供する。まず、ＸＭＬデータが受け付けられ、その後、特定のデータを識別するための標識データがＸＭＬデータに挿入され、最終的に、圧縮されたＸＭＬデータを取得するため、標識データを含むＸＭＬデータが圧縮される。
【００１７】
本発明は、ＸＭＬデータ解凍方法を提供する。まず、標識データを有する圧縮されたＸＭＬデータが受け付けられ、その後、圧縮されたＸＭＬデータは解凍され、解凍処理中に標識データが取得され、最終的に、標識データに従って対応する解凍されたＸＭＬデータが破棄される。
【００１８】
本発明は、他のＸＭＬデータ解凍方法を提供する。まず、解凍されたＸＭＬデータを取得するため、圧縮されたＸＭＬが解凍され、その後、解凍されたＸＭＬデータから特定のデータを識別するための標識データが取得され、最終的に、標識データに従って対応する解凍されたＸＭＬデータが破棄される。
【００１９】
本発明は、ＸＭＬデータの関連のないデータの解析を回避し、これにより、解析処理を迅速化し、受信装置の処理速度を速めることができる。それがＸＭＬデータの関連する部分のみを処理するとき、比較的大きなサイズのＸＭＬデータを処理することができ、送信されるすべてのＸＭＬ情報は、比較的大きなＸＭＬデータの１つの小さなデータブロックに分割可能であり、これは、小さなＸＭＬデータの１つの大きなデータブロックを処理するよりはるかに良好である。なぜなら、前者は後者より圧縮のためのＺｌｉｂをより良好に利用し、これにより、帯域幅を節約することができる。
【００２０】
本発明の他の目的及び実現が明らかにされ、以下の図面及び添付された請求項が参照される場合、本発明の完全なる理解が実現可能である。
【発明を実施するための最良の形態】
【００２１】
図３は、本発明の実施例のコンプレッサの構造ブロック図である。コンプレッサ１００は、ＬＺ７７エンコーダ１０２と、ハフマンエンコーダ１０４と、ブロックパッカー１０６と、標識データブロック挿入装置３０２とを有する。
【００２２】
ＬＺエンコーダ１０２は、ＸＭＬデータに対してＬＺ７７符号化を実行し、またＸＭＬデータを受信するための受信装置として機能するかもしれない。ハフマンエンコーダ１０４は、ＬＺ７７符号化されたＸＭＬデータに対してハフマン符号化を実行し、同時にハフマンリストを提供する。ＬＺ７７エンコーダ１０２とハフマンエンコーダ１０４は、一緒になってＸＭＬデータを符号化する符号化装置を構成することが可能である。
【００２３】
ブロックパッカー１０６は、ハフマン符号化されたＸＭＬデータをハフマンリストに従っていくつかのデータブロックにパッキングし、各データブロックのブロックヘッダはパーシャルハフマンリストを有する。
【００２４】
標識データブロック挿入装置３０２は、圧縮されたＸＭＬデータを取得するため、ハフマンリストに従って上記データブロック間の標識データを挿入する。当該標識データは、特定のデータを特定するため、ヌルデータブロックに配置される。
【００２５】
図４は、本発明の実施例の圧縮方法のフローチャートである。まず、ＸＭＬデータを受信し（ステップＳ４０２）、例えば、受信したＸＭＬデータは、
＜Ｅｎｔｒｙ＞＜Ｗｏｒｄ＞Ａｂａｃｋ＜／Ｗｏｒｄ＞＜Ｄｅｆｉｎｉｔｉｏｎ＞ｓａｌｄｉｕｆｈｃｎｗ＜／Ｄｅｆｉｎｉｔｉｏｎ＞＜／Ｅｎｔｒｙ＞．．．
である。
【００２６】
その後、ＬＺ７７符号化（ステップＳ４０４）とハフマン符号化（ステップＳ４０６）を含む、ＸＭＬデータの符号化が行われる。ＸＭＬデータがＬＺ７７符号化されると（ステップＳ４０４）、コードワードとリテラル群が取得され、ここで、コードワードはＸＭＬデータにおける単なる繰り返しのリテラル“Ｗｏｒｄ＞”であり、それの長さは５であり、それの距離、すなわち、最初の“Ｗｏｒｄ＞”から次の“Ｗｏｒｄ＞”までのスペースは１２である。これらのリテラルは、“Ａｂａｃｋ”などの圧縮できない他のラテラルである。
【００２７】
異なる長さのコードを取得し、同時にハフマンリストを生成するため、ＸＭＬデータに対してハフマン符号化が実行される（ステップＳ４０６）。例えば、‘Ｅ’‘ｎ’‘ｔ’‘ｒ’‘ｙ’‘＞’‘＜’‘Ｗ’‘ｏ’‘ｒ’‘ｄ’‘＞’‘Ａ’‘ｂ’‘ａ’‘ｃ’‘ｋ’‘＜’‘／’の２０個のリテラルをハフマン符号化した後、１６進数の異なる長さの２０個のコード、６Ｃ  ７５  ９Ｅ  Ａ４  Ａ２  Ａ９  ６Ｅ  ６Ｃ  ８７  ９Ｆ  Ａ２  ９４  ６Ｅ  ７１  ９２  ９１  ９３  ９Ｂ  ６Ｃ  ５Ｆが取得される。
【００２８】
ハフマンテーブルに従って、ハフマン符号化されたＸＭＬデータが複数のデータブロックにブロックパッキングされる（ステップＳ４０８）。例えば、文字‘Ａ’から始まるワードを１つのデータブロックにパッキングし、文字‘Ｂ’から始まるワードを次のデータブロックにパッキングするなどにより、いくつかのデータブロックが取得される。
【００２９】
圧縮されたＸＭＬデータを取得するため（ステップＳ４１２）、ブロックパッキングされたＸＭＬデータブロックの間に標識データが挿入される（ステップＳ４１０）。当該標識データは、特定のデータを識別するためのものである。ここで、特定のデータとは、ワード‘ｃａｒ’などの所望のデータを意味する。
【００３０】
当該標識データは、ヌルデータブロックのブロックヘッダにおいてヌルデータブロックに配置される。
【００３１】
圧縮されたＸＭＬデータが、テーブル１に示される。
【００３２】
【表１】
2007520112.tif 000003
テーブル１から、データブロック０を構成するコンテンツが符号化されたＸＭＬデータ“＜Ｅｎｔｒｙ＞＜Ｗｏｒｄ＞”、すなわち、６Ｃ  ７５  ９Ｅ  Ａ４  Ａ２  Ａ９  ６Ｅ  ６Ｃ  ８７  ９Ｆ  Ａ２  ９４  ６Ｅに対応し、データブロック１、すなわち、標識データブロックのブロックヘッダが標識データ‘Ｃ’により挿入され、そして当該データはデータを有しないヌルデータブロックであり、データブロック２及び３はデータブロック０及び１に類似することが、テーブル１から確認することができる。データブロック４は、文字‘Ｃ’から始まるワードを有する。当該データブロックのコンテンツは、ワード“Ｃａｒ”に対応するリテラルであり、すなわち、上述の“６Ｃ  ７５”などに類似するリテラルである。
【００３３】
図５は、本発明の実施例の解凍装置の構造図である。解凍装置は、デコンプレッサ５００と、有限状態マシーン（ＦＳＭ）５１０と、標識データブロック検出装置５０８と、アナライザ５１２とを有する。
【００３４】
デコンプレッサ５００はさらに、ブロックヘッダデコーダ５０２と、ハフマンデコーダ２０４と、ＬＺ７７デコーダ２０６とを有する。
【００３５】
ブロックヘッダデコーダ５０２は、圧縮されたＸＭＬデータブロックをブロックヘッダ復号化するためのものである。ブロックヘッダ復号化中、新たなデータブロックに遭遇する毎に、データブロック信号が生成され、有限状態マシーン５１０に送信される。ブロックヘッダデコーダ５０２はさらに、ヌルデータブロックを検出し、当該ヌルデータブロックを標識データブロック検出装置５０８に提供するのに利用される。ブロックヘッダデコーダ５０２はまた、ハフマンリストを生成するのに利用され、同時に圧縮されたＸＭＬデータを受信する受信装置として機能する。
【００３６】
ハフマンデコーダ２０４は、圧縮されたＸＭＬデータをＬＺ７７復号化し、ＸＭＬデータを取得するためのものである。当該圧縮ＸＭＬデータは、標識データを含む。
【００３７】
ＬＺ７７デコーダ２０６は、圧縮されたＸＭＬデータをＬＺ７７復号化するためのものであり、ＸＭＬデータを取得する。この圧縮されたＸＭＬデータは、標識データを含む。
【００３８】
標識データブロック検出装置５０８は、ブロックヘッダデコーダ５０２により提供されるヌルデータブロックのブロックヘッダから標識データを取得し、それをアナライザ５１２に送信するためのものである。当該デコンプレッサ５００と標識データブロック検出装置５０８は一緒になって、圧縮されたＸＭＬデータを解凍するデータ処理装置を構成する。
【００３９】
アナライザ５１２は、ある状態に基づき標識データのコンテンツを変更し、対応するスキップ信号を生成し、それを有限状態マシーン５１０に送信する。上記状態は、アナライザ５１２のあるアプリケーション、すなわち、ワード‘ｃａｒ’などのアナライザ５１２により所望されるデータに対応する。標識データの変更は２つの結果を有する可能性があり、１つは標識データのコンテンツを実行し、すなわち、対応するスキップ信号は有限状態マシーン５１０がある関連性のないデータを破棄することを要求し、もう１つは標識データをスキップし、すなわち、対応するスキップ信号のコンテンツがヌルである。
【００４０】
有限状態マシーン５１０は、データブロック信号と変更された標識データコンテンツ、すなわち、スキップ信号に基づき、対応する圧縮されたＸＭＬデータを破棄する。このアナライザ５１２と有限状態マシーン５１０は一緒になって、標識データに従って対応する圧縮されたＸＭＬデータを破棄する破棄装置を構成する。
【００４１】
図６は、本発明の実施例の解凍方法のフローチャートである。まず、圧縮されたＸＭＬデータが受信され（ステップＳ６０２）、当該圧縮されたＸＭＬデータは、標識データブロックを含む。
【００４２】
その後、圧縮されたＸＭＬデータの解凍は、以下を含む。
【００４３】
ヌルデータブロックを検出し、データブロック信号を生成するため、圧縮されたＸＭＬデータがブロックヘッダ復号化され（ステップＳ６０４）、例えば、データブロック１のブロックヘッダ復号化により、データブロック１のデータブロック信号が生成される。
【００４４】
標識データブロックが検出され（ステップＳ６０６）、標識データブロックが検出される場合、データブロック１のコンテンツがブロックヘッダ復号化され、当該データブロックが標識データブロックであるということを意味するヌルであると判明する場合、‘Ｃ’などのデータブロック１のブロックヘッダから標識データのコンテンツが取得される（ステップＳ６１０）。
【００４５】
ステップＳ６０６において標識データブロックが検出されない場合、次のデータブロック、すなわち、データブロック２が検出され、データブロック２が標識データブロックでないと判明する場合、それをハフマン復号化し（ステップＳ６１２）、その後ＬＺ７７復号化し（ステップＳ６１４）、これにより、データブロック２のデータを取得する。
【００４６】
その後、アナライザの内部状態、すなわち、特定の状態と、標識データのコンテンツとに従って、スキップ信号を生成するか判断し（ステップＳ６１６）、すなわち、特定の状態に基づき標識データのコンテンツが変更される。この特定状態とは、特定のアプリケーション、すなわち、ワード‘ｃａｒ’などのアナライザの内部状態により所望されるデータであり、その後、標識データ‘Ｃ’に基づき標識データのコンテンツが変更され、すなわち、スキップ信号が生成され、直接的に部分“Ｃ”にジャンプすることが求められる。
【００４７】
次に、例えば、ワード“Ｃａｒ”の検索時などに、データブロック信号とスキップ信号に基づき、関連のないデータブロックが破棄され（ステップＳ６１８）、“Ｃａｒ”が後のデータブロックに出現する文字‘Ｃ’から始まるワードであると判断し、これにより、関連のないデータブロックを破棄するため、スキップ信号が生成され、すなわち、データブロック３のデータブロック信号の出現前のデータブロック２のすべてのデータ（部分“Ｂ”）が破棄される。圧縮されたＸＭＬデータがブロック構造を有していないため、破棄された各データブロックは、当該データブロック信号に基づき制御される必要がある。
【００４８】
同様にして、上記に従って、データブロック３のブロックヘッダから標識データコンテンツ‘Ｅ’が取得され（ステップＳ６１０）、データブロック４のデータが取得され（ステップＳ６１４）、その後、標識データ‘Ｅ’とワード“Ｃａｒ”に基づき、どれが検索されているか判断される（ステップＳ６１６）。ワード“Ｃａｒ”は文字‘Ｅ’から始まるワードの前にあるため、スキップ信号は生成されない。その後、関連するデータブロック、すなわち、データブロック４が解析され（ステップＳ６２０）、最終的に、ワード“Ｃａｒ”などの解析されたＸＭＬデータが取得される。
【００４９】
ここで、対応する解凍されたＸＭＬデータの破棄は、変更された標識データコンテンツ、すなわち、スキップ信号に従って実行される。
【００５０】
ステップＳ６１６における判定結果が否定的なものである場合、すなわち、当該破棄が不要であることを意味する場合、関連するデータブロックが直接解析され（ステップＳ６２０）、解析されたＸＭＬデータが取得される（ステップＳ６２２）。
【００５１】
図７は、本発明の他の実施例の圧縮装置の構造ブロック図である。圧縮装置は、アナライザ７０２とコンプレッサ１００とを有する。
【００５２】
アナライザ７０２はさらに、実用のないデータ群を標識データマークとして取得し、同時にＸＭＬデータを受信する受信装置として動作する配置装置７０４と、対応する標識データをある個数の標識データマークの後方に挿入し、残りの標識データマークを実用のないデータ群と置換するデータ挿入装置とを有する。実用のないデータとは、タブマーク、スペースマーク、エンターマークなどのデータの１つである。
【００５３】
コンプレッサ１００は、圧縮されたＸＭＬデータを取得するため、標識データにより挿入されたＸＭＬデータを圧縮する。
【００５４】
図８は、本発明の他の実施例の圧縮方法のフローチャートである。まず、
＜Ｅｎｔｒｙ＞＜Ｗｏｒｄ＞→Ａｂａｃｋ＜／Ｗｏｒｄ＞＜Ｄｅｆｉｎｉｔｉｏｎ＞ｓａｌｄｉｕｆｈｃｎｗ＜／Ｄｅｆｉｎｉｔｉｏｎ＞＜／Ｅｎｔｒｙ＞．．．
＜Ｅｎｔｒｙ＞＜Ｗｏｒｄ＞→Ａｂａｃｋ＜／Ｗｏｒｄ＞＜Ｄｅｆｉｎｉｔｉｏｎ＞ｌｚｉｄｎｕｖｇｒｖｇｓ＜／Ｄｅｆｉｎｉｔｉｏｎ＞＜／Ｅｎｔｒｙ＞．．．
などのＸＭＬデータを受け付ける（Ｓ８０２）。
【００５５】
その後、ＸＭＬデータがＳＡＸ解析され、２０個の‘→’（タブマーク）、スペースマーク、エンターマークなどのグループなど、ＸＭＬデータの実用のないリテラルのグループが検出される。当該実用のない‘→’のグループが標識データマークとしてとられる（ステップＳ８０６）。
【００５６】
‘Ｃ’など、１４などのある個数の標識データマーク‘→’の後方に標識データが挿入され（ステップＳ８０８）、その後、スペースなど、残りの‘→’を他の実用のないデータに置換する（ステップＳ８０９）。取得されたＸＭＬデータは、
＜Ｅｎｔｒｙ＞＜Ｗｏｒｄ＞→＜！――Ｃ−
＞Ａｂａｃｋ＜／Ｗｏｒｄ＞＜Ｄｅｆｉｎｉｔｉｏｎ＞ｓａｌｄｉｕｆｈｃｎｗ＜／Ｄｅｆｉｎｉｔｉｏｎ＞＜／Ｅｎｔｒｙ＞．．．
＜Ｅｎｔｒｙ＞＜Ｗｏｒｄ＞→＜！――Ｅ――
＞Ｃａｒ＜／Ｗｏｒｄ＞＜Ｄｅｆｉｎｉｔｉｏｎ＞ｌｚｉｄｎｕｖｇｒｖｇｓ＜／Ｄｅｆｉｎｉｔｉｏｎ＞＜／Ｅｎｔｒｙ＞．．．
ここで、ＸＭＬデータは、‘→’（タブマーク）などの実用のないグループを取得するため解析することができ、その後、特定数の実用のないデータを標識データパックに変換し、標識データを標識データパックに配備する。このように取得されたＸＭＬデータは、上述のようなものとなる。
【００５７】
その後、標識データを含むＸＭＬデータが圧縮され、すなわち、標識データを含むＸＭＬデータがＬＺ７７符号化され（ステップＳ８１０）、ＬＺ７７符号化されたＸＭＬデータがハフマン符号化され（ステップＳ８１２）、ハフマン符号化されたＸＭＬデータがいくつかのデータブロックにパッキングされ（ステップＳ８１４）、最終的に、圧縮されたＸＭＬデータが取得される（ステップＳ８１６）。
【００５８】
ここで述べられるような標識データとデータブロックマークは、ＸＭＬデータが圧縮される前に、ＸＭＬデータに挿入される。ここで、挿入された標識データとデータブロックマークは、解凍装置にとって自明である。言い換えると、解凍装置は、それらを用いて特定のデータをスキップし、これにより、解凍装置の機能が向上する。
【００５９】
図９は、本発明の他の実施例の解凍装置の構造ブロック図である。当該解凍装置は、デコンプレッサ２００と、検出抽出装置９０４と、有限状態マシーン５１０と、アナライザ５１２とを有する。
【００６０】
デコンプレッサ２００は、圧縮されたＸＭＬデータを解凍する。圧縮されたＸＭＬデータは、元のＸＭＬデータに挿入される標識データを含む。デコンプレッサ２００は、同時に圧縮されたＸＭＬデータを受信する受信装置として動作する。
【００６１】
検出抽出装置９０４は、解凍されたＸＭＬデータから標識データマーク群を検出し、当該標識データマークに基づき標識データを取得し、当該標識データをアナライザ５１２に送信するのに利用される。同時に、検出抽出装置９０４は、標識データマーク信号を生成し、当該標識データマーク信号を有限状態マシーン５１０に送信する。デコンプレッサ２００と検出抽出装置９０４は、一緒になってデータ処理装置を構成する。
【００６２】
アナライザ５１２は、特定の状態に基づき標識データのコンテンツを変更する。この特定状態は、特定のアプリケーション、すなわち、アナライザ５１２により所望されるデータである。その後、標識データのコンテンツが変更され、対応するスキップ信号が生成され、有限状態マシーン５１０に送信される。
【００６３】
有限状態マシーン５１０は、標識データマーク信号と変更された標識データコンテンツ、すなわち、スキップ信号に基づき対応する圧縮されたＸＭＬデータを破棄する。アナライザ５１２と有限状態マシーン５１０は、一緒になって当該標識データに従って対応する圧縮されたＸＭＬデータを破棄する破棄装置を構成する。
【００６４】
図１０は、本発明の他の実施例の解凍方法のフローチャートである。まず、圧縮されたＸＭＬデータが受信され（ステップＳ１００２）、その後、圧縮されたＸＭＬデータが解凍され（Ｓ１００４）、解凍されたＸＭＬデータが取得される。
【００６５】
標識データが、特定のデータを識別するため、解凍されたＸＭＬデータから取得される。具体的ステップは以下のようになる。
【００６６】
ＸＭＬデータの“→”などの標識データマークが検出され（Ｓ１００６）、検出された場合、標識データマーク信号が生成される（ステップＳ１００８）。
【００６７】
“Ｃ”などのデータブロックマーク付けされた標識データが抽出される。
【００６８】
その後、アナライザの内部状態、すなわち、特定の状態と標識データのコンテンツに基づき、スキップ信号を生成するか判断される（ステップＳ１０１０）。すなわち、特定状態に基づき、標識データのコンテンツが変更される。言い換えると、標識データ“Ｃ”と特定のアプリケーション、すなわち、アナライザの内部状態により所望されるデータに従ってスキップ信号を生成するか判断される。例えば、ワード‘Ｃａｒ’の検索時には、“Ｃａｒ”が後方のデータブロックに出現する文字‘Ｃ’から始まるワードであると判断し、これにより、関連のないデータを破棄するため、スキップ信号が生成される。
【００６９】
次に、ステップＳ１０１０において、データを破棄することを求めるスキップ信号が生成される場合、データブロック信号とスキップ信号に従って関連のないデータブロックが破棄され（ステップＳ１０１２）、すなわち、次の標識データマーク信号の出現前のすべてのデータが破棄され、検出及び判定を継続するため、ステップＳ１００６に戻る。
【００７０】
同様に、次のデータブロックマーク、すなわち、次の“→”が検出されると、上記に従ってそれの後方の標識データコンテンツ‘Ｅ’が取得される（ステップＳ１００９）。標識データ“Ｃ”とあるアプリケーション、すなわち、アナライザの内部状態により所望されるデータに従ってスキップ信号を生成するか判断される（ステップＳ１０１０）。例えば、ワード‘Ｃａｒ’の検索時には、“Ｃａｒ”が文字“Ｅ”から始まるワードの前にあると判断され、スキップ信号は生成されない。その後、関連するＸＭＬデータブロックが解析され（ステップＳ１０１４）、最終的に、ワード‘ｃａｒ’など解析されたＸＭＬデータが取得される（ステップＳ１０１６）。
【００７１】
ここで、対応する解凍されたＸＭＬデータの破棄は、変更された標識データコンテンツ、すなわち、スキップ信号に従って実行される。
【００７２】
ステップＳ１００６又はＳ１０１０の判定結果が否定的なものである場合、関連のあるデータブロックが直接解析され（ステップＳ１０１４）、解析されたＸＭＬデータが取得される（ステップＳ１０１６）。
【００７３】
本発明の実施例から、ＸＭＬ入力データの関連のないデータブロックの解析を回避し、これにより、受信エンドでの処理をスピードアップすることにより、解析処理を迅速化することが可能であるということが理解できるであろう。ＸＭＬデータの関連のある部分のみが処理されるため、より大きなＸＭＬデータ入力を処理することが可能となる。送信されるすべてのＸＭＬデータは、大きなＸＭＬデータの１つの小さなデータブロックに分割することができ、これにより、小さなＸＭＬデータの１つの大きなデータブロックを処理するよりはるかに良好となる。なぜなら、前者は後者より圧縮のためのＺｌｉｂをより良く利用することができ、これにより帯域幅を節約することができるためである。
【００７４】
本発明は、比較的より大きなＸＭＬ入力データを圧縮し、このため、より良好な圧縮を行う。解凍装置は情報の再送を待機する必要がないため、解凍装置のストレージの圧縮されたＸＭＬデータは、当該情報への比較的より高速なアクセスを提供することが可能となる。
【００７５】
本発明における標識データによる挿入は、圧縮されたＸＭＬデータは、既存の解凍装置と互換性を有するように、既存の圧縮規格／方式と互換性がある。
【００７６】
本発明は、標識データとＸＭＬデータを１つのデータとしているため、標識データは、ＸＭＬデータのコンテンツが更新されているときでさえ、ＸＭＬデータのコンテンツと常に一致することが可能である。本発明は、追加的な送信チャネルを標識データに別々に割り当てる必要がないため、別のチャネルを介しデータを送信する余計なコストを節約することができる。また、ＸＭＬデータを挿入するとき、標識データがまたＺｌｉｂにより圧縮される。
【００７７】
本発明が特定の実施例により説明されたが、上記記載に従ってなされる多数の置換、変更及び変形が当業者に明らかであり、これらすべての置換、変更及び変形は、それが添付された請求項の趣旨及び範囲内に属するときには、本発明に含まれるであろう。
【図面の簡単な説明】
【００７８】
【図１】図１は、従来技術によるコンプレッサの構造図である。
【図２】図２は、従来技術による解凍装置のデコンプレッサ及びアナライザの構造図である。
【図３】図３は、本発明の実施例のコンプレッサの構造ブロック図である。
【図４】図４は、本発明の実施例の圧縮方法のフローチャートである。
【図５】図５は、本発明の解凍装置の構造図である。
【図６】図６は、本発明の実施例の解凍方法のフローチャートである。
【図７】図７は、本発明の他の実施例の圧縮装置の構造ブロック図である。
【図８】図８は、本発明の他の実施例の圧縮方法のフローチャートである。
【図９】図９は、本発明の他の実施例の解凍装置の構造ブロック図である。
【図１０】図１０は、本発明の他の実施例の解凍方法のフローチャートである。
【図１】
2007520112.tif 000004
【図２】
2007520112.tif 000005
【図３】
2007520112.tif 000006
【図４】
2007520112.tif 000007
【図５】
2007520112.tif 000008
【図６】
2007520112.tif 000009
【図７】
2007520112.tif 000010
【図８】
2007520112.tif 000011
【図９】
2007520112.tif 000012
【図１０】
2007520112.tif 000013
【国際調査報告】
2007520112.tif 000014
2007520112.tif 000015
2007520112.tif 000016