(57)【要約】本発明にしたがうシステムおよび方法は、システム間の通信を容易にするためのインターフェイスを与える。源システム（310）は、データをＸＭＬフォーマットへ変換し、データをシンクロナイザーインターフェイスツールへ伝送する。シンクロナイザーツールは、待ち行列（325）のような持続性中間メモリ内にデータを記憶し、源システムをオフラインにするか、またはそれに他のタスクを実行させる一方で、データを目標システムへ伝送する。シンクロナイザーツールは、目標システムへのデータの伝送を開始する。目標システムが、自分がデータを受信したことを示すとき、シンクロナイザーツールは、データを受信したことを示す肯定応答を源システムへ送る。目標システムが伝送を受信していないときは、シンクロナイザーツールは、現在の中間メモリ内にデータを維持し、目標システム（300）へのデータの伝送を再開する。
2005526301.tif 000002
【特許請求の範囲】
【請求項１】
情報を処理する方法であって、
源システムから共通のフォーマットの情報を受信することと、
情報を記憶することと、
情報を保持する一方で、目標システムへの情報の伝送を開始することと、
目標システムが情報を受信したことを示す目標システムの肯定応答を受信することと、
目標システムの肯定応答を受信したときに、源システムへ肯定応答を送ることとを含む方法。
【請求項２】
共通のフォーマットがＸＭＬフォーマットである請求項１記載の方法。
【請求項３】
目標システムがデータベースであり、情報がデータベースにおける複製のためのデータを含む請求項１記載の方法。
【請求項４】
情報が、目標システムへ方向付けられた命令であって、目標システムの肯定応答を送ることが、命令が処理されたことを示す請求項１記載の方法。
【請求項５】
インターフェイスにおいて情報を処理する方法であって、
源システムから第１のフォーマットのデータを受信することと、
持続性中間メモリにデータを記憶することと、
情報を保持する一方で、目標システムへの情報の伝送を開始することと、
目標システムへの情報の伝送が不成功であったという指標を受信することと、
目標システムへの情報の伝送を再開することとを含む方法。
【請求項６】
多数の目標システムと関係付けられている多数の源システムから受信したデータを記憶することと、
多数の源システムから、関係付けられている多数の目標システムへのデータの伝送を開始することとをさらに含む請求項５記載の方法。
【請求項７】
肯定応答を受信したことを示す源システムの肯定応答を受信することと、
持続性中間メモリからデータを取り出すこととをさらに含む請求項５記載の方法。
【請求項８】
源システムと目標システムとの接続と、
源システムからのデータを記憶するメモリと、
源システムからデータを受信し、データをメモリに記憶し、目標システムへのデータの伝送を開始し、目標システムから目標システムの肯定応答を受信し、肯定応答を源システムへ送るように構成されているプロセッサとを含むインターフェイス。
【請求項９】
プロセッサが、目標システムへのデータの伝送を再開するようにさらに構成されている請求項８記載のインターフェイス。
【請求項１０】
インターフェイスにおいて情報を処理するためのシステムであって、
源システムから共通のフォーマットの情報を受信するための手段と、
情報を記憶するための手段と、
情報を保持する一方で、目標システムへの情報の伝送を開始するための手段と、
目標システムが情報を受信したことを示す目標システムの肯定応答を受信するための手段と、
目標システムの肯定応答を受信したときに、源システムへ肯定応答を送るための手段とを含むシステム。
【請求項１１】
装置資源へのアクセスを可能にするためのコンピュータ実行可能指令であって、実行されるときに、
源システムから共通のフォーマットの情報を受信することと、
情報を記憶することと、
情報を保持する一方で、目標システムへの情報の伝送を開始することと、
目標システムが情報を受信したことを示す目標システムの肯定応答を受信することと、
目標システムの肯定応答を受信したときに、源システムへ肯定応答を送ることとを含む方法を実行するコンピュータ読み出し可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、2001年8月15日に出願され、現在審査中の仮出願第60/312,737号の特長に対して権利を主張しており、第60/312,737号は、本出願において参考文献として全体的に取り上げられている。
発明の分野
本発明は、概ね、システム間で通信することに関する。とくに、本発明は、システム間、またはデータベース間、あるいはこの両者間でのデータおよび情報の転送を助けるための通信インターフェイスに関する。
【背景技術】
【０００２】
セルラ電話、パーソナルディジタルアシスタント（personal digital assistant, PDA）、ページャ、無線接続されているラップトップ、等のような無線装置は、無線ネットワーク上で音声およびデータを含むパケットを通信する。これらの無線装置は、ローカルコンピュータプラットフォームへのアプリケーションプログラミングインターフェイス（“application programming interface, API”）をインストールし、ソフトウエアディベロッパーは、無線装置上で実行されるソフトウエアアプリケーションを生成することができる。ＡＰＩは、無線装置システムのソフトウエアと、ソフトウエアアプリケーションとの間に位置し、したがって、無線装置機能においてアプリケーションを使用可能にするのに、ソフトウエアディベロッパーは特定の無線装置システムのソースコードを保持していなくてもよい。
【０００３】
これらの無線装置は、一般に、他のシステム、および他のシステム内のデータベースと通信する必要がある。都合の悪いことに、無線装置は、通信中に信号を失ったり、さもなければ、他のシステムへ情報を伝送しているときは使用できなかったりすることがある。したがって、信号が失われているときに、データベースへのアクセスを試みるときに、エラーを生じることがある。無線装置は、信号が再び収集されたときに、データベースへのアクセスを再開し、データベースの要求を再提出しなければならない。
【０００４】
無線装置以外にも適用すると、多くの場合に、配線に基づくシステムは、互いに通信する必要はあるが、通信のために類似した“言語”を共用しない。例えば、無線装置に関して、一方のシステムは、別のシステムのデータベースと通信して、データを受信または挿入する必要がある。システムは、データベースと通信するために、データベース言語、記録およびフィールド構造、並びにフォーマットを認識して、データベース内の情報にアクセスして記憶しなければならない。現在の技術では、システムとデータベースとの間のインターフェイスが、データベースの言語、構造、およびフォーマットを含むことができるが、多数の固有のデータベース言語、等が恐らくは必要な多数のデータベースにアクセスする必要があるときは、これはより複雑になる。
【０００５】
さらに加えて、データが多数のシステムへ送られるか、または逆に、多数のシステムから受信されるとき、多数のシステム全体を統合して、データ伝送を簡単にする共通のインターフェイスは存在しない。したがって、いくつかの他のシステムと通信するシステムにおいて問題がある。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
したがって、この技術において、１つか、または多数のデータベース間の通信を簡単にして、多数のシステム間において確実で安全な情報転送を行なうインターフェイスが必要とされている。
この技術における現在の方法は、この必要に対処していない。多数のデータベースにアクセスする必要があるとき、データベースの複製サービスおよび注文製作のインターフェイスは、非常に複雑で扱い難くなる。さらに加えて、注文のデータベースにアクセスする全てのシステムは、そのインターフェイスをもたなければならない。その上、注文製作のデータベースは、トランザクションを行なうために、オンラインを維持しなければならない。
【０００７】
電子データ交換（Electronic Data Interchange, EDI）は、予め定められたメッセージタイプおよび電子商取引に特定の内容の必要にのみ対処する。ＥＤＩメッセージフォーマットは、無線サービス、システム統合の問題点、および請求書発行の特定性に関係するので、データ交換の必要に対処しない。
【課題を解決するための手段】
【０００８】
本発明にしたがうシステムおよび方法は、アプリケーションに関係する１組の許可に基づいて、装置の資源へのアプリケーションのアクセスを可能にすることによって、既存のシステムの欠点を克服する。
１つの実施形態では、本発明は、源システムから第１のフォーマットのデータを受信することと、持続性中間メモリ内にデータを記憶することと、情報を保持する一方で、目標システムへの情報の伝送を開始することと、目標システムへの情報の転送が不成功であったという指標を受信することと、目標システムへの情報の伝送を再開することとを含む。この方法は、多数の目標システムと関係付けられている多数の源システムから受信したデータを記憶することと、多数の源システムから、関係付けられている多数の目標システムへのデータの伝送を開始することとをさらに含む。さらに加えて、肯定応答を受信したことを示す源システムの肯定応答を受信することと、持続性中間メモリからデータを取り出すこととを含む。
【０００９】
本発明の他の目的、長所、および特徴は、図面の簡単な説明、発明を実施するための最良の形態、および特許請求の範囲に記載されていることを調べることによって明らかになるであろう。
添付の図面は、本明細書の一部分に取入れられ、かつそれを構成しているものであって、本発明の現在の好ましい実施形態を示し、かつこれまでの全体的な記述、および以下で記載される好ましい実施形態の詳細な記述と共に、本発明の原理を説明するのに役立つ。
【発明を実施するための最良の形態】
【００１０】
添付の図面では、いくつかの図面全てにおいて同じまたは対応する部分を同じ参照符号で示しており、添付の図面に示されている本発明の現在の例示的な好ましい実施形態をこれから詳しく参照することにする。本発明の特長、目的、および長所は、添付の図面に関連する次の詳細な記述を検討した後で、当業者にはより明らかになるであろう。
【００１１】
図１には、本発明の１つの実施形態が実行されるアーキテクチャが示されており、このアーキテクチャでは、無線ネットワーク14を介して、アプリケーションダウンロードサーバ16のような少なくとも１つのネットワークサーバと通信しているセルラ電話12のような１つ以上の無線装置を使用し、サーバは、無線ネットワーク14への無線通信ポータルまたは他のデータへのアクセスによって、選択的に、無線装置へのソフトウエアアプリケーションまたは他のデータをダウンロードするか、またはそれにアクセスする。図１に示されているように、無線装置は、グラフィックス表示部13を備えたセルラ電話12、ＰＤＡスクリーン19を備えたパーソナルディジタルアシスタント18、グラフィックス表示部21を備えたページャ20（ここでは、双方向テキストページャとして示されている）、あるいは無線通信ポータルおよび表示部23を備えているか、さもなければネットワークまたはインターネットへのワイヤード接続24を有する個別のコンピュータプラットフォーム22であってもよい。システム10は、無線通信ポータルを備えた任意の形式の遠隔コンピュータモジュールを含み、このような遠隔コンピュータモジュールには、無線モデム、ＰＣＭＣＩＡカード、アクセス端末、パーソナルコンピュータ、アクセス端末、表示部またはキーパッドを備えていない電話、あるいはこれらの組み合わせ、または部分的な組み合わせが、無制限に含まれる。
【００１２】
アプリケーションダウンロードサーバ16は、ここでは、ローカルサーバサイドネットワーク26上に、無線ネットワーク14と通信している他のコンピュータ素子と共に示されており、他のコンピュータ素子は、例えば、アプリケーションおよびデータ（例えば、無線装置12、18、20、22へアクセスおよびダウンロードできるソフトウエアアプリケーションおよびデータ）が記憶されているデータベース28である。
【００１３】
図２は、本発明の例示的な実施形態において、異なる無線装置、アプリケーションダウンロードサーバ、およびデータベースの間で通信する無線ネットワークのハードウエア構成要素のブロック図である。無線ネットワーク14は、単に例示的に示されているものであり、任意のシステムを含むことができ、したがって無線装置12、18、20、22のような遠隔モジュールは、互いに、または無線ネットワーク14の構成要素（無線ネットワークキャリアまたはサーバ、あるいはこの両者を無制限に含む）間で、あるいはこの両者間で空中で通信する。アプリケーションダウンロードサーバ（application download server, ADS）16および記憶されているアプリケーションデータベース28は、セルラデータネットワーク上に、セルラ遠隔通信サービスを供給しなければならない他の構成要素と共に存在する。サーバ32は、一方または他方の構成要素によって使用される他の機能（例えばアプリケーションダウンロードサーバのためのアプリケーション管理機能）を与える。サーバ32およびＡＤＳは、シンクロナイザーインターフェイスツール（図示されていない）を使用して、システム間でデータを通信する。システムのサーバまたは他の構成要素は、他のシステム（図示されていない）とインターフェイスして、データを送受信してもよい。シンクロナイザーツールは、これらの他のシステムとの通信を支援するのにも使用される。
【００１４】
アプリケーションダウンロードサーバ16、または他のサーバ、あるいはこの両者は、インターネット、セキュリティ保護されたＬＡＮ、ＷＡＮ、または他のネットワークのようなデータリンクを介して、キャリアネットワーク40と通信する。キャリアネットワーク40は、メッセージングサービス制御装置（messaging service network, MSC）42へ送られたメッセージ（一般には、データパケット）を制御する。キャリアネットワーク40は、ネットワーク、インターネット、および／または普通の従来の電話システム（plain ordinary telephone system, POTS）によってＭＳＣ42と通信する。一般に、キャリアネットワーク40とＭＳＣ42との間のネットワークまたはインターネット接続はデータを転送し、ＰＯＴＳは音声情報を転送する。ＭＳＣ42は、多数の基地局（multiple base stations, BTS）44に接続されている。キャリアネットワークと類似の様式では、ＭＳＣ42は、一般に、データ転送のためにネットワーク、またはインターネット、あるいはこの両者によってＢＴＳ44に接続され、かつ音声情報のためにＰＯＴＳに接続されている。ＢＴＳ44は、最終的に、ショートメッセージングサービス（short messaging service, SMS）か、または従来技術において知られている他の空中方法によって、セルラ電話12のような無線装置へ無線でメッセージを同報通信する。
【００１５】
セルラ電話12のような無線装置は、コンピュータプラットフォーム50を有し、コンピュータプラットフォーム50は、ソフトウエアアプリケーションを受信および実行し、かつアプリケーションダウンロードサーバ16から伝送されたデータを表示することができる。さらに加えて、コンピュータプラットフォーム50は、無線装置が、ネットワークサーバ上にあるデータおよびアプリケーションと対話できるようにする。コンピュータプラットフォーム50は、他の構成要素の中でも、とくに、ディスプレイドライバー52を含んでおり、ディスプレイドライバー52は、グラフィックス表示部13をドライブして、コンピュータプラットフォーム50で受信されたグラフィックデータに基づいてグラフィックス表示部13上に画像を与える。コンピュータプラットフォーム50は、特定用途向け集積回路（application-specific integrated circuit, ASIC）54、または他のプロセッサ、マイクロプロセッサ、論理回路、または他のデータ処理装置も含む。ＡＳＩＣ52は、無線装置の製造時にインストールされ、通常は、アップグレードできない。ＡＳＩＣ52または他のプロセッサは、アプリケーションプログラミングインターフェイス（application programming interface, API）層56を実行し、ＡＰＩ層56は、無線装置のメモリ58内の常駐のプログラムとインターフェイスする。メモリは、読取り専用メモリ（read-only memory, ROM）またはランダムアクセスメモリ（random-access memory, RAM）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュカード、またはコンピュータプラットフォームに共通のメモリで構成することができる。コンピュータプラットフォーム50は、ローカルデータベース60も含み、ローカルデータベース60は、メモリ58において積極的に使用されないソフトウエアアプリケーション（例えば、アプリケーションダウンロードサーバ16からダウンロードされたソフトウエアアプリケーション）を保持することができる。ローカルデータベース60は、一般に、１つ以上のフラッシュメモリセルから構成されているが、この技術において知られているような第２または第３の記憶装置、例えば磁気媒体、ＥＰＲＯＭ、ＥＥＰＲＯＭ、光媒体、テープ、またはソフトあるいはハードディスクであってもよい。
【００１６】
セルラ電話12のような無線装置は、ゲームおよび在庫モニターのような、多数の種類のアプリケーションか、または単に、ニュースおよびスポーツ関連データのようなデータにアクセスし、ダウンロードすることができる。ダウンロードされたデータは、表示部上に直ちに表示されるか、または使用されないときは、ローカルデータベース60内に記憶される。ソフトウエアアプリケーションは、無線装置12、18、20、22上にある正規のソフトウエアアプリケーションとしてみなすことができ、無線装置のユーザは、記憶されている常駐のアプリケーションをローカルデータベース60からメモリ58へ選択的にアップロードして、ＡＰＩ56上で実行することができる。無線装置12、18、20、22のエンドユーザは、ソフトウエアアプリケーションをローカルデータベース60から選択的に削除することもできる。
【００１７】
図３は、本発明の例示的な実施形態におけるシンクロナイザーツールインターフェイスのアーキテクチャを示すブロック図である。１つの実施形態では、シンクロナイザーツール305は、1つのＲＤＢＭＳシステム内のテーブルを、標準のＸＭＬインターフェイスを介して、宛先システムと同期させることができる。当業者には、ＸＭＬ言語が実行の選択であって、他の言語を使用してもよいことが分かるであろう。さらに、シンクロナイザーツールを使用して、ＲＤＢＭＳテーブルからの情報のみではなく、他の情報をコンピュータシステムまたはサブシステム間で同期させるか、あるいは通信させることも分かるであろう。さらに加えて、インターフェイス、目標システム、および源システムは、ＲＦ、衛星、および赤外線通信を含む無線に基づく通信方法、および配線に基づく通信方法のような、使用可能な通信媒体によって接続される。１つの実施形態では、通信媒体は、ＩＰベースである。
【００１８】
源システム310内のＲＤＢＭＳ320から受信されたデータは、シンクロナイザーツール305の待ち行列325内に記憶される。このデータは、ＸＭＬのような共通のファイルフォーマットへ変換される。待ち行列のような記憶機構を有することによって、源システム310がオフラインであっても、ＲＤＢＭＳ320のデータを維持することができる。さらに加えて、目標システム300へ送られたデータが、ＲＤＢＭＳ315内で複製されると、シンクロナイザーツール305は、源システム310へ肯定応答を供給するように構成される（目標システムは、シンクロナイザーツール305へ、この複製を行なったことを示す肯定応答を供給するか、データの受信に肯定応答するか、または他の処理を行なったことに肯定応答する）。
【００１９】
源システム310は、シンクロナイザーツール305へ接続される。この接続は、無線または有線、あるいはこの両者（または、その組み合わせ）に基づく接続を含む通信機構によって行われる。シンクロナイザーツール305は、源システム310に対してローカルであるか、または離れている。源システムは、この接続によって、シンクロナイザーへ情報を転送する。この情報は、遠隔データベースへの複製のデータであるか、または別のシステムへ向けられた任意のタイプの情報、例えばメッセージ要求、データ要求、または他のデータ転送であってもよい。１つの実施形態では、源システム310は、ＸＭＬフォーマットを使用して、この情報をシンクロナイザーツール305へ送る。
【００２０】
目標システムは、シンクロナイザーツール305から情報を受信し、シンクロナイザーツール305への肯定応答で応答する。その代りに、シンクロナイザーツールは、目標システム300内のサブシステム（例えば、ＲＤＢＭＳ315）と直接に対話し、データ複製のようなタスクを行なう。
【００２１】
目標システム300と源システム310の定義は、幾分、任意であることに注意すべきである。１つの例において、目標システムへデータを送る源システムであるシステムが、別の例では、別のシステムからデータを受信する目標システムとして働く。
図４は、本発明の例示的な実施形態におけるシンクロナイザーツールインターフェイスのプロセスを示すフローチャートである。この方法は、源システムがデータをＸＭＬフォーマットまたは他の共通のフォーマットへ変換すること（ステップ400）によって始まる。このデータは、目標システムのためのスカラーデータの形であってもよく、目標システムからの情報または他の情報に対する要求は、目標システムによって処理するために転送される。次に、データは、シンクロナイザーツールによって伝送され、受信される（ステップ405）。
【００２２】
このデータは、シンクロナイザーツール内の待ち行列のような、持続性中間メモリ内に記憶される（ステップ410）。したがって、源システムと目標システムとは若干の独立性が許される。源システムは、要求を行ない、待ち行列内にそれを記憶し、目標システムによって伝送された、または処理された、あるいは伝送され、かつ処理された要求を得る一方で、オフラインになることができる。さらに加えて、シンクロナイザーツールは、データを受信した源システムへ肯定応答を送ってもよい。
【００２３】
ＸＭＬフォーマット内のデータは、シンクロナイザーツールから目標システムへ伝送される（ステップ415）。“データ”は、目標システムへ送られることが望ましい情報の一部分であることに注意すべきである。これは、目標システムのＲＤＢＭＳへの複製のために使用されるデータであってもよい。その代りに、これは、目標システムへ送られ、目標システムによって処理できる任意のタイプの命令または情報であってもよい。さらに加えて、このデータを受信する多数の目標システムがある。シンクロナイザーツールは、多数の宛先への多数のデータ伝送要求（多数の目標システム宛先要求を含む）を待ち行列に入れる。
【００２４】
この方法では、ＲＤＢＭＳ上で変換された命令の開始を続行する（ステップ415）。この方法では、ＲＤＢＭＳに適切な言語へ命令を変換した後で、目標システムのＲＤＢＭＳへ直接にアクセスすることによって、または目標システム内の１つのであり、かつ命令を実行するためのプロセッサへ命令を送ることによって、この命令を開始する。
【００２５】
データが目標において受信されると（ステップ420）、“イエス”の分岐へしたがい、肯定応答が源システムへ送られる（ステップ425）。源システムは、この肯定応答を、ＸＭＬのような源システムによって読み出し可能なフォーマットへ整形する。源システムがオンラインでないときは、肯定応答は待ち行列へ入れられ、データが目標システムへ送られたことを源システムへ知らせる別の試みを、源システムに対して行なう。シンクロナイザーツールは、目標システムから肯定応答を受信することによって、データが受信されたかどうかを判断する。
【００２６】
ステップ420においてデータが目標で受信されていないと判断されると（これは、目標システムまたはＲＤＢＭＳがオフラインであるときに行われる）、“ノー”の分岐にしたがい、データは待ち行列内に残り、ステップ415に記載されているように、目標システムへのデータ伝送の開始を再び試みる（ステップ430）。目標システムへの別の伝送を開始するときを判断することを可能にする多くの待ち行列アルゴリズムおよび時間パラメータがある。好ましいアルゴリズムおよび時間は、処理容量、効率、使用可能な資源（例えば、使用可能な待ち行列メモリ）、および関係のある他のシステム実行係数に基づく。
【００２７】
本発明の実行についてのこれまでの記述は、説明および開示を目的として示されている。これは、網羅的ではなく、記載されている形そのものに本発明を制限していない。変更および変形は、上述の教示を考慮して可能であるか、または本発明を実行することによって得られる。例えば、記載されている実行はソフトウエアを含むが、本発明の１つの実施形態は、ハードウエアとソフトウエアの組合せとしてか、またはハードウエアのみで実行される。本発明は、オブジェクト指向のプログラミングシステムと、非オブジェクト指向のプログラミングシステムとの両者において実行される。さらに加えて、本発明の態様では、メモリに記憶されていると記載されているが、当業者には、他のタイプのコンピュータ読出し可能媒体（例えば、ハードディスク、フロッピーディスク、またはＣＤ−ＲＯＭのような補助記憶装置；インターネットまたは他の伝搬媒体からの搬送波；あるいは他の形態のＲＡＭまたはＲＯＭ）上にも記憶できることが分かるであろう。
【００２８】
さらに加えて、特許請求項およびそれに相当するものによって定められているように、本発明の技術的範囲から逸脱することなく、本明細書において種々の改変および変更を行なうことができることに注意すべきである。さらに加えて、本発明の要素は、単数で記載されているか、または権利を主張されているが、単数に限定することがはっきりと記載されていない限り、複数も含まれる。
【図面の簡単な説明】
【００２９】
【図１】本発明の例示的な実施形態において使用することができる無線ネットワーク、コンピュータハードウエア、および無線装置を示す図。
【図２】本発明の例示的な実施形態において、異なる無線装置、アプリケーションダウンロードサーバ、およびデータベース間の通信を与える無線ネットワークのハードウエア構成要素のブロック図。
【図３】本発明の例示的な実施形態においてシンクロナイザーツールインターフェイスのアーキテクチャを検出するブロック図。
【図４】本発明の例示的な実施形態においてシンクロナイザーツールインターフェイスのプロセスを示すフローチャート。
【符号の説明】
【００３０】
12・・・セルラ電話、13、21・・・グラフィックス表示部、16・・・アプリケーションダウンロードサーバ（ＡＤＳ）、18・・・パーソナルディジタルアシスタント、19・・・ＰＤＡスクリーン、20・・・ページャ、22・・・コンピュータプラットフォーム、23・・・表示部、24・・・ワイヤード接続、26・・・ローカルサーバサイドネットワーク、32・・・サーバ、50・・・コンピュータプラットフォーム。
【図１】
2005526301.tif 000003
【図２】
2005526301.tif 000004
【図３】
2005526301.tif 000005
【図４】
2005526301.tif 000006
【国際調査報告】
2005526301.tif 000007