(57)【要約】  ポータブルコンピュータ（１０６）を使用してサーバ（１０８）とデータトランザクション（２００）を実施する方法。本方法は、ポータブルコンピュータ中で、２つ以上のデータフィールドを含む所定のポータブルトランザクションファイルフォーマット（５００）を有する少なくとも１つのポータブルトランザクションファイル（１０４−１、１０４−２、１０４−３、１０４−ｎ）を受け取ることを含む。データフィールドは、特定サーバタイプ（１０８−１、１０８−２、１０８−３、１０８−ｎ）とのデータトランザクションセッション用のタイプ特有サーバプロトコルを定義するトランザクションパラメータのセットを含むことができる。汎用データトランザクションエンジン（３０２、３０３）を使用して、ポータブルトランザクションファイルが提供済みである任意のタイプのサーバとデータトランザクションセッションを実施することができる。
2009529162.tif 000002
【特許請求の範囲】
【請求項１】
ポータブルコンピュータを使用してサーバとデータトランザクションを実施する方法であって、
ポータブルコンピュータ中で、複数のデータフィールドを含む所定のポータブルトランザクションファイルフォーマットを有する少なくとも１つのポータブルトランザクションファイルを受け取ること、
前記データフィールドのうちの１つまたは複数において、前記ポータブルコンピュータと特定サーバタイプとの間のデータトランザクションセッション用のタイプ特有サーバプロトコルを定義するトランザクションパラメータセットを構成する複数のトランザクションパラメータを指定すること、
前記ポータブルトランザクションファイルに応答して任意の前記特定サーバタイプに関連する任意の前記データトランザクションセッション用にユニバーサルに構成可能である汎用データトランザクションエンジンを使用して、前記タイプ特有サーバプロトコルを定義するために前記ポータブルトランザクションファイルが提供済みである任意のサーバと、前記データトランザクションセッションを実施すること、を含む方法。
【請求項２】
前記サーバの動作特性のセットを定義する構成パラメータのセットを前記ポータブルコンピュータから通信することを含むように、前記データトランザクションセッションを選択することをさらに含む、請求項１に記載の方法。
【請求項３】
記憶済みデータを前記サーバから前記ポータブルコンピュータに通信することを含むように、前記データトランザクションセッションを選択することをさらに含む、請求項１に記載の方法。
【請求項４】
記憶済みデータを前記ポータブルコンピュータから前記サーバに通信することを含むように、前記データトランザクションセッションを選択することをさらに含む、請求項１に記載の方法。
【請求項５】
前記トランザクションパラメータセットを定義して、少なくとも（１）前記サーバと通信するのに必要とされる接続プロパティのセット、（２）前記サーバを制御するためのコマンドのセット、（３）要求のシーケンス、（４）各要求が行われる前に満たされるべき前提条件のセット、（５）前記サーバから情報を得るための照会のセット、および（６）エラーシナリオパラメータのセットを指定することをさらに含む、請求項１に記載の方法。
【請求項６】
構成可能な無線機、ＰＥＤ、セキュリティシステム、およびデータ収集デバイスからなるグループから前記サーバを選択することをさらに含む、請求項１に記載の方法。
【請求項７】
サーバとデータトランザクションを実施するためのポータブルコンピュータであって、
複数のデータフィールドを含む所定のポータブルトランザクションファイルフォーマットを有する少なくとも１つのポータブルトランザクションファイルを収容するデータストアを前記ポータブルコンピュータ中に備え、前記ポータブルトランザクションファイルは、前記ポータブルコンピュータと特定サーバタイプとの間のデータトランザクションセッション用のタイプ特有サーバプロトコルを定義するトランザクションパラメータセットを構成する複数のトランザクションパラメータを、１つまたは複数の前記データフィールド中で指定し、前記ポータブルコンピュータはさらに、
任意の前記特定サーバタイプに関連する任意の前記データトランザクションセッションを実施するための前記タイプ特有サーバプロトコルを定義するように、前記ポータブルトランザクションファイルに応答してユニバーサルに構成可能な汎用データトランザクションエンジンと、
前記ポータブルトランザクションファイルが提供済みである任意のサーバと前記データトランザクションセッションを実施するための少なくとも１つのデータ通信システムとを備える、ポータブルコンピュータ。
【請求項８】
前記データトランザクションセッションは、前記サーバの動作特性のセットを定義する構成パラメータのセットを前記ポータブルコンピュータから前記サーバに通信することを含む、請求項７に記載のポータブルコンピュータ。
【請求項９】
前記データトランザクションセッションは、記憶済みデータを前記サーバから前記ポータブルコンピュータに通信することを含む、請求項７に記載のポータブルコンピュータ。
【請求項１０】
前記データトランザクションセッションは、記憶済みデータを前記ポータブルコンピュータから前記サーバに通信することを含む、請求項７に記載のポータブルコンピュータ。
【請求項１１】
前記トランザクションパラメータセットは、少なくとも（１）前記サーバと通信するのに必要とされる接続プロパティのセット、（２）前記サーバを制御するためのコマンドのセット、（３）要求のシーケンスまたは順序付け、（４）各要求が行われる前に満たされるべき前提条件のセット、（５）前記サーバから情報を得るための照会のセット、および（６）エラーシナリオパラメータのセットを指定する、請求項７に記載のポータブルコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の構成は、一般にデバイス構成およびデータ抽出のための方法およびシステムに関し、より詳細には、構成すべきデバイスまたはデータ抽出元となるデバイスと対話するための、ポータブルデータ処理デバイスに関する。
【背景技術】
【０００２】
電子産業界では、ソフトウェアによって構成可能な機器、または分析のために後で抽出できるデータを収集する機器の開発に向かう傾向が増している。これらの種類のシステムは、通信、データバックアップ、データ可搬性の分野で、また、システム構成をある機器から別の機器にクローン化するために、ますます一般的になっている。これらの構成タスクおよびデータ抽出タスクを実施するための従来の方法は、典型的には、機器を構成することができるように機器をコンピュータまで持ってくることを含む。通信リンクが、典型的には、コンピュータサーバと、構成すべきまたはデータ抽出元となるクライアント機器との間で確立される。通信リンクは、配線式またはワイヤレスとすることができる。必要とされる構成プロセスまたはデータ抽出プロセスを実行するために、通常はカスタムソフトウェアアプリケーションがコンピュータに提供される。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
それでもなお、多くの場合、構成またはデータ抽出を必要とするクライアント機器を、構成タスクまたはデータ抽出タスクを実施するための適切なプログラミングを有するコンピュータがある位置まで運ぶのは、不便であるか、さもなければ実際的でない。例えば、機器は乗り物または遠隔位置に搭載されている場合がある。このような場合は、機器を構成することまたはデータを抽出することができるように、コンピュータを機器の場所まで運ぶことができる。しかしなお、このタイプの再構成可能な機器および／またはデータ収集機器がますます普及するのに伴い、ユーザは、これらのタスクを実行するためのより便利な方法を求めている。例えば、多くのユーザは、パーソナル電子デバイス（ＰＥＤ）を使用して構成タスクおよび／またはデータ抽出タスクを実施するのが便利である可能性があることに気付いている。これらのＰＥＤデバイスは、そのサイズの小ささ、ワイヤレスインタフェース、およびインターネットを介して通信できることにより、これらのタスクに対して人気を得つつある。
【０００４】
ＰＥＤを機器構成およびデータ抽出の目的で使用することに関連する非常に多くの利点にもかかわらず、この手法に関していくつかの問題がある。例えば、従来型のデスクトップまたはラップトップコンピュータ用に書かれたソフトウェアは、ある種のＰＥＤ上で使用するのに直接には適さない。例えばこれは、ＰＥＤがパーソナルディジタルアシスタント（ＰＤＡ）であるときに当てはまる可能性がある。ＰＤＡの物理サイズに関連するハードウェア制約のせいで、ソフトウェアを直接に移植するのがいくぶん困難になる可能性がある。この問題は通常、ＰＤＡ用に特に設計されたカスタムコンピュータコードを書くことによって対処される。カスタムコードは、典型的には、より大規模なコンピュータシステム用にすでに書かれたトランザクションコードのいくらかを複製する。しかし、ＰＤＡ用のソフトウェアコードは、必然的にいくぶん異なる。というのは、このコードは通常、コーディングがデータの性質に依存するとともにドメイン特化情報に基づくようにして、書かれるからである。したがって、カスタムソフトウェア手法は、煩わしくコスト集約的である傾向がある。
【課題を解決するための手段】
【０００５】
本発明は、ポータブルコンピュータを使用してサーバとデータトランザクションを実施する方法に関する。本発明の一態様によれば、ポータブルコンピュータは、パーソナル電子デバイス（ＰＥＤ）とすることができる。サーバは、構成可能な、またはデータをそこから抽出するのが望ましいものとすることのできる、任意のタイプのデバイスであってよい。例えばサーバは、任意のタイプの構成可能な無線機器、別のコンピュータ、ＰＥＤ、セキュリティシステム、またはデータ収集デバイスとすることができる。
【０００６】
本方法は、ポータブルコンピュータ中で１つまたは複数のポータブルトランザクションファイルを受け取ることによって開始することができる。各ポータブルトランザクションファイルは、いくつかのデータフィールドを含む所定のポータブルトランザクションファイルフォーマットで提供することができる。データフィールドは、トランザクションパラメータを含むことができる。トランザクションパラメータは集合的に、データトランザクションセッション用のタイプ特有サーバプロトコルを定義するトランザクションパラメータセットを形成することができる。タイプ特有サーバプロトコルは、特定サーバタイプ用のデータトランザクションセッションを定義することができる。
【０００７】
ポータブルコンピュータに関連するコンピュータメモリに１つまたは複数のポータブルトランザクションファイルが記憶されると、ポータブルコンピュータはデータトランザクションセッションを実施することができる。通信層（communication layer）またはトランスポートタイプがポータブルコンピュータ上で利用可能であるならば、ポータブルコンピュータは、タイプ特有サーバプロトコルを定義するためにポータブルトランザクションファイルが提供済みである任意のタイプのサーバと、データトランザクションセッションを実施することができる。この結果を達成するために、ポータブルコンピュータは有利にも、汎用データトランザクションエンジンを備えることができる。汎用データトランザクションエンジンは、プログラム可能なマイクロプロセッサ、および汎用データトランザクションアプリケーションソフトウェアプログラムを備えることができる。汎用データトランザクションエンジンによって実行されるトランザクションセッションはユニバーサルに構成可能とすることができ、したがって、ポータブルトランザクションファイルに含まれる情報を使用して、任意の特定サーバタイプとトランザクションセッションを行うことができる。
【０００８】
やや異なる見方で見ると、サーバとデータトランザクションを実施する方法は、次のように述べることができる。本方法は、汎用データトランザクションソフトウェアアプリケーションを備えるデータトランザクションエンジンを、ポータブルコンピュータに提供することによって開始することができる。汎用データトランザクションソフトウェアアプリケーションは、任意のサーバとデータトランザクションセッションを実施するために動的に構成可能とすることができる。
【０００９】
本方法はさらに、所定のポータブルトランザクションファイルフォーマットを有する１つまたは複数のポータブルトランザクションファイルを、ポータブルコンピュータに提供することを含むことができる。ポータブルトランザクションファイルフォーマットは、２つ以上のデータフィールドを含むことができる。各データフィールドは、トランザクションパラメータセットのうちのトランザクションパラメータを指定するために提供することができる。データフィールド定義は有利にも、ポータブルコンピュータとどんなサーバとの間のどんなデータトランザクション用のトランザクションプロトコルを定義するのにも足りるデータトランザクションパラメータの種々のセットに対応するのに十分である。
【００１０】
別の態様によれば、本発明はまた、サーバとデータトランザクションを実施するためのポータブルコンピュータに関するものとすることができる。ポータブルコンピュータは、１つまたは複数のポータブルトランザクションファイルを収容するデータストアを備えることができる。ポータブルトランザクションファイルは、それぞれ所定のポータブルトランザクションファイルフォーマットで構成することができる。このフォーマットは、２つ以上のトランザクションパラメータを含むために設けられた２つ以上のデータフィールドを含むことができる。各ポータブルトランザクションファイルに含まれるトランザクションパラメータは、前述のように、集合的にトランザクションパラメータセットを定義することができる。
【００１１】
ポータブルコンピュータは、汎用データトランザクションエンジンを備えることもできる。汎用データトランザクションエンジンは、ポータブルトランザクションファイルに応答してユニバーサルに構成可能とすることができる。より具体的には、ポータブルトランザクションファイルは、任意の特定サーバタイプに関連する任意のデータトランザクションセッションを実施するための、タイプ特有サーバプロトコルを定義することができる。
【００１２】
ポータブルコンピュータは、１つまたは複数のデータ通信システムを備えることもできる。データ通信システム（１つまたは複数）は、ポータブルコンピュータとサーバとの間でデータ通信リンクを確立するために選択することができる。ポータブルコンピュータは、ポータブルトランザクションファイルおよび汎用データトランザクションエンジンを使用して、データトランザクションセッションを実施することができる。とりわけ、データトランザクションセッションは、ポータブルコンピュータにより、ポータブルトランザクションファイルが提供済みである任意のサーバと実施することができる。
【００１３】
一般に、本明細書で言及するデータトランザクションセッションは、１つまたは複数のアクティビティを含むことができる。本発明の一態様によれば、データトランザクションセッションは、構成パラメータのセットをポータブルコンピュータからサーバに通信することを含むことができる。例えば、構成パラメータは、サーバの動作特性のセットを定義することができる。別の態様によれば、データトランザクションセッションは、記憶済みデータをサーバからポータブルコンピュータに通信することを含むことができる。さらに別の態様によれば、データトランザクションセッションは、記憶済みデータをポータブルコンピュータからサーバに通信することを含むことができる。
【００１４】
本明細書で述べるトランザクションパラメータセットは、タイプ特有サーバプロトコルを指定するのに十分な１つまたは複数のパラメータを含むことができる。有利にも、ポータブルトランザクションファイルによって定義されるデータフィールドは、どんなサーバプロトコルに対応するのにも十分なパラメータを含むように定義することができる。トランザクションパラメータは、（１）サーバと通信するのに必要とされる接続プロパティのセット、（２）サーバを制御するためのコマンドのセット、（３）要求のシーケンスまたは順序付け、（４）各要求が行われる前に満たされるべき前提条件のセット、（５）サーバから情報を得るための照会のセット、および（６）エラーシナリオパラメータのセットを指定することが望ましいものとすることができる。
【発明を実施するための最良の形態】
【００１５】
様々な異なる適用例との関連で使用するためにソフトウェアによって再構成可能な電子デバイスは、ますます多くのものが存在する。また、データの抽出元とすることのできるデバイスも、ますます多くのものが存在する。このようなデバイスを、本明細書では一般にサーバデバイスまたは単にサーバと呼ぶ。さらに、前述の構成プロセスおよびデータ抽出プロセスを、本明細書では一般にデータトランザクションまたはデータトランザクションセッションと呼ぶものとする。本発明は、ポータブルコンピュータを使用してサーバとデータトランザクションを実施するための方法および装置に関する。
【００１６】
ここで図１〜５を参照すると、データトランザクションのための改善された方法および装置が示されている。本発明は、ポータブルコンピュータと共に使用するのに、より具体的にはハンドヘルドの種類のポータブルコンピュータと使用するのに非常に適する。このようなハンドヘルドコンピュータはしばしば、パーソナル電子デバイスまたはＰＥＤと呼ばれる。
【００１７】
図１を参照すると、ポータブルコンピュータ１０６に、１つまたは複数のポータブルトランザクションファイル１０４−１、１０４−２、１０４−３、１０４−ｎを提供することができる。ポータブルトランザクションファイルは、それぞれ所定のポータブルトランザクションファイルフォーマットで構成することができる。このフォーマットは、トランザクションパラメータを含むために設けられた２つ以上のデータフィールドを含むことができる。ポータブルトランザクションファイルに含まれるトランザクションパラメータは、集合的にトランザクションパラメータセットを定義することができる。
【００１８】
ポータブルトランザクションファイル１０４−１、１０４−２、１０４−３、１０４−ｎは、任意の適した手段によってポータブルコンピュータ１０６に提供することができる。図１では、ポータブルトランザクションファイルがコンピュータ１０２から直接にポータブルコンピュータ１０６に通信されるように示されている。ポータブルトランザクションファイル１０４−１、１０４−２、１０４−３、１０４−ｎは、任意の適したデータ通信リンクを介してポータブルコンピュータ１０６に通信することができる。通信リンクは、コンピュータ１０２とポータブルコンピュータ１０６との間の配線式またはワイヤレス通信リンクとすることができる。通信リンクはまた、コンピュータネットワーク（図示せず）を使用して形成することもできる。これに関して、多くのポータブルコンピュータが、配線式またはワイヤレス手段によってインターネットリソースにアクセスする能力を有することは理解されるであろう。このようなインターネット通信を使用して、ポータブルトランザクションファイル１０４−１、１０４−２、１０４−３、１０４−ｎをコンピュータ１０２からポータブルコンピュータ１０６に送達することができる。ファイルをポータブルコンピュータ１０６にロードすることのできる様々な方法は当業者なら熟知しており、このような方法はすべて本発明の範囲内に含まれるものとする。
【００１９】
本発明の一実施形態によれば、ポータブルコンピュータ１０６は、汎用データトランザクションエンジンを備えることもできる。汎用データトランザクションエンジンは、有利にも、任意のタイプのサーバとの本明細書に述べるようなデータトランザクションのためにユニバーサルに構成可能なように設計される。図２を参照すると、ポータブルトランザクションファイル１０４−１、１０４−２、１０４−３、１０４−ｎのうちの１つは、特定タイプのサーバ１０８に関連するデータトランザクションセッション２００を実施するためのタイプ特有サーバプロトコルを定義することができる。
【００２０】
次に図３を参照すると、本発明を理解するのに有用な、より詳細なブロック図が示されている。図３に示すように、ポータブルコンピュータ１０６は、従来のポータブルコンピュータシステムにおけるのと同様にして構成された１つまたは複数のコンポーネントまたはサブシステムを備えることができる。例えば、ポータブルコンピュータ１０６は、プロセッサ３０２、ユーザインタフェース、データストア３０４、および通信システム３０６を備えることができる。
【００２１】
本発明の一態様によれば、ポータブルコンピュータ１０６は、パーソナル電子デバイス（ＰＥＤ）とすることができる。パーソナル電子デバイス（ＰＥＤ）は、当技術分野で周知である。例えば、ＰＥＤは携帯型ハンドヘルドコンピュータを含むものとして知られ、これらはパーソナルディジタルアシスタントまたはＰＤＡと呼ばれることもある。これらのデバイスは、データを記憶、処理、および通信する能力を有する。ＰＤＡは一般に、ハンドヘルドＰＣ、パームサイズＰＣ、スマートホン、およびハンドヘルド機器を含めることのできる、いくつかの範疇のうちの１つに入る。ＰＤＡは、典型的には、Ｌｉｎｕｘ（登録商標）、Ｐａｌｍ（登録商標）ＯＳ、またはＷｉｎｄｏｗｓ（登録商標）ＣＥ（Ｐｏｃｋｅｔ  ＰＣ）などの市販のオペレーティングシステムと共に、何らかの種類のマイクロプロセッサを備える。多くのＰＤＡは、人間／機械インタフェースのために、備え付けのＬＣＤ表示装置、タッチセンシティブスクリーン、およびキーパッドも有する。いくつかのＰＤＡは、ワイヤレスネットワーキング機能も備える。例えば、多くのこのようなデバイスは、周知のワイヤレスネットワーキングを使用して他のデバイスと通信することができる。前述の機能により、これらの小型デバイスは、様々なビジネス用および個人用の適用分野に対して非常に有用になる。
【００２２】
ポータブルコンピュータ１０６がＰＥＤである場合は、プロセッサ３０２は、ＰＥＤ中で一般的に使用される様々な市販のマイクロプロセッサシステムのいずれかとすることができる。例えば、マイクロプロセッサ３０２は、カリフォルニア州サンタクララのＩｎｔｅｌ．Ｃｏｒｐ．から入手可能なＳｔｒｏｎｇＡＲＭまたはＸＳｃａｌｅプロセッサ（例えばＳＡ−１１０やＰＸＡ２７０）、テキサス州オースティンのＦｒｅｅｓｃａｌｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ，Ｉｎｃ．から入手可能なｉ．ＭＸまたはＤｒａｇｏｎｂａｌｌファミリのプロセッサ、あるいは、テキサス州ダラスのＴｅｘａｓ  Ｉｎｓｔｒｕｍｅｎｔｓによって販売用に提供されているＯＭＡＰ（登録商標）ファミリのプロセッサから選択することができる。プロセッサ３０２は、任意の適した市販オペレーティングシステムを利用することができる。別法として、エネルギー消費およびコストを削減するために、プロセッサ３０２は超小型電子技術コントローラとして実現することもできる。
【００２３】
プロセッサ３０２は、データストア２０４とそれぞれ通信することができる。データストア２０４は、フラッシュメモリ、読取り専用メモリ（ＲＯＭ）、ＥＥ  ＰＲＯＭ、および／またはダイナミックランダムアクセスメモリ（ＤＲＡＭ）など、任意の適したデータ記憶システムからなるものとすることができる。プロセッサのためのオペレーティングシステムは、データストア３０４中の不揮発性メモリに、または別のメモリ位置（図示せず）に記憶することができる。しかしなお、プロセッサ３０２のオペレーティングシステムまたはアプリケーションソフトウェアに使用される特定タイプのデータストアに関して本発明が限定されないことは、当業者なら理解するであろう。
【００２４】
１つまたは複数のポータブルトランザクションファイル１０４−１、１０４−２、１０４−３、１０４−ｎを、データストア３０４に記憶することができる。データストアはまた、汎用データトランザクションアプリケーション３０３を記憶するのに使用することもできる。別法として、データトランザクションファイルのうちの１つまたは複数および汎用データトランザクションアプリケーションは、別のデータストアに記憶することもできる。
【００２５】
プロセッサ３０２、データストア３０４、ユーザインタフェース３０５、および通信システム３０６の間に、適したデータ通信リンクを提供することができる。データ通信リンクは、任意の適したタイプのシリアルまたはパラレルタイプのデータチャネルとすることができる。例えば、通信リンクがパラレルタイプのデータリンクである場合は、通信リンクは、ＩＳＡ、ＥＩＳＡ、ＶＥＳＡ、ＰＣＩ、ＥＭＩＦなどを含めて（限定ではない）、いくつかの周知のバス規格のいずれかに準拠することができる。別法として、シリアルデータチャネルが使用される場合は、Ｉ２Ｃ、ＳＰＩ、Ｍｉｃｒｏｗｉｒｅ、Ｍａｘｉｍ、または他のタイプのシリアルデータバスとすることができる。本発明がポータブルコンピュータ１０６の様々なコンポーネント間のどんな特定のデータリンク構成にも限定されないことは、当業者なら理解するであろう。
【００２６】
データ通信システム３０６は、ポータブルコンピュータ１０６と１つまたは複数のサーバ１０８−１、１０８−２、１０８−３、１０８−ｎとの間でデータ通信リンクを確立するために構成することができる。例えば、通信システム３０６は、様々な周知の通信規格のいずれかに従ってデータ通信を実施することのできる通信サブシステムを備えることができる。限定ではないが、これらの通信サブシステムは、従来のユニバーサルシリアルバス（ＵＳＢ）規格に準拠するサブシステム３０８、ブルートゥース（登録商標）ワイヤレス通信規格に準拠するサブシステム３１０、従来のシリアルバス規格に準拠するサブシステム３１０、および８０２．１１ファミリのワイヤレス規格に準拠するサブシステム３１４を含むことができる。しかしなお、本発明がどんな特定タイプの通信ポートにも限定されないことを理解されたい。任意の配線式、ワイヤレス、および／または光学式の通信システムを提供することができる。さらに、いくつかの異なるタイプの通信サブシステムを提供して、様々な異なるタイプのサーバとの通信を容易にすることが有利である可能性もある。
【００２７】
図３では、ポータブルトランザクションファイル１０４−１、１０４−２、１０４−３、１０４−ｎが提供済みである任意のサーバ１０８−１、１０８−２、１０８−３、１０８−ｎと、データトランザクションセッションをポータブルコンピュータ１０６により実施することができる。サーバは、構成可能な、または何らかのデータをそれにロードすることのできる、またはデータをそこから抽出することが望ましいものとすることのできる、任意のタイプのデバイスとすることができる。例えばサーバは、任意のタイプの構成可能な無線機器、別のコンピュータ、ＰＥＤ、セキュリティシステム、またはデータ収集デバイスとすることができる。
【００２８】
一般に、本明細書で言及するデータトランザクションセッションは、限定されない１つまたは複数のアクティビティを含むことができる。本発明の一態様によれば、データトランザクションセッションは、ポータブルコンピュータ１０６から、ポータブルトランザクションファイルが提供済みであるサーバ１０８−１、１０８−２、１０８−３、１０８−ｎのいずれか１つに、構成パラメータのセットを通信することを含むことができる。例えば、構成パラメータは、サーバの動作特性のセットを定義することができる。別の態様によれば、データトランザクションセッションは、サーバ１０８−１、１０８−２、１０８−３、１０８−ｎからポータブルコンピュータ１０６に記憶済みデータを通信することを含むこともできる。さらに別の態様によれば、データトランザクションセッションは、ポータブルコンピュータ１０６からサーバ１０８−１、１０８−２、１０８−３、１０８−ｎに記憶済みデータを通信することを含むことができる。
【００２９】
１つまたは複数のポータブルトランザクションファイル１０４−１、１０４−２、１０４−３、１０４−ｎは、それぞれ所定のポータブルトランザクションファイルフォーマットで構成することができる。このフォーマットは、トランザクションパラメータを含むために設けられた２つ以上のデータフィールドを含むことができる。ポータブルトランザクションファイルに含まれるトランザクションパラメータは、集合的にトランザクションパラメータセットを定義することができる。トランザクションパラメータセットは、タイプ特有サーバプロトコルを指定するのに十分な１つまたは複数のパラメータを含むことができる。有利にも、ポータブルトランザクションファイルによって定義されるデータフィールドは、どんなタイプのサーバ１０８−１、１０８−２、１０８−３、１０８−ｎ用のプロトコルに対応するのにも十分なパラメータを含むように定義することができる。
【００３０】
次に図４を参照すると、データトランザクションセッションを実施するための改善された方法を理解するのに有用なフローチャートが示されている。このプロセスは、ステップ４０２で、ポータブルトランザクションファイル（ＰＴＦ）がポータブルコンピュータ１０６に提供されたときに開始することができる。ポータブルトランザクションファイルを受け取ると、これは必要とされるまでデータストア３０４に記憶しておくことができる。ステップ４０６で、プロセスは、データトランザクションセッションを開始する要求が受け取られたかどうかチェックして判定することによって継続することができる。このような要求は、ユーザにより、ユーザインタフェース３０５または他の任意の適した方法で開始することができる。
【００３１】
要求が受け取られない場合は、プロセスはステップ４０６にループバックし、さらに命令を待機することができる。しかし、データトランザクションの要求が受け取られた場合は、プロセスはステップ４０８に続くことができる。ステップ４０８で、汎用データトランザクションアプリケーション３０３がまだ実行されていない場合は、このアプリケーションソフトウェアを起動することができる。その後ステップ４１０で、データトランザクションセッションを実施する対象となるサーバ１０８−１、１０８−２、１０８−３、１０８−ｎのタイプを識別するようユーザに促すことができる。この情報に基づいて、ステップ４１２で、識別されたサーバのタイプ用のポータブルトランザクションファイル１０４−１、１０４−２、１０４−３、１０４−ｎが利用可能かどうかの判定を行うことができる。利用可能でない場合は、ステップ４１８で、選択されたサーバタイプに必要とされるポータブルトランザクションファイルをポータブルコンピュータが有さないことを、ユーザに通知することができる。次いで、ステップ４２０で、別のサーバタイプをステップ４１０で選択する機会をユーザに与えることができ、あるいはステップ４２２でプロセスは終了することができる。
【００３２】
選択されたサーバタイプ用のポータブルトランザクションファイルが利用可能な場合は、ステップ３１４で、このファイルをデータストア３０４から取り出し、プロセッサ３０２のための作業メモリにロードすることができる。例えば、ユーザがサーバをタイプ３サーバ１０８−３として識別した場合は、ポータブルトランザクションファイル１０４−３をデータストア３０４から選択してメモリにロードすることができる。その後ステップ４１６で、汎用データトランザクションアプリケーション３０３、および選択されたサーバ用の適切なポータブルトランザクションファイルを利用して、データトランザクションセッションを実行することができる。データトランザクションセッションが完了すると、プロセスはステップ４２２で終了することができる。
【００３３】
単一の汎用データトランザクションプログラム３０３が任意のタイプのサーバ１０８−１、１０８−２、１０８−３、１０８−ｎとのデータトランザクションセッション２００を実施できるようにするために、ポータブルトランザクションファイルのフォーマットは、特定サーバタイプ用のデータトランザクションプロトコルを完全に定義するのに十分なパラメータのセットに対応しなければならない。一般に、このことは、４つの基本的なタイプの情報を汎用データトランザクションプログラムに提供しなければならないことを意味する。トランザクションパラメータセットは、（１）サーバと通信するのに必要とされる接続プロパティのセット、（２）サーバを制御するためのコマンドのセット、（３）要求のシーケンスまたは順序付け、（４）各要求が行われる前に満たされるべき前提条件のセット、（５）サーバから情報を得るための照会のセット、および（６）エラーシナリオパラメータのセットを指定することが望ましいものとすることができる。ポータブルトランザクションファイルのフォーマットは、幅広いトランザクションプロトコルを含むように一般化されるべきだが、データトランザクションを正しく実施するのに十分なレベルの詳細を考慮すべきでもある。同様に、汎用データトランザクションアプリケーションは、このような任意のデータトランザクションプロトコルを実施するのに十分なフレキシビリティを有するべきである。
【００３４】
図５に、ポータブルトランザクションファイル１０８−１、１０８−２、１０８−３、１０８−ｎのフォーマットの一例を示す。図５に示す例は、本発明を限定するものとはしないことを理解されたい。そうではなく、図示のフォーマットは単に、トランザクションパラメータのセットを提示することのできる１つの可能な方法を説明するために提供するに過ぎない。図６を参照すると、図５のポータブルトランザクションファイルフォーマットを階層形式で構成できることがわかる。一実施形態によれば、ポータブルトランザクションファイルは、ＸＭＬ（拡張可能マークアップ言語）文書の形で提供することができる。ＸＭＬは、情報およびサービスを有意味なデータ構造でエンコードするのを容易にする周知の標準である。ＸＭＬは、情報交換に一般的に使用され、ユーザ指定のタグに好都合に対応することができる。しかしなお、本発明はこれに関して限定されず、本発明の範囲および意味の内において、ポータブルトランザクションファイルの他の表現を使用することもできる。
【００３５】
ここで図５および６を参照すると、各ポータブルトランザクションが一般に（１）Ｓｅｓｓｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ５０２、（２）Ｃｏｎｎｅｃｔｉｏｎ  Ｐｒｏｐｅｒｔｉｅｓ５０４、および（３）Ｒｅｑｕｅｓｔ  Ｌｉｓｔ５０６を含むことができるのが理解されるであろう。Ｓｅｓｓｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ５０２は、Ｖｅｒｓｉｏｎ、Ａｕｔｈｏｒ名、トランザクションセッションのＤｅｓｃｒｉｐｔｉｏｎ、および、ドメイン特化情報を記録するのに使用できる１つまたは複数のＣｕｓｔｏｍ  Ｄｅｓｃｒｉｐｔｏｒｓ５０３を含めて、いくつかのパラメータを含むことができる。これらのパラメータは、テキストストリングとして、または他の任意の好都合な方式で表すことができる。
【００３６】
Ｃｏｎｎｅｃｔｉｏｎ  Ｐｒｏｐｅｒｔｉｅｓ５０４は、ＴｒａｎｓｐｏｒｔＴｙｐｅ、ＰｏｒｔＮｕｍｂｅｒ、およびＰｏｒｔＳｐｅｅｄなど、いくつかのパラメータを含むことができる。ＴｒａｎｓｐｏｒｔＴｙｐｅパラメータは、使用される接続媒体（例えばＲＳ−２３２、ＰＰＰ、イーサネットなど）を表すことができる。典型的には、ＴｒａｎｓｐｏｒｔＴｙｐｅおよびＰｏｒｔＳｐｅｅｄは、単純なテキストストリングとして表すことができる。ＰｏｒｔＮｕｍｂｅｒは、符号無し整数として表すことができる。ドメイン特化情報を記録するために、１つまたは複数のＣｕｓｔｏｍ  Ｄｅｓｃｒｉｐｔｏｒｓ５０５を提供することができる。
【００３７】
Ｒｅｑｕｅｓｔ  Ｌｉｓｔ５０６は、トランザクションセッションの一部として必要な場合のある、１つまたは複数の異なるタイプのＲｅｑｕｅｓｔ５０８を含むことができる。例えばこれらのＲｅｑｕｅｓｔは、限定ではないが、ある種のデータを送信する要求、送信されているある種のデータを受諾する要求、またはサーバをデータトランザクションセッションに向けて構成する要求を含むことができる。Ｒｅｑｕｅｓｔ  Ｌｉｓｔ５０６中の各Ｒｅｑｕｅｓｔ５０８に関する情報を提供することができる。例えばこのような情報は、後でより詳細に述べるように、コマンドテキストと、前提条件、タイムアウト、および遷移パスを含む情報とを含むことができる。
【００３８】
Ｒｅｑｕｅｓｔ  Ｌｉｓｔ５０６はまた、ＥｎａｂｌｅＬｏｇｇｉｎｇパラメータを含むこともできる。ＥｎａｂｌｅＬｏｇｇｉｎｇパラメータは、特定の要求に関してロギングを実施すべきかどうか判定するのに使用することのできる単純なブール演算子とすることができる。Ｒｅｑｕｅｓｔ  Ｌｉｓｔ５０６はまた、Ｒｅｑｕｅｓｔ  Ｌｉｓｔ中の特定の要求（それ以上の要求にリンクされず特定のトランザクションセッションを終了する要求）を識別するＦｉｎａｌＲｅｑｕｅｓｔＩＤパラメータを含むこともできる。
【００３９】
各Ｒｅｑｕｅｓｔ５０８につき、遷移パスを指定して、（１）Ｒｅｑｕｅｓｔに割り当てられた連続的な識別子ＩＤ番号、（２）要求を発行してから応答を受信せず接続障害の発生を決定するまでに待機する時間長をミリ秒で指定するＴｉｍｅｏｕｔ値、（３）要求の実行が依存する場合のあるＰｒｅｃｏｎｄｉｔｉｏｎのセット、（４）サーバに送信するコマンドの実際のテキストを指定するＣｏｍｍａｎｄＴｅｘｔパラメータ、および（４）現在の要求の実行後に受信される応答に基づいて実行すべき次の要求を指示するＴｒａｎｓａｃｔｉｏｎＰａｔｈパラメータ、を識別することができる。ＰｒｅｃｏｎｄｉｔｉｏｎおよびＴａｒｎｓｉｔｉｏｎＰａｔｈパラメータについて、以下により詳細に述べる。
【００４０】
Ｐｒｅｃｏｎｄｉｔｉｏｎ５１０のセットは、要求識別番号を指定するＲｅｑｕｅｓｔＩＤパラメータを含めた１つまたは複数のパラメータを含むことができ、ＲｅｑｕｅｓｔＩＤパラメータの番号は、ＲｅｓｐｏｎｓｅＣｏｎｄｉｔｉｏｎパラメータとの比較に使用することができる。ＲｅｓｐｏｎｓｅＣｏｎｄｉｔｉｏｎパラメータは、汎用トランザクションエンジンにより、ＲｅｑｕｅｓｔＩＤで示されるＲｅｑｕｅｓｔの応答と比較することのできる、テキストストリングまたは他の表現とすることができる。この表現が等価性を評価する場合は、このＲｅｑｕｅｓｔを実行することができる。そうでない場合は、ＦａｉｌｕｒｅＲｅｑｕｅｓｔＩＤで示される要求が実行されることになる。ＦａｉｌｕｒｅＲｅｑｕｅｓｔＩＤは、それ以上の要求にリンクせずトランザクションセッションを終了する、整数ＩＤとすることができる。
【００４１】
ＴａｒｎｓｉｔｉｏｎＰａｔｈ５１２は、ＮｅｘＲｅｑｕｅｓｔＩＤ、ＲｅｓｐｏｎｓｅＣｏｎｄｉｔｉｏｎ、およびＴｙｐｅを含めて、いくつかのパラメータを含むことができる。ＲｅｓｐｏｎｓｅＣｏｎｄｉｔｉｏｎパラメータは、汎用トランザクションエンジンが、サーバから受信した応答と比較することになる、正規の表現とすることができる。ＮｅｘＲｅｑｕｅｓｔＩＤパラメータは、サーバから受信した応答がＲｅｓｐｏｎｓｅパラメータに対応する場合に実行すべき次の要求を指定するのに使用することができる。最後に、Ｔｙｐｅパラメータは、遷移のタイプを指定することができる。このパラメータもまた、テキストストリングとして表現することができる。このテキストは、遷移パスがログファイル中で「失敗」として記録されるべきか「成功」として記録されるべきかを指定することができる。
【００４２】
図５および６のポータブルトランザクションファイルに含まれる情報は、汎用データトランザクションアプリケーションソフトウェア３０３が使用することができる。具体的には、この情報を使用して、図４のステップ４１６によりデータトランザクションセッションを実施することができる。トランザクションセッションは、１つまたは複数のサーバ１０８−１、１０８−２、１０８−３、１０８−ｎと実施することができる。図７は、汎用データトランザクションアプリケーション３０３のプロセスフローをより詳細に理解するのに有用な図である。
【００４３】
次に図７を参照すると、汎用データトランザクションアプリケーションは、ステップ７０３でポータブルトランザクションファイルが提供されるまで、ステップ７０２で遊休状態に留まることができることがわかる。ステップ７０４で、汎用データトランザクションアプリケーション３０３は、ファイルが構文的に正しいかどうか判定することができる。正しくない場合は、汎用データトランザクションアプリケーションは、その遊休状態に戻ることができ、任意選択で適切なユーザ通知を生成することができる。
【００４４】
ポータブルトランザクションファイルが構文的に正しい場合は、プロセスはステップ７０６に続くことができる。ステップ７０６で、アプリケーションは、トランザクションセッションが開始されることを示す制御入力を待機することができる。「プログラミング開始」制御入力７０８を受け取った場合は、トランザクションセッションは継続することができる。そうでない場合は、システムは遊休プロセス７０６に留まる。ステップ７１０で、ポータブルトランザクションファイル５００から第１のＲｅｑｕｅｓｔ５０８をロードすることができる。ステップ７１２で、第１のＲｅｑｕｅｓｔ５０８の処理を開始することができる。ステップ７１４および７１８で、汎用データトランザクションアプリケーション３０３は、特定のＲｅｑｕｅｓｔ５０８に関連する各Ｐｒｅｃｏｎｄｉｔｉｏｎパラメータ５１０が満たされているかどうか判定することができる。特定の前提条件が満たされていない場合、システムは、ステップ７１６でＦａｉｌｕｒｅＲｅｑｕｅｓｔＩＤ番号をロードすることができる。ＦａｉｌｕｒｅＲｅｑｕｅｓｔＩＤは、前提条件が満たされない場合に使用すべき代替Ｒｅｑｕｅｓｔ５０８を指定することができる。
【００４５】
すべての前提条件が満たされている場合は、ステップ７２０で、特定の要求５０８に関連するＣｏｍｍａｎｄＴｅｘｔをサーバ１０８に送信することができる。ステップ７２２で、汎用データトランザクションアプリケーション３０３は、サーバ１０８からの応答を待機することができる。待機期間の長さは、Ｒｅｑｕｅｓｔ５０８に含まれるＴｉｍｅｏｕｔパラメータによって決定されることになる。ステップ７３６でタイムアウトが発生した場合は、システムはステップ７３８に進み、サーバ１０８との通信が失われたことをユーザに通知することになる。あるいは、応答７２６を受信した場合は、システムはステップ７２４に続くことになる。
【００４６】
ステップ７２４で、応答が、予想された応答であるかどうかの判定が行われることになる。ＴｒａｎｓｉｔｉｏｎＰａｔｈ５１２中の情報を使用して、サーバから受信した応答を、ポータブルトランザクションファイル５００によって指定されるＲｅｓｐｏｎｓｅストリングと比較することができる。受信した応答が予想された応答でない場合は、アプリケーションはステップ７２２で待機状態に戻ることができる。あるいは、サーバから受信した応答が、ＴｒａｎｓｉｔｉｏｎＰａｔｈ５１２からの指定のＲｅｓｐｏｎｓｅストリングと正しく合致する場合は、アプリケーションはステップ７２８に続くことができる。ステップ７２８で、汎用データトランザクションアプリケーション３０３は、ロギングがイネーブルにされているかどうか判定することになる。この判定は、ＲｅｑｕｅｓｔＬｉｓｔ５０６中のＥｎａｂｌｅＬｏｇｇｉｎｇパラメータの評価を必要とするものとすることができる。ロギングがイネーブルにされている場合は、ステップ７３０で応答が記録された後でステップ７３２に進むことになる。そうでない場合は、システムは直接にステップ７３２に遷移することができる。
【００４７】
ステップ７３２で、ＴｒａｎｓｉｔｉｏｎＰａｔｈ５１２からのＮｅｘｔＲｅｑｕｅｓｔＩＤ番号を、ＲｅｑｕｅｓｔＬｉｓｔ５０６からのＦｉｎａｌＲｅｑｕｅｓｔＩＤ番号と比較することができる。ＮｅｘｔＲｅｑｕｅｓｔＩＤがＦｉｎａｌＲｅｑｕｅｓｔＩＤと等しい場合は、これはデータトランザクションが完了したことを示すものとすることができる。したがってシステムは、ステップ７０６でその待機状態に戻ることができる。ＮｅｘｔＲｅｑｕｅｓｔＩＤがＦｉｎａｌＲｅｑｕｅｓｔＩＤと等しくない場合は、次のＲｅｑｕｅｓｔ５０８をＲｅｑｕｅｓｔＬｉｓｔ５０６からロードすることができる。次いでシステムは、ステップ７１２に戻り、次のＲｅｑｕｅｓｔの処理を継続することができる。
【図面の簡単な説明】
【００４８】
【図１】どのように１つまたは複数のポータブルトランザクションファイルをポータブルコンピュータのメモリにロードすることができるかを理解するのに有用なブロック図である。
【図２】どのように図１のポータブルコンピュータがサーバとデータトランザクションセッションを実施することができるかを理解するのに有用なブロック図である。
【図３】どのように図１および２のポータブルコンピュータが１つまたは複数の異なるタイプのサーバとデータトランザクションセッションを実施することができるかを示す、より詳細なブロック図である。
【図４】ポータブルコンピュータを使用してサーバとデータトランザクションを実施する方法を理解するのに有用なフローチャートである。
【図５Ａ】データトランザクションファイルのフォーマットを理解するのに有用な図である。
【図５Ｂ】データトランザクションファイルのフォーマットを理解するのに有用な図である。
【図５Ｃ】データトランザクションファイルのフォーマットを理解するのに有用な図である。
【図５Ｄ】データトランザクションファイルのフォーマットを理解するのに有用な図である。
【図６】図５のデータトランザクションファイル中の複数のパラメータ間の階層関係を理解するのに有用な図である。
【図７Ａ】汎用データトランザクションエンジン中のプロセスフローを理解するのに有用なフローチャートである。
【図７Ｂ】汎用データトランザクションエンジン中のプロセスフローを理解するのに有用なフローチャートである。
【図５Ｂ】
2009529162.tif 000003
【図５Ｃ】
2009529162.tif 000004
【図５Ｄ】
2009529162.tif 000005
【図６】
2009529162.tif 000006
【図７Ａ】
2009529162.tif 000007
【図１】
2009529162.tif 000008
【図２】
2009529162.tif 000009
【図３】
2009529162.tif 000010
【図４】
2009529162.tif 000011
【図５Ａ】
2009529162.tif 000012
【図７Ｂ】
2009529162.tif 000013
【国際調査報告】
2009529162.tif 000014