(57)【要約】本発明の第１の形態によれば、デジタル・デバイスにはデータ構造の構成要素を受信し、そのデータ構造の各一意の構成要素の発生頻度を決定し、クッキー表示を少なくとも一部はその一意の構成要素の発生頻度に基づいてその一意の構成要素のそれぞれに割り当て、事実上等価の形式のデータ構造のレシーバが発生頻度に基づくクッキー表示を使用してデータ構造を再構成することができる事実上等価の形式のデータ構造を暗黙的に送信するように設計されているデータ・トランスミッタが提供される。本発明の別の形態によれば、デジタル・デバイスには、事前決定された方法で送信されたデータ構造の一意の構成要素を受信し、受信した一意の構成要素に対応するクッキー表示を事前決定された送信方法の下でそれらの送信方法に従って推測し、データ構造の構成要素を代表的な形式で受信するように設計されているデータ・レシーバが提供される。一実施形態において、データ・レシーバは、代表的な形式で受信したデータ構造の構成要素を、推測されたクッキー表示に基づいて再構成するようにさらに設計されている。
2004528737.tif 000002
【特許請求の範囲】
【請求項１】
データ構造の複数の構成要素を受信することと、
前記データ構造内の各一意の構成要素の発生頻度を決定することと、
クッキー表示を、少なくとも一部は前記一意の構成要素の発生頻度に基づいて、前記一意の構成要素のそれぞれに割り当てることと、
前記データ構造を事実上等価の形式で暗黙的に送信することであって、前記事実上等価の形式の前記データ構造のレシーバが、前記発生頻度に基づくクッキー表示を使用してデータ構造を再構成することができる事実上等価の形式で暗黙的に送信すること
を含む方法。
【請求項２】
前記決定することと割り当てることが、構成要素が受信された際に、初期クッキー表示を各一意の構成要素に割り当てること、その一意の構成要素の発生頻度を追跡すること、およびデータ構造のすべての構成要素を受信したら直ちに一意の構成要素の発生頻度に基づいてその一意の構成要素のそれぞれに対する最後のクッキー表示を再割り当てすることを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記方法が、前記一意の構成要素の発生頻度に基づいて前記一意の構成要素の順序付けを含むことを特徴とする請求項２に記載の方法。
【請求項４】
前記方法が、前記データ構造が受信された際に、前記初期クッキー表示を使用して、そのデータ構造の前記構成要素を記憶することと、その記憶された初期クッキー表示を最後のクッキー表示とその後に置換することをさらに含み、前記送信することが、前記最後のクッキー表示を使用して、前記データ構造の構成要素を送信することを含むことを特徴とする請求項２に記載の方法。
【請求項５】
前記送信することが、レシーバに前記一意の構成要素の相応する最後のクッキー表示を推測できるようにするために、前記一意の構成要素のリストをそれらの発生頻度の順序で送信することをさらに含むことを特徴とする請求項４に記載の方法。
【請求項６】
１２８の最も頻繁に発生した一意の構成要素のクッキー表示がそれぞれ１バイトのサイズを有し、次の３２，６４０の最も頻繁に発生した一意の構成要素のクッキー表示がそれぞれ２バイトのサイズを有するように、クッキー表示が数値の形式であることを特徴とする請求項１に記載の方法。
【請求項７】
前記データ構造がＸＭＬデータ構造であり、前記構成要素がタグ名、属性名、および属性値を含むことを特徴とする請求項１に記載の方法。
【請求項８】
事前決定された方法で送信されたデータ構造の複数の一意の構成要素を受信することと、
受信した一意の構成要素に対する複数の対応するクッキー表示を、送信の事前決定された方法の下でそれらの送信方法に従って推測することと、
データ構造の構成要素を代表的な形式で受信することを含む方法。
【請求項９】
前記推測することが、複数の対応するクッキー表示を、一意の構成要素が送信される順序に基づいて推測することを含むことを特徴とする請求項８に記載の方法。
【請求項１０】
前記推測することが、送信された最初の１２８の一意の構成要素のそれぞれに対する一意の１バイトの数値表示と、送信された次の３２、４６０の一意の構成要素のそれぞれに対する一意の２バイトの表示とを推測することを含むことを特徴とする請求項９に記載の方法。
【請求項１１】
前記方法が、前記代表的な形式で受信された推測されるクッキー表示に基づいて、データ構造の構成要素を再構成することをさらに含む請求項８に記載の方法。
【請求項１２】
前記データ構造がＸＭＬデータ構造であり、前記構成要素がタグ名、属性名、属性値を含むことを特徴とする請求項８に記載の方法。
【請求項１３】
データ構造の複数の構成要素を受信し、前記データ構造内の各一意の構成要素の発生頻度を決定し、クッキー表示を少なくとも一部は前記一意の構成要素の発生頻度に基づいて、前記一意の構成要素に割り当て、前記データ構造を事実上等価の形式で暗黙的に送信し、前記送信が、前記事実上等価の形式にある前記データ構造のレシーバが前記発生頻度に基づくクッキー表示を使用してデータ構造を再構成することができるように送信するように設計された複数のプログラミング命令を記憶している記憶媒体と、
前記プログラミング命令を実行するために記憶媒体に結合された少なくとも１つのプロセッサとを含む装置。
【請求項１４】
前記構成要素が受信された際に、初期クッキー表示を各一意の構成要素に割り当てること、その一意の構成要素の発生頻度を追跡すること、およびデータ構造のすべての構成要素を受信したら直ちにその一意の構成要素の発生頻度に基づいて一意の構成要素のそれぞれに対する最後のクッキー表示を再割り当てすることによって、前記決定することと割り当てることを実行するように前記プログラミング命令が設計されることを特徴とする請求項１３に記載の装置。
【請求項１５】
前記プログラミング命令が、前記一意の構成要素をそれらの発生頻度に基づいて順序付けるようにさらに設計されていることを特徴とする請求項１４に記載の装置。
【請求項１６】
前記プログラミング命令が、前記データ構造の構成要素をそれらが受信された際に、前記初期クッキー表示を使用して記憶し、また、その後に前記記憶されている初期クッキー表示を最後のクッキーと置換するようにさらに設計されており、前記プログラミング命令が、前記データ構造の構成要素を、前記最後のクッキー表示を使用して送信することによって送信を実行することを特徴とする請求項１４に記載の装置。
【請求項１７】
前記プログラミング命令が、前記レシーバに前記一意の構成要素の対応する最後のクッキー表示を推測できるようにするために、前記一意の構成要素のリストをそれらの発生頻度の順序に送信するようにさらに設計されることを特徴とする請求項１６に記載の装置。
【請求項１８】
１２８の最も頻繁に発生した一意の構成要素のクッキー表示はそれぞれ１バイトのサイズを有し、次の３２，６４０の最も頻繁に発生する一意の構成要素はそれぞれ２バイトのサイズを有し、前記プログラミング命令がクッキー表示を数値形式で使用するように設計されることを特徴とする請求項１３に記載の装置。
【請求項１９】
前記プログラミング命令が、ＸＭＬデータ構造に関して前記受信、決定、割り当ておよび送信を実施するように設計される、前記構成要素がタグ名、属性名、および属性値を含むことを特徴とする請求項１３に記載の装置。
【請求項２０】
前記装置が無線携帯電話、パームサイズのパーソナル・デジタル・アシスタント、ノートブックサイズのコンピュータ、デスクトップ・コンピュータ、セットトップボックスおよびサーバの選択された１つであることを特徴とする請求項１３に記載の装置。
【請求項２１】
データ構造の複数の一意の構成要素を事前決定された方法で受信するように設計された複数のプログラミング命令を記憶している記憶媒体であって、前記受信された一意の構成要素に対する複数の対応するクッキー表示を、前記事前定義された送信方法の下でそれらの送信の方法に従って推測し、前記データ構造の構成要素を代表的な形式で受信する記憶媒体と、
前記プログラミング命令を実行するために、前記記憶媒体に結合されている少なくとも１つのプロセッサとを含む装置。
【請求項２２】
前記プログラミング命令が、複数の対応するクッキー表示を、前記一意の構成要素が送信される順序に基づいて、推測するように設計されていることを特徴とする請求項２１に記載の装置。
【請求項２３】
前記プログラミング命令が、送信された最初の１２８の一意の構成要素のそれぞれに対する一意の１バイトの数値表示と、送信された次の３２、４６０の一意の構成要素のそれぞれに対する一意の２バイトの表示とを推測するように設計されていることを特徴とする請求項２２に記載の装置。
【請求項２４】
前記プログラミング命令が、前記表示形式で受信された、前記データ構造の構成要素を、前記推測されたクッキー表示に基づいて再構成するにようにさらに設計されることを特徴とする請求項２１に記載の装置。
【請求項２５】
前記プログラミング命令が、ＸＭＬデータ構造に関して、前記受信、推測、および再構成を実施するように設計され、前記構成要素がタグ名、属性名および属性値を含むことを特徴とする請求項２１に記載の装置。
【請求項２６】
前記装置が、無線携帯電話、パームサイズのパーソナル・デジタル・アシスタント、ノートブックサイズのコンピュータ、デスクトップ・コンピュータ、セットトップボックスおよびサーバの選択された１つであることを特徴とする請求項２１に記載の装置。
【発明の詳細な説明】
【０００１】
（発明の背景）
１．発明の分野
本発明は、データ処理の分野に関する。より詳細には、本発明は、帯域幅縮小形式でデータ構造を送信することおよび受信することに関する。
【０００２】
２．背景情報
近年、インターネットおよびウェブ・ベースのアプリケーションの発達により、拡張可能マークアップ言語（ＸＭＬ）データ構造などの半構造化されたデータ構造は、データの送信と記憶のどちらに対しても業界標準機構となった。半構造化データ構造は、その拡張性、透過性、プラットフォーム独立性、および扱いやすさにより、他の従来型の固定かつ／または特定用途向けデータ構造よりも好まれる。これらのデータ構造により、別個に開発された２つのソフトウェア・プログラムは相互に通信できるようになる。しかし、これらの半構造化データ構造の伝送は少なくとも２つの欠点、すなわちａ）転送されるデータ構造のサイズと、ｂ）（特に受信側での）関連する処理コストである。
【０００３】
サイズ：ＸＭＬデータ構造などの半構造化データ構造は、他の従来型ぬ固定された特定用途向けデータ構造と比較すると、一般に非常に冗長である。多くのタグ名と属性名を何度も繰り返さなければならない。例えば、同じデータをＸＭＬで表わすには１００〜３００％のより多くのバイトが必要になる。さらに、多くの二重属性値があるのが一般的である。図４ａに示す例“従業員”ＸＭＬデータ構造を検討すると、タグ名“従業員”と属性名“従業員ＩＤ”および“タイトル”とが何度も繰り返されている。
【０００４】
処理コスト：ＸＭＬなどの半構造化データ構造は、構文解析するのに非常に費用が掛かる。通常、データ発信者はいくつかのストリングを連結したりそれらをストリームに送り込んだりしてデータ構造を直接的に構築するか、またはオブジェクト階層を構築し、次いでそれをストリングまたはストリームに直列化する。次いで、レシーバ・コードは、受信側で文字をトークン化するための空間を順次探すためにこのデータ・ストリング／ストリームをスキャンし、各タグ名と属性とを既知のキーワードと比較しなければならない。さらに、このような構文解析には、特に各トークンが別個のストリング・オブジェクトとして記憶されている場合には大量のメモリーが必要となる。
【０００５】
これらの欠点は、特にＣＰＵの能力が限られており、データ伝送速度の遅い小さいメモリを有する（無線携帯電話およびパームサイズのパーソナル・デジタル・アシスタントなどの）小さなデバイスの場合には問題である。日本電信電話株式会社−ＤｏＣｏＭｏのｉＭｏｄｅなどの用途によっては、その用途の事業者がパケット・ベースでサービスに課金するので、運営費用が非常に高くなる場合がある。
【０００６】
したがって、このようなデータ構造を伝送するためのより効果的な手法が望まれる。
【０００７】
（発明の概要）
本発明の第１の態様によれば、データ・トランスミッタが、データ構造の構成要素を受信し、そのデータ構造内の各一意の構成要素の発生頻度を決定し、クッキー表示を少なくとも一部はその一意の構成要素の発生頻度に基づいて一意の構成要素のそれぞれに割り当て、事実上等価の形式のデータ構造のレシーバが発生頻度に基づくクッキー表示を使用してデータ構造を再構成することができる事実上等価の形式でデータ構造を暗黙的に送信するように設計されている。
【０００８】
本発明の別の態様によれば、データ・レシーバは、事前決定された方法で送信されたデータ構造の一意の構成要素を受信し、事前決定された送信方法の下でその方法に従って受信された一意の構成要素に対応するクッキー表示を推測し、表示形式でデータ構造の構成要素を受信するように設計されている。一実施態様において、データ・レシーバは、表示形式で受信されたデータ構造の構成要素を、推測されたクッキー表示に基づいてさらに再構成するように設計されている。
【０００９】
一実施態様のデータ構造はＸＭＬデータ構造である。構成要素には、タグ名、属性名および属性値が含まれる。
【００１０】
一実施態様におけるデジタル・デバイスにはデータ・トランスミッタが設けられる。別の実施態様におけるデジタル・デバイスにはデータ・レシーバが設けられる。さらに別の実施態様では、デジタル・デバイスはその両方を備えている。
【００１１】
一実施態様におけるデジタル・デバイスは無線携帯電話である。別の実施態様のデジタル・デバイスは、パームサイズのパーソナル・デジタル・アシスタント、ノートブックサイズのコンピュータ、デスクトップ・コンピュータ、セットトップボックスまたはサーバである。
【００１２】
本発明を、同じ参照番号が同様の要素を示す添付の図面に示す、限定的ではない例示的実施形態によって説明する。
【００１３】
（発明の詳細な説明）
以下の説明では、本発明の様々な形態を説明する。しかし、本発明が、本発明の一部だけまたはすべての形態によって実施することができることが当業者には明らかになるだろう。説明の目的で、本発明の完全な理解を与えるために特定の数、材料および構成を述べる。しかし、本発明は特定の詳細なしに実施することができることも当業者には明らかになるだろう。他の場合には、本発明が不明瞭にならないように、よく知られた特徴は省略または簡約化する。
【００１４】
説明の一部を、データ構造、タグ名、属性名などの、当業者が別の当業者に自分の作業内容を伝達するために一般に使用する用語を使用して提示する。説明の一部を、コンピュータ・デバイスによって実施される動作に関しては、受信すること、決定すること、送信することなどの用語を使用することによって提示する。当業者にはよく理解されるように、それらの数量および動作は、デジタル・システムの機械的構成部品および電気的構成部品によって記憶され、転送され、結合され、あるいは他の操作を受けることが可能な電気信号、磁気信号、光信号の形態をとる。デジタル・システムという用語は、スタンドアロンの、付加的な、または埋め込まれた、汎用ならびに専用のコンピュータ・マシン、コンピュータ・システムなどを含むものとする。
【００１５】
本発明を理解するために最も有用な方法で様々な動作を説明するが、この説明の順序は、動作が順序に依存することを必要とすることを意味するものとして理解されるべきではない。さらに、“一実施形態において”という語句が繰り返し使用されるが、この語句は同じ実施形態を意味する場合もあるが、必ずしもそれを意味するものではない。
【００１６】
（概要）
一実施形態による本発明の概要を示すブロック図を示す図１を次に参照する。図示するように、本発明の一形態によれば、データ・センダー１０４などのデータ送信アプリケーションを支援し、データ構造１０６として表わされるＸＭＬデータ構造などの半構造化されたデータ構造をより高効率で簡潔に、かつ帯域幅を縮小した方法で送信するために、データ・センダー・システム１０２には本発明のデータ・トランスミッタ１０８が設けられている。以下でより詳細に説明するように、データ・トランスミッタ１０８は、データ構造１０６の“トークン”、すなわちデータ要素の発生頻度に基づくクッキー表示を代わりに送信することによって、データ構造１０６の送信を所望の方法で遂行する。例示された実施形態の場合、ディクショナリ１１０とアレイ１１２を使用して、発生頻度に基づくクッキー表示の新規の送信が実施される。以下で詳細に説明するように、“トークン”を符号化するための発生頻度に基づくクッキー表示を記憶するためにディクショナリ１１０が使用され、アレイ１１２は符号化された“トークン”、すなわちそれらのクッキー表示を記憶するために使用される。
【００１７】
本発明の別の形態によれば、前述の効率よい方法で送信されたデータ構造１０６を受信する際に最終的なデータ・レシピエント１１８を支援するために、データ・レシーバ・システム１１４には、補完的に装備されるデータ・レシピエント１１６が設けられている。例示される実施形態の場合、データ・レシーバ１１６は、以下でより詳細に説明するようにデータ・トランスミッタ１０８によって提供されるディクショナリ１１０を使用する支援を遂行する。
【００１８】
センダー・システム１０２とレシーバ・システム１１４へのデータ・トランスミッタ１０８とデータ・レシーバ１１６のそれぞれの準備以外には、センダー・システム１０２とレシーバ・システム１１４は、他の場合に、限定はしないが、無線携帯電話、パームサイズのパーソナル・デジタル・アシスタント、ノートブックサイズのコンピュータ、デスクトップ・コンピュータ、セットトップボックス、サーバなどを含めて当技術分野で知られている広範囲のデジタル・デバイスを表わすことを意図している。勿論、センダー・システム１０２とレシーバ・システム１１４には、それぞれにデータ・レシーバ１１６とデータ・トランスミッタ１０８もさらに設けられる場合があり、したがってこれらのシステムはある時点ではデータ・センダーの役割で、またある時点ではデータ・レシーバの役割で機能することが可能になる。これらの実施形態の場合、勿論、データ・トランスミッタ１０８とデータ・レシーバ１１６は、本発明の送信機能と受信機能の両方を有する結合されたユニットまたは結合された構成部品、すなわちデータ・トランシーバとすることができる。一方、別の実施形態において、データ・センダー１０４とデータ・トランスミッタ１０８は異なるシステムとして配置することができる。同様に、データ・レシーバ１１６とデータ・レシピエント１１８も、異なるシステムとして配置することができる。
【００１９】
さらに、センダー・システム１０２とレシーバ・システム１１４は、無線または有線ベースの通信インターフェースの任意の１つを介して、通信プロトコルの任意の１つを使用して相互に結合することができる。例えば、通信インターフェースは、ＴＣＰ／ＩＰ通信プロトコルを使用して、ＧＳＭ、ＣＤＭＡまたはＷＣＤＭＡ信号プロトコルに従って信号送受する無線媒体であってもよい。あるいは、通信は、ここでもＴＣＰ／ＩＰ通信プロトコルを使用し、イーサネット（登録商標）信号プロトコルに従って信号送受する有線ベースの媒体であってもよい。一般に、当業者が理解するように、本発明は、任意の通信媒体上で任意の通信／信号プロトコルによって実施することができる。
【００２０】
同様に、理解しやすいように、本発明はＸＭＬデータ構造を参照しながら説明し、例をＸＭＬによって表現するが、本発明が、限定はしないがＨＴＭＬまたはＷＭＬ符号化内容を含めて他のデータ構造上でも実施可能なことを当業者ならば理解するだろう。
【００２１】
（方法）
一実施形態に従って本発明の新規のデータ送信および受信方法をさらに詳細に例示する２つのブロック図を示す図２ａ〜２ｂを次に参照する。図２ａに示すように、ブロック２０２で、データ・センダー１０４は、従来技術と同様に“透過的に”平文形式でデータ構造の構成要素１０６（ＸＭＬ構造の場合に、タグ名、属性名および属性値など）を送信する。すなわち、レガシー・データ・センダー１０４は、その動作にいかなる調製を行うことも必要とせず、また本発明実施を認識することを必要とせずに、従来技術と同じようにデータを送信し続けることができる。しかし、代わりの実施形態では、本発明を認識するデータ・センダー１０４は、データ構造１０６のデータ要素をトークン形式で送信することもできる。本発明によれば、データ・トランスミッタ１０８によってデータ要素が受信され、平文テキスト形式で受信された場合は、トークン形式に変換される。データ・トランスミッタ１０８は、当技術分野で知られている多数の構文解析技法の１つを使用して、受信したデータ構造１０６を構文解析してそのデータ要素を“トークン化”する。図４ａに１例として示した“従業員”ＸＭＬデータ構造４００の例を使用すると、例示的構造４００の構成要素、すなわち“＜”、“従業員”、“＞”などがデータ・センダー１０４によって“透過的に”送信されるので、データ・トランスミッタ１０８は図４ｂに例示するように、構成要素を“トークン”として受信する。
【００２２】
図２ａ〜２ｂをもう一度参照すると、ブロック２０４で、データ・トランスミッタ１０８はクッキー表示によって“トークン”を符号化する。より重要なのは、クッキー表示は機能的にデータ構造１０６において一意の“トークン”の発生頻度に依存するものである。図４ａに１例として示した“従業員”ＸＭＬデータ構造４００の例を再び使用すると、構成要素は図４ｆに例示するように、図４ｅの発生頻度に基づくクッキー表示を使用して符号化される。例えば、トークン“＞”がデータ構造４００の例のトークン中で最も頻繁に発生するトークン（８回）の場合にはトークン“＞”はクッキーの数値表示“１”によって符号化され、トークン“＝”が例のデータ構造４００のトークン中で次に最も頻繁に発生するトークン（６回）の場合にはトークン“＝”はクッキーの数値表示“２”によって符号化され、というように行われる。［結合は任意に中断される。］一実施形態において、以下で詳細に説明される符号化は多段階プロセスである。
【００２３】
したがって、本発明の新規の発生頻度に基づく符号化方式のこの実施形態の下で、最も頻繁に発生するトークンは、（送信されているデータ構造に対して使用される他のクッキーの数値表示に比べて）最低の数値を有するクッキーの数値表示によって符号化され、次に頻繁に発生するトークンは、次に低い数値を有するクッキーの数値表示によって符号化され、というように行われる。
【００２４】
この方式の下で、第１の最も頻繁に発生する１２７の一意のトークンを、各トークンに１バイトの帯域幅を使用して、すなわち１バイトのサイズを有する１つのデータとして各トークンによって送信することができ、次の３２，６４０の最も頻繁に発生する一意のトークンを、各トークンに２バイトの帯域幅を使用して、すなわち２バイトのサイズを有する１つのデータとして各トークンを送信することができることを当業者なら理解するだろう。２つの形式を、例えば最も有意なビットを使用して区別することができる。その結果、より低頻度に発生するトークンが２バイトの符号化によって送信される一方で、より頻繁に発生するトークンが１バイトの符号化によって送信されるので、必要とされる帯域幅を縮小しながら、データ構造を有利に送信することができる。
【００２５】
もう一度図２ａ〜２ｂを参照すると、ブロック２０６で、データ・トランスミッタ１０８は一意の“トークン”を送信し、それらのクッキー表示をデータ・レシーバ１１６に“伝達”する。一実施形態において、“トークン”のクッキー表示は暗黙的に伝達される。すなわち、クッキー表示は明示的に送信されないということである。その代わり、一意の“トークン”が事前決定された方法で送信され、データ・レシーバ１１６はこのクッキー表示を、一意の“トークン”が事前決定された方法の下で送信される方法から推測する。ここでもまた、図４ｅに示す例の符号化を参照すると、トークン“＞”、“従業員”などはそれらの発生頻度の順序で送信され、それに従って、それらのクッキー表示、すなわち“１”、“２”などをそのトークンの送信位置から推測することができる。
【００２６】
その後、ブロック２０８で、データ・トランスミッタ１０８は“トークン”をそれらの符号化された表示形式で送信する。一実施形態において、データ・トランスミッタ１０８はトークン（それらの符号化を暗黙的に伝達する）とその符号化された表示を（以下でより完全に説明する）１つの連続したストリングまたはストリームとして送信する。ブロック２１０で、一意のトークンのリスト（およびそれらの符号化）と符号化された表示の受信の際に、データ・レシーバ１１６は元のデータ構造を再構成する。すなわち、最終的なデータ・レシピエント１１８に対して受信した符号化表示に基づいて元のデータ要素と一意のトークン（およびそれらの対応する符号化表示）を再生成する。その結果、送信されたデータ構造を受諾するために受信側に必要とされる処理量も有意に低減される。さらに、そのトークンを元のデータ要素に再マップして戻すことにより、この方法をレガシー・データ・レシーバに対して透過的とすることができる。しかし、代わりの実施形態において、データ・レシーバ１１６を認識するデータ・レシピエント１１８は本発明をさらに利用し、受信したデータ構造を記憶するために使用されるそのストレージを、元のデータ要素を再構成せずに、データ・レシーバ１１６に受信したデータ構造をトークン形式で提供させることによって低減することができる。
【００２７】
図２ｂに、ブロック２０４の符号化の動作を一実施形態に従ってより詳細に示す。図示するように、ブロック２２２および２２４で、データ・トランスミッタ１０８は、トークンが受信され／識別される際に初期の符号化によってトークンをまず符号化し、その受信され／識別されたトークンをそれらの表示形式で記憶する。さらに、データ・トランスミッタ１０８は、遭遇した一意のトークン、その初期符号化、およびより詳細には一意のトークンの発生頻度のそれぞれを追跡する。例示する実施形態の場合、初期の符号化は単に一意のトークンに遭遇した順序であるにすぎない。例えば、“従業員”という図４ａのＸＭＬデータ構造に関して、使用される初期符号化は図４ｃに例示されている。すなわち、トークン“＜”は、最初に遭遇されるのでクッキーの数値表示“０”によって符号化され、トークン“従業員”は、次に遭遇されるのでがクッキー数値表示“１”によって符号化され、といういうように行われる。したがって、例の“従業員”ＸＭＬデータ構造４００を、図４ｄに示すように、アレイ４３０ａ（図１のアレイ１１２に相当する）記憶することができる。
【００２８】
したがって、すべてのトークンすなわち送信されているそのデータ構造のデータ要素を受信する際、データ構造の一意のトークンの発生頻度が確立される。例えばＸＭＬデータ構造４００は、図４ｃに示すように、トークン“＜”は４回発生し、トークン“従業員”は１回発生し、トークン“＞”は８回（最多頻度）発生するなどのように確立されるであろう。
【００２９】
その後、ブロック２２６および２２８で、データ・トランスミッタ１０８は、初期のクッキー表示を機能的に一意のトークンの発生頻度に依存する置換クッキー表示に置き換え、それらの表示形式に記憶された“トークン”が新しい表示に再マッピングされる。例えば、置換クッキー表示“１”は、最も頻繁に発生するトークン“＞”にクッキーの初期表示“２”を置換するように割り当てられ、置換クッキー表示“２”は、２番目に頻繁に発生するトークン“＝”にクッキーの初期表示“６”を置換するように割り当てられる、というように行われる。それに対応して、それらの初期表示に記憶されたトークン（図４ｄ）は、置換表示（図４ｆ）に再マップされる。例えば再マッピングは、当技術分野で知られている再マッピング・ベクトル（図示せず）の支援により実施することができる。
【００３０】
したがって、本発明の符号化または圧縮演算を、比較的低容量のメモリと低い処理要件を有する比較的単純明瞭な方法で実施することができることが分かる。したがって、送信用のデータ要素を（所望の帯域幅消費の低減を達成するために）“圧縮する”ために送信側に要求されるメモリ容量と処理量も、本発明の下で、“Ｚｉｐ”などの当技術分野で知られれている他の圧縮技術よりも有利に縮小される。
【００３１】
（データ構造）
図３ａ〜３ｃに、一実施形態に従って本発明を実施するために使用するのに適したいくつかの例示的データ構造を示す。図３ａに、少なくとも３つの列３０２〜３０６を有する、（前述の実施形態の２つのステップに対する初期ならびに最終の）クッキー表示、表わされたトークン、およびそれらの発生頻度を記憶するためにデータ・トランスミッタ１０８によって使用するのに適した例示的な表３００を示す。列３０６のない例示的な表３００の簡略版を、クッキー表示および表示された一意のトークンを記憶するためにデータ・レシーバ１１６によって使用することができる。図３ｂに、送信されているデータ構造のトークンの符号化された表示（ｃ０、ｃ１、ｃ２など）を記憶するためにデータ・トランスミッタ１０８によって使用するために適した番号記憶スロットを有する例示的アレイ３１０を示す。図３ｃに、２つのセクション３２２と３２６とを有し、区切り記号３２４ａ〜３２４ｂによって分離されており、一意のトークン（およびそれらの符号化する表示を暗黙的に伝達する）と、送信されているデータ構造のトークンの符号化された表示とを送信するためにデータ・トランスミッタ１０８によって使用されるのに適した例示のストリングまたはストリーム３２０を示す。例示した実施形態の場合、第１のセクション３２２は一意のトークンを送信するために（また、それらの符号化された表示を暗黙的に伝達するために）使用される。各一意のトークンの前にはそのトークンのサイズが先行する。例えば、トークン“＜”の前にはトークン・サイズ値“０×０１”が先行し、トークン“＜／”の前にはトークン・サイズ“０×０２”が先行し、というように（図４ｇに例示するように）行われる。そのトークン“＜”に対する復号化表示は、そのトークンが第１の送信位置で送信されることによって推定されるように“１”であり、トークン“＜／”に対する符号化の表示は、そのトークンが第３の送信位置に送信されることによって推定されるように“３”である、というように行われる。図３ｃを再び参照すると、図示するように、送信されているデータ構造のトークンの符号化された表示を送信するために第２のセクション３２６が使用される。
【００３２】
（例示的デジタル・デバイス）
図５に、一実施形態に従って本発明を実施するために使用するのに適した例のコンピュータ・デバイスを示す。図示するように、コンピュータ・デバイス５００には、汎用プロセッサ５０２、デジタル信号プロセッサ（ＤＳＰ）５０４、およびシステム・メモリ５０６が含まれる。さらに、デバイスまたはシステム５００には、（キーボード、カーソル制御などの入出力デバイスとインターフェースするための）ＧＰＩＯ  ５０８と、（ネットワーク・インターフェース・カード、モデム、無線トランシーバなどの）通信インターフェース５１０が含まれる。これらの要素は、１つまたは複数のバスを表わすシステム・バス５１２を介して相互に結合される。複数のバスがある場合、これらは１つまたは複数のブリッジ（図示せず）によってブリッジされる。より重要なのは、デバイスまたはシステム５００に、前述のより効率よい構成要素発生頻度に基づく圧縮形式で、データ構造を送受信するために本発明の教示に組み込まれるデータ・トランシーバ５１４が設けられる。
【００３３】
プロセッサの数とタイプ、メモリのサイズ、ならびに使用される他の要素の数は、通常、例のコンピュータ・デバイス５００の意図される用途に基づいている。例えば、無線携帯電話またはパームサイズのパーソナル・デジタル・アシスタントとして使用される場合、比較的低性能のプロセッサと低容量のメモリが使用されるであろう。一方、ノートブック・コンピュータまたはセットトップボックスとして使用される場合、比較的高性能のプロセッサとより容量の大きなメモリが使用され、また大量記憶デバイスが追加的に使用される可能性もある。デスクトップ・コンピュータまたはサーバとして使用される場合、複数の高性能プロセッサが使用される可能性があるが、代わりにＤＳＰ  ５０４を使用しない場合もある。
【００３４】
それらの要素のそれぞれは、当技術分野で知られているその従来型機能を実施する。具体的には、プログラミング命令が実施するデータ・トランシーバ５１４のコピーを記憶するためにシステム・メモリ５０６が使用される。本発明の送信および受信の教示に組み込まれた新しいデータ・トランシーバ５１４をホストするためのその使い方を除けば、これらの要素５０２〜５１２の構成は知られており、したがって、これ以上は説明しない。
【００３５】
（結論および結び）
以上、構成要素発生頻度に基づく圧縮された形式でデータ構造を送受信するための方法および装置を説明した。前述のように、本発明は、送信されるために必要とされるバイト数ならびにセンダー・システムおよびレシーバ・システムに必要とされるメモリ容量と処理量を有意に低減するものである。
【００３６】
前記例示の実施形態に関して本発明を説明したが、本発明が説明した実施形態に限定されるものでないことを当業者ならば理解するだろう。本発明は、修正形態および変形形態によって頭書の特許請求の範囲の趣旨および範囲内で実施することができる。したがって、この説明は、本発明を限定するものではなく、例示知るものとして解釈されたい。
【図面の簡単な説明】
【図１】
一実施形態による本発明の概観図である。
【図２ａ】、
【図２ｂ】
一実施形態による本発明の方法の概要を例示する図である。
【図３ａ】〜
【図３ｃ】
一実施形態に従い、本発明を実施する用途に適した例示的データ構造を例示する図である。
【図４ａ】〜
【図４ｇ】
ＸＭＬデータ構造の一例を送信するための本発明の一応用例を示す図である。
【図５】
一実施形態に従い、本発明を実施するのに適した例示的コンピュータ・デバイスのアーキテクチャの概要を示す図である。
【図１】
2004528737.tif 000003
【図２ａ】
2004528737.tif 000004
【図２ｂ】
2004528737.tif 000005
【図３ａ】
2004528737.tif 000006
【図３ｂ】
2004528737.tif 000007
【図４ａ】
2004528737.tif 000008
【図４ｂ】
2004528737.tif 000009
【図４ｃ】
2004528737.tif 000010
【図４ｄ】
2004528737.tif 000011
【図４ｅ】
2004528737.tif 000012
【図４ｆ】
2004528737.tif 000013
【図５】
2004528737.tif 000014
【国際公開パンフレット】
2004528737.tif 000015
2004528737.tif 000016
2004528737.tif 000017
2004528737.tif 000018
2004528737.tif 000019
2004528737.tif 000020
2004528737.tif 000021
2004528737.tif 000022
2004528737.tif 000023
2004528737.tif 000024
2004528737.tif 000025
2004528737.tif 000026
2004528737.tif 000027
2004528737.tif 000028
2004528737.tif 000029
2004528737.tif 000030
2004528737.tif 000031
2004528737.tif 000032
2004528737.tif 000033
2004528737.tif 000034
2004528737.tif 000035
2004528737.tif 000036
2004528737.tif 000037
2004528737.tif 000038
2004528737.tif 000039
2004528737.tif 000040
【国際調査報告】
2004528737.tif 000041
2004528737.tif 000042
2004528737.tif 000043