(57)【要約】  動的メタデータ存続及び相関システム及び方法を開示する。このシステム及び方法は、アプリケーションＡＰＩコールからのトランザクションメタデータを追跡して内部データモデルに関連付ける手段を提供する。このシステムは、アプリケーションレベルの柔軟性と、エンティティ進化、データ抽出及び分析性のための動的相関管理とをペアにする。【選択図】図２
2018538595.tif 000002
【特許請求の範囲】
【請求項１】
関連する１又は２以上のエンティティに関するデータを記憶する健康グラフデータベースを有し、要求のためのアプリケーションレベルデータと、前記要求に関するメタデータとを含むアプリケーションプログラミングインターフェイス（ＡＰＩ）コールを受け取る医療システムと、
前記健康グラフデータベース内でアプリケーションレベルデータとメタデータとを存続させ、存続するアプリケーションレベルデータ及びメタデータの各々を前記健康グラフデータベースに記憶されているエンティティに相関させるデータ存続システムと、
前記存続するアプリケーションレベルデータ及びメタデータに応答して更新される、前記健康グラフデータベース内のエンティティと、
を備えるシステム。
【請求項２】
前記医療システムは、前記ＡＰＩコールを通じて医療トランザクションに関するデータを受け取る、請求項１に記載のシステム。
【請求項３】
前記医療トランザクションに関するデータは、Ｘ１２データフォーマット、ＨＬ７データフォーマット、ＦＨＩＲデータフォーマット、ＦＯＡＦデータフォーマット及びＪＳＯＮデータフォーマットのうちの１つである、請求項２に記載のシステム。
【請求項４】
前記データ存続システムは、存続するアプリケーションレベルデータの各々を前記健康グラフデータベース内で一意の識別子に相関させて、前記存続するアプリケーションレベルデータを相関させる、請求項１に記載のシステム。
【請求項５】
前記データ存続システムは、前記一意の識別子を用いて前記アプリケーションレベルデータの出所を追跡する、請求項４に記載のシステム。
【請求項６】
データ存続方法であって、
要求に関するメタデータを有するアプリケーションプログラミングインターフェイスコールを通じて、前記要求のためのアプリケーションレベルデータを受け取るステップと、
前記アプリケーションレベルデータと前記メタデータとを健康グラフデータベース内で存続させるステップと、
存続するアプリケーションレベルデータ及びメタデータの各々を前記健康グラフデータベースに記憶されているエンティティに相関させるステップと、
前記存続するアプリケーションレベルデータ及びメタデータに基づいて、前記健康グラフデータベース内の前記エンティティを更新するステップと、
を含む方法。
【請求項７】
前記アプリケーションレベルデータを受け取るステップは、医療トランザクションに関するデータを受け取るステップをさらに含む、請求項６に記載の方法。
【請求項８】
前記医療トランザクションに関するデータは、Ｘ１２データフォーマット、ＨＬ７データフォーマット、ＦＨＩＲデータフォーマット、ＦＯＡＦデータフォーマット及びＪＳＯＮデータフォーマットのうちの１つである、請求項７に記載の方法。
【請求項９】
前記存続するアプリケーションレベルデータ及びメタデータの各々を相関させるステップは、前記存続するアプリケーションレベルデータの各々を前記健康グラフデータベース内で一意の識別子に相関させて、前記存続するアプリケーションレベルデータを相関させるステップをさらに含む、請求項６に記載の方法。
【請求項１０】
前記存続するアプリケーションレベルデータの各々を一意の識別子に相関させるステップは、前記一意の識別子を用いて前記アプリケーションレベルデータの出所を追跡するステップをさらに含む、請求項９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般にアプリケーションＡＰＩコールからのトランザクションメタデータを追跡して内部データモデルに関連付けることに関する。
【背景技術】
【０００２】
アプリケーションレベルのＡＰＩコールは、各要求のデータを完全にカプセル化するために一定レベルのユーザ柔軟性を必要とし得る。また、各ＡＰＩコールは、データ交換の細目を詳述するトランザクションデータを含む。アプリケーションレベルのＡＰＩコール及びトランザクションメタデータは、いずれもデータベース内への転送及び存続のためのデータキーを動的に作成する。アプリケーションデータ及びＡＰＩトランザクションメタデータの転送、存続及び相関を容易にする機構を提供することが望ましい。
【図面の簡単な説明】
【０００３】
【図１】データ存続システムを組み込むことができる医療システムの例を示す図である。
【図２】データ存続システムの実装例を示す図である。
【図３】データ存続システムによって使用できる健康グラフデータベースの例を示す図である。
【図４】図１及び図２に示す３つのアーキテクチャ部分を有するシステムを用いたデータ存続方法の例を示す図である。
【図５】アプリケーションレベルのユーザがグラフデータベースにおける存続のためのカスタムフィールドを提供できるレベルを示す図である。
【図６】図４に示すデータ存続方法の一部である履歴相関連結プロセスを示す図である。
【図７Ａ】相関プロセス中に行われる動的出所追跡の例を示す図である。
【図７Ｂ】相関プロセス中に行われる動的出所追跡の例を示す図である。
【発明を実施するための形態】
【０００４】
本開示は、図１に示すＰｏｋｉｔＤｏｋ医療システム(healthcare system)及び方法、並びにそのデータベースと共に使用されるデータ存続システム(data persistence system)及び方法にとりわけ適用可能であり、この文脈で本開示を説明する。しかしながら、このシステム及び方法は、スタンドアロン型システムとして使用することも、アプリケーションデータ及びＡＰＩトランザクションメタデータの転送、存続及び相関を容易にすることが望ましい他のデータシステムとの併用、又はこのようなシステムへの統合を行うこともできるので、さらに高い実用性を有すると理解されるであろう。
【０００５】
ＰｏｋｉｔＤｏｋプラットフォームを通じたアプリケーションレベルのＡＰＩコールは、各要求のデータを完全にカプセル化するために一定レベルのユーザ柔軟性を必要とし得る。また、各ＡＰＩコールは、データ交換の細目を詳述するトランザクションデータを含む。アプリケーションレベルのＡＰＩコール及びトランザクションメタデータは、いずれもデータベース内への転送及び存続のためのデータキーを動的に作成する。本明細書におけるシステム及び方法は、ＡＰＩトランザクションメタデータに加えた動的なアプリケーション固有のデータセットの転送、存続及び相関について詳述する。
【０００６】
後述する動的メタデータ存続及び相関システムは、アプリケーションＡＰＩコールからのトランザクションメタデータを追跡して内部データモデルに関連付ける手段を提供する。このシステムは、アプリケーションレベルの柔軟性と、エンティティ進化、データ抽出及び分析性のための動的相関管理とをペアにする。
【０００７】
図１に、バックエンドコンポーネント１０８又は健康グラフストア１１４によって、或いはバックエンドコンポーネント１０８と健康グラフストア１１４との組み合わせによって実装できるデータ存続システムを組み込むことができる医療システム１００の例を示す。医療マーケットプレイスシステム１００は、通信路１０６を介してバックエンドシステム１０８に接続する１又は２以上のコンピュータ装置１０２を有することができる。図１に示すコンピュータ装置１０２ａ、１０２ｂ、．．．、１０２ｎなどの各コンピュータ装置１０２は、各コンピュータ装置を通信路１０６に接続し、通信路１０６を介してバックエンドシステム１０８に結合できる、メモリ、永続記憶装置、有線又は無線通信回路及びディスプレイを含むプロセッサ搭載装置とすることができる。例えば、各コンピュータ装置は、Ａｐｐｌｅ  Ｃｏｍｐｕｔｅｒ社の製品やＡｎｄｒｏｉｄ  ＯＳベースの製品などのスマートフォン装置、タブレットコンピュータ、パーソナルコンピュータ、端末装置及びラップトップコンピュータなどとすることができる。図１に示す１つの実施形態では、各コンピュータ装置１０２がメモリにアプリケーション１０４を記憶し、コンピュータ装置のプロセッサを用いてこのアプリケーションを実行してバックエンドシステムとやりとりすることができる。例えば、このアプリケーションは、典型的なブラウザアプリケーションとすることも、又はモバイルアプリケーションとすることもできる。通信路１０６は、セキュアなプロトコル又は非セキュアなプロトコルを使用する有線又は無線通信路とすることができる。例えば、通信路１０６は、インターネット、イーサネット(登録商標)、無線データネットワーク、セルラーデジタルデータネットワーク及びＷｉＦｉネットワークなどとすることができる。
【０００８】
バックエンドシステム１０８は、互いに結合できるＡＰＩプロセッサコンポーネント１１０と医療マーケットプレイスエンジン１１２とを有することもできる。バックエンドシステムのこれらの各コンポーネントは、１又は２以上のサーバコンピュータ及び１又は２以上のクラウドコンピューティングリソースなどの、１又は２以上のコンピューティングリソースを用いて実装することができる。１つの実施形態では、ＡＰＩプロセッサ１１０及び医療マーケットプレイスエンジン１１２をそれぞれソフトウェアで実装し、バックエンドシステムの１又は２以上のコンピューティングリソースのプロセッサによって実行される複数行のコンピュータコードをそれぞれが有するようにすることができる。他の実施形態では、ＡＰＩプロセッサ１１０及び医療マーケットプレイスエンジン１１２の各々を、プログラムドロジックデバイス、プログラムドプロセッサ又はマイクロコントローラなどのハードウェアで実装することができる。バックエンドシステム１０８は、医療システムを構成する様々なデータ及びソフトウェアモジュールを記憶する健康グラフストア１１４と、バックエンドコンポーネント１０８の医療データを記憶するために使用される健康グラフデータベースとに結合することができる。ストア１１４は、ハードウェアデータベースシステム、ソフトウェアデータベースシステム、又は他のいずれかのストレージシステムとして実装することができる。この実装例では、データ存続システムをバックエンドシステム１０８に組み込むことができ、或いはバックエンドシステム１０８に結合して離れた場所に配置することができる。
【０００９】
ＡＰＩプロセッサ１１０は、コンピュータ装置１０２のうちの１つのコンピュータ装置のアプリケーション１０４からのアプリケーションプログラミングインターフェイス（ＡＰＩ）要求及び通信を受け取り、図４及び図５を参照して後述するデータ存続処理を部分的に実行することができる。医療マーケットプレイスエンジン１１２は、医療ソーシャルコミュニティに参加している開業医をほんの数年前には想像もできなかった方法で潜在的顧客にたどり着けるようにすることができる。このマーケットプレイスは、消費者と通信して自分自身を売り込むためのソーシャルポータルを開業医に与えることに加え、各医療管理医に、Ｇｒｏｕｐｏｎ、Ｌｉｖｉｎｇ  Ｓｏｃｉａｌ、又はその他のソーシャルマーケットプレイスのユーザによく知られている環境で自身のサービスを提供する能力を与える。
【００１０】
システム１００では、とりわけ各ユーザのヘルスストリーム内のデータのアクセス制御を行えるように、ユーザの各エントリを、ユーザのグローバル一意識別子、及び情報を見ることが許可された医療システムの他のユーザの識別子と共に健康グラフ内のストア１１４に記憶することができる。このシステムでは、各エントリを、データ上に明示的に指定されたユーザ間のみで公開されるようにデフォルト設定することができる。ユーザは、自身が特定の医療問題について得た情報を自身の身元を明かさずにコミュニティと共有したいと望む場合、プライバシーレベルを「匿名」に変更することを選択することができる。
【００１１】
図２に、データ存続システムの特定の実装に応じてバックエンド１０８及び／又ストア１１４に実装できるデータ存続システムの実装例を示す。図２に示すように、データ存続システムでは、コンピュータ装置１０２のうちの１つのコンピュータ装置によって実行されているアプリケーション１０４からのＡＰＩコールを通じて、動的かつ柔軟なアプリケーションレベルデータの１つがシステムに入り込む。ＡＰＩコール、及びＡＰＩコールに含まれるアプリケーションレベルデータの例については図５に示す。図２に示すように、このデータは、ｓａｖｅ＿ｅｎｔｉｔｙデータ、Ｘ１２健康データ、（引用により本明細書に組み入れられるｗｗｗ．ｈｌ７．ｏｒｇ／ｉｍｐｌｅｍｅｎｔ／ｓｔａｎｄａｒｄｓにさらに詳細に記載される）ＨＬ７データ、（引用により本明細書に組み入れられるｈｔｔｐｓ：／／ｅｎ．ｗｉｋｉｐｅｄｉａ．ｏｒｇ／ｗｉｋｉ／Ｆａｓｔ＿Ｈｅａｌｔｈｃａｒｅ＿Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ＿Ｒｅｓｏｕｒｃｅｓにさらに詳細に記載される）ＦＨＩＲデータ、（引用により本明細書に組み込まれるｗｗｗ．ｆｏａｆ−ｐｒｏｊｅｃｔ．ｏｒｇ／にさらに詳細に記載される）ＦＯＡＦデータ及び／又はＪＳＯＮデータなどの、様々なフォーマットの様々なタイプのデータとすることができる。ＡＰＩコールは、要求に関するメタデータを含む。例えば、このメタデータは、図５に示すａｐｐｌｉｃａｔｉｏｎ＿ｄａｔａキーフィールド内、及び対応するＪＳＯＮペイロード内に表すこともできる。本開示は、図５の例に限定されるものではなく、システムは、図５に示す例以外のタイプのメタデータを利用することもできる。
【００１２】
データ存続システムは、ユーザ固有のアプリケーションデータ及びＡＰＩメタデータを図示のようなグラフデータベース１１４内で存続させる。データ存続システムは、各存続するトランザクションを、動的データフィールドの出所(provenance)を追跡する一意の識別子に相関させる。例えば、図５は、相関プロセスにおいて使用されるペイロード例を含む。このプロセスでは、様々な相関技術を使用することができる。例えば、相関技術は、強力識別子リンク(strong identifier linkage)、部分的な又は完全な文書ハッシュ化(partial or full document hashing)、ストリーミング重み付けクラスタリング(streaming weighted clustering)などを含むことができる。
【００１３】
データ存続システムは、図２に示すようにこの識別子を利用してアプリケーションデータの流入とメタデータとを動的に相関させて、（図２の例ではグラフデータベースとして示す）データベースに含まれるエンティティを進化させる。進化相関プロセスの例については図６に示しており、以下で説明する。図２は、アプリケーションレベルからデータ存続までに至るこの手順のフローを詳述し、エンティティ相関で締めくくるものである。図３には、データ存続システムによる相互作用及びデータ存続システムによる修正／更新が可能な健康グラフデータベースの例を示す。
【００１４】
図４には、図１及び図２に示す３つのアーキテクチャ部分を有するシステムを用いたデータ存続方法４００の例の詳細を示す。図示のように、この方法は、コンピュータシステム上で実行されるアプリケーション１０４と、バックエンドシステム１０８と、健康グラフ１１４とを用いて実行／実装することができる。最初に、アプリケーション１０４が、ＡＰＩ要求を通じてシステムを初期化する（４０２−ｉｎｉｔ（））。このＡＰＩ要求の例については上述した。このＡＰＩ要求では、ユーザが、図１及び図２のシステム１０８によって処理されるＡＰＩコールにおいてアプリケーション固有のデータ（アプリケーションレベルデータ）を宣言する。システム１０８は、ＡＰＩコールを処理して、対象とする内部受信者のために変換する（４０４−ｐｒｏｃｅｓｓ＿ｒｅｑｕｅｓｔ（））。ＡＰＩコールは、バックエンド１０８において受け取られると内部データモデルに変換され、ストリーミングＡＰＩプロセッサ１１０によって実行される相関メトリックの集合(ensemble of correlation metrics)に遭遇する。次に、このＡＰＩからのデータを医療マーケットプレイスエンジン１１２からの既知のデータモデルとさらに組み合わせ、入力データストリームを（後述する）進化エンティティに接続して進化エンティティ存続データベース１１４に記憶することができる。
【００１５】
次に、システム１０８は、ユーザ固有のデータフィールド及びＡＰＩメタデータフィールドを内部転送に付加することができる（４０６−ｉｎｓｅｒｔ＿ａｐｐｌｉｃａｔｉｏｎ＿ｄａｔａ（））。図７Ａ及び図７Ｂに、内部転送にデータフィールドを付加し、データストリームからアイデンティティモデルを抽出して既知のアイデンティティに相関させる例を示しており、図７Ａには、既知のアイデンティティ及びＡＰＩコールからのデータフィールドの例を示し、図７Ｂには、ＡＰＩコールにおけるデータフィールドと既知のエンティティとの相関を示す。
【００１６】
この方法では、バックエンドシステム１０８が、この内部データベース内のデータと（４０８−ｓａｖｅ＿ｔｒａｎｓａｃｔｉｏｎ（））、動的データフィールドの出所を追跡する一意の識別子とを存続させることができる。各観察されるエンティティのために作成される一意の識別子は、エンティティの相関データペイロードの重心を表す長さｎのベクトルとすることができる。この重心ベクトルとして表すことができる一意の識別子は、さらなるペイロードが処理されてリンクされるにつれ、追加データを考慮するように調整される。図６に、連鎖及び連結プロセスを示しており、図７Ａ及び図７Ｂにおいて観察され相関される特徴は、動的出所追跡のためのベクトル空間及び計算可能なエンティティ重心の進化を表す。
【００１７】
このプロセス中には、許可された外部データフィールドのホワイトリストに照らしてデータフィールドをチェックし、各キーの利用可能性レベルに従って存続させることができる。このホワイトリストは、ユーザ固有のフィールドを学習し、識別して受け渡すように自律的に更新される。データベースが、アプリケーションレベルデータとメタデータとに基づいて不変のトランザクションを受け取って存続させると、図７Ａ及び図７Ｂの例に示すようなトランザクションの一意の識別子を介して内部データモデルを更新するプロセスが初期化される。さらに、さらなるストリーミングエンティティが処理されるにつれ、これらのエンティティが、最高の一致を有するように計算された既存のエンティティにリンクされる。このプロセスは、アプリケーション固有のデータとＡＰＩメタデータとを抽出し、単一の要求からのデータを、含んでいるエンティティに相関させる（４１２−ｃｏｒｒｅｌａｔｅ＿ａｐｐｌｉｃａｔｉｏｎ＿ｄａｔａ（））。内部データモデルは、新たに観察されたアプリケーションデータ及びメタデータに従って更新されて進化する（４１４−ｕｐｄａｔｅ＿ｅｎｔｉｔｉｅｓ（））。このプロセスでは、健康グラフ１１４内にデータが保存されると、システム１０８が、プロセスが完了した旨をアプリケーション１０４に通知することができる（４１０−ｎｏｔｉｆｙｉｎｇ（））。
【００１８】
図５には、アプリケーションレベルのユーザが、グラフデータベース内で存続させるカスタムフィールドを提供できるレベルを示す。具体的に言えば、図５には、システムがａｐｐｌｉｃａｔｉｏｎ＿ｄａｔａフィールド内のＡＰＩエンドポイントにおいて動的キー値の宣言を可能にすることを示す。ＡＰＩインターフェイスは、トランザクションからのメタデータと組み合わさった時にデータベース内で存続するカスタムキー値のペアをこのフィールド内で可能にする。例えば、トランザクションのａｃｔｉｖｉｔｙ＿ｉｄを用いて、健康グラフデータベース１１４の一部であるトランザクションデータベースにわたって動的キー／値のペアを相関させる。このデータは、トランザクション内に存在する各エンティティのアイデンティティを更新するように相関付けられて結合する。
【００１９】
図６には、進化相関プロセスを示す。ペイロード６０２は、ストリーミング方式で処理されると、既存の既知の強力な識別子６０４に結び付く。同時に、これらのストリーミングペイロードは、上述したような観察されたメタデータと最適化された相関アルゴリズムとに従って相関のために測定される。図５には、相関のための強力な識別子とメタデータとを有するペイロード例を示す。
【００２０】
以上、特定の実施形態を参照しながら説明目的で解説を行った。しかしながら、上記の例示的な説明は、完全であることや、或いは開示した厳密な形に本開示を限定することを意図したものではない。上記の教示に照らして多くの修正及び変形が可能である。これらの実施形態は、本開示の原理及びその実際の応用を最良に説明することにより、他の当業者が検討する特定の用途に適した形で本開示及び様々な実施形態を様々に修正して最も良く利用できるように選択し説明したものである。
【００２１】
本明細書に開示したシステム及び方法は、１又は２以上のコンポーネント、システム、サーバ、機器又はその他のサブコンポーネントを通じて実装することができ、或いはこのような要素間で分散することもできる。システムとして実装する場合、このようなシステムは、とりわけ汎用コンピュータで見られるソフトウェアモジュール、汎用ＣＰＵ、ＲＡＭなどのコンポーネントを含み、及び／又は伴うことができる。サーバに革新性が存在する実装では、このようなサーバが、汎用コンピュータで見られるようなＣＰＵ、ＲＡＭなどのコンポーネントを含み、及び／又は伴うことができる。
【００２２】
また、本明細書におけるシステム及び方法は、上述した以外の異種の又は完全に異なるソフトウェアコンポーネント、ハードウェアコンポーネント及び／又はファームウェアコンポーネントを含む実装を通じて実現することもできる。このような他のコンポーネント（例えば、ソフトウェア、処理コンポーネントなど）、及び／又は本発明に関連する又は本発明を具体化するコンピュータ可読媒体については、例えば本明細書における革新性の態様を数多くの汎用又は専用コンピュータシステム又は構成と調和させて実装することができる。本明細書における革新性との併用に適することができる様々な例示的なコンピュータシステム、環境及び／又は構成としては、以下に限定されるわけではないが、パーソナルコンピュータ、ルーティング／接続性コンポーネントなどのサーバ又はサーバコンピュータ装置、ハンドヘルド又はラップトップ装置、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、消費者電子装置、ネットワークＰＣ，他の既存のコンピュータプラットフォーム、上記のシステム又は装置のうちの１つ又は２つ以上を含む分散型コンピュータ環境などの内部の、又はこれらに組み込まれたソフトウェア又はその他のコンポーネントを挙げることができる。
【００２３】
場合によっては、システム及び方法の態様を、例えばこのようなコンポーネント又は回路に関連して実行されるプログラムモジュールを含む論理回路及び／又は論理命令を介して実現し、或いはこのような論理回路及び／又は論理命令によって実行することもできる。一般に、プログラムモジュールは、本明細書における特定のタスク又は特定の命令を実行するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含むことができる。また、本発明は、通信バス、通信回路又は通信リンクを介して回路が接続された分散ソフトウェア、分散コンピュータ又は分散回路環境を背景として実施することもできる。分散環境では、メモリストレージデバイスを含むローカルコンピュータ記憶媒体及びリモートコンピュータ記憶媒体の両方から制御／命令を行うことができる。
【００２４】
本明細書におけるソフトウェア、回路及びコンポーネントは、１又は２以上のタイプのコンピュータ可読媒体を含み、及び／又は利用することもできる。コンピュータ可読媒体は、このような回路及び／又はコンピュータコンポーネント上に存在する、これらに関連する、又はこれらがアクセスできるいずれかの利用可能な媒体とすることができる。一例として、限定するわけではないが、コンピュータ可読媒体としては、コンピュータ記憶媒体及び通信媒体を挙げることができる。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール又はその他のデータなどの情報を記憶するためのいずれかの方法又は技術で実装された揮発性及び不揮発性の取り外し可能及び取り外し不能媒体を含む。コンピュータ記憶媒体としては、以下に限定されるわけではないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ又はその他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）又はその他の光学ストレージ、磁気テープ、磁気ディスクストレージ又はその他の磁気記憶装置、或いは所望の情報を記憶するために使用できてコンピュータコンポーネントがアクセスできる他のいずれかの媒体が挙げられる。通信媒体は、コンピュータ可読命令、データ構造、プログラムモジュール及び／又はその他のコンポーネントを含むことができる。さらに、通信媒体は、有線ネットワーク又は直接有線接続などの有線媒体を含むことができるが、本明細書におけるこのようなタイプの媒体は、いずれも一時的媒体を含まない。また、上記のいずれかの組み合わせもコンピュータ記憶媒体の範囲に含まれる。
【００２５】
本明細書におけるコンポーネント、モジュール、装置などの用語は、様々な形で実装できるあらゆるタイプの論理的又は機能的ソフトウェア要素、回路、ブロック及び／又は処理を意味することができる。例えば、様々な回路及び／又はブロックの機能を互いに組み合わせて他のあらゆる数のモジュールにすることができる。各モジュールは、中央処理装置に読み取られて本明細書における革新性の機能を実行できる、有形メモリ（例えば、ランダムアクセスメモリ、リードオンリメモリ、ＣＤ−ＲＯＭメモリ、ハードディスクドライブなど）に記憶されたソフトウェアプログラムとして実装することもできる。或いは、これらのモジュールは、汎用コンピュータに送信される、又は送信搬送波を介して処理／グラフィックスハードウェアに送信されるプログラミング命令を含むこともできる。また、モジュールは、本明細書における革新性が含む機能を実装するハードウェア論理回路として実装することもできる。最後に、これらのモジュールは、専用命令（ＳＩＭＤ命令）、フィールドプログラマブルロジックアレイ、又は所望のレベルの性能及びコストをもたらすこれらのいずれかの混合物を用いて実装することができる。
【００２６】
本明細書に開示したように、本開示による機能は、コンピュータハードウェア、ソフトウェア及び／又はファームウェアを通じて実装することができる。例えば、本明細書で開示したシステム及び方法は、例えばデータベース、デジタル電子回路、ファームウェア、ソフトウェア又はこれらの組み合わせも含むコンピュータなどのデータプロセッサを含む様々な形態で具体化することができる。さらに、開示した実装の一部では、特定のハードウェアコンポーネントについて説明しているが、本明細書における革新性によるシステム及び方法は、ハードウェア、ソフトウェア及び／又はファームウェアのいずれかの組み合わせを用いて実装することもできる。さらに、上述した機能及びその他の態様、並びに本明細書における革新性の原理は、様々な環境で実装することができる。このような環境及び関連する用途は、本発明による様々なルーチン、処理及び／又は動作を実行するように特別に構成することも、或いは汎用コンピュータ、又は必要な機能を提供するようにコードによって選択的に有効化又は再構成されたコンピュータプラットフォームを含むこともできる。本明細書で開示した処理は、本質的にいずれかの特定のコンピュータ、ネットワーク、アーキテクチャ、環境又はその他の装置に関連するものではなく、ハードウェア、ソフトウェア及び／又はファームウェアの好適な組み合わせによって実装することができる。例えば、本発明の教示に従って書かれたプログラムと共に様々な汎用機械を使用することができ、或いは必要な方法及び技術を実行するように特殊な装置又はシステムを構成する方が便利な場合もある。
【００２７】
本明細書で説明したロジックなどの方法及びシステムの態様は、フィールドプログラマブルゲートアレイ（「ＦＰＧＡ」）、プログラマブルアレイロジック（「ＰＡＬ」）装置、電気的にプログラム可能なロジックなどのプログラマブルロジック装置（「ＰＬＤ」）、メモリデバイス及び標準的なセルベースの装置、並びに特定用途向け集積回路を含む様々な回路のいずれかにプログラムされる機能として実装することもできる。態様を実装するための他のいくつかの可能性としては、メモリデバイス、（ＥＥＰＲＯＭなどの）メモリ付きマイクロコントローラ、内蔵マイクロプロセッサ、ファームウェア、ソフトウェアなどが挙げられる。さらに、ソフトウェアベースの回路エミュレーション、個別ロジック（順序ロジック及び組み合わせロジック）、カスタムデバイス、ファジー（ニューラル）ロジック、量子デバイス、及びこれらのデバイスタイプのいずれかの混成を有するマイクロプロセッサにおいて態様を具体化することもできる。例えば、金属酸化物半導体電界効果トランジスタ（「ＭＯＳＦＥＴ」）技術に似た相補型金属酸化物半導体（「ＣＭＯＳ」）、バイポーラ技術に似たエミッタ結合型論理回路（「ＥＣＬ」）、ポリマー技術（例えば、シリコン共役ポリマー及び金属共役ポリマー金属構造体）、混合アナログ及びデジタルなどの基礎デバイス技術を様々なコンポーネントタイプで提供することができる。
【００２８】
また、本明細書で開示した様々なロジック及び／又は機能は、挙動特性、レジスタ転送特性、論理コンポーネント特性及び／又はその他の特性の観点から、ハードウェア、ファームウェアのあらゆる数の組み合わせを使用して、及び／又は機械可読又はコンピュータ可読媒体に具体化されたデータ及び／又は命令として有効にすることができる。このようなフォーマットデータ及び／又は命令を具体化できるコンピュータ可読媒体は、限定的な意味ではなく様々な形態の不揮発性記憶媒体（例えば、光学記憶媒体、磁気記憶媒体又は半導体記憶媒体）を含むことができるが、ここでも一時的媒体は含まない。本明細書全体を通じ、「備える（ｃｏｍｐｒｉｓｅ、ｃｏｍｐｒｉｓｉｎｇ）」などの用語は、文脈上明らかに他の意味を必要としない限り、排他的又は網羅的な意味の対語である包括的な意味で、すなわち「〜を含むけれどもそれに限定されない（ｉｎｃｌｕｄｉｎｇ，ｂｕｔ  ｎｏｔ  ｌｉｍｉｔｅｄ  ｔｏ）」という意味で解釈されたい。また、単数又は複数を用いた単語は、それぞれ複数又は単数も含む。また、「本明細書において（ｈｅｒｅｉｎ）」、「本明細書に従って（ｈｅｒｅｕｎｄｅｒ）」、「上記の（ａｂｏｖｅ）」、「以下の（ｂｅｌｏｗ）」、及び同様の意味の単語は、本出願のいずれかの特定の部分ではなく本出願全体を示す。２又は３以上の項目のリストへの言及において「又は（ｏｒ）」という単語を使用している場合、この単語は、リスト内のいずれかの項目、リスト内の全ての項目、及びリスト内の項目のいずれかの組み合わせ、という解釈を全て含む。
【００２９】
本明細書では、本発明の現在のところ好ましいいくつかの実装について具体的に説明したが、本発明に関連する当業者には、本発明の趣旨及び範囲から逸脱することなく、本明細書で図示し説明した様々な実装の変形及び変更を行えることが明らかであろう。したがって、本発明は、適用される法の原則によって定められる範囲のみに限定すべきであることが意図される。
【００３０】
上記では、本開示の特定の実施形態について言及したが、当業者であれば、本開示の原理及び趣旨から逸脱することなく実施形態に変更を行うことができ、本開示の範囲は添付の特許請求の範囲によって定められると理解するであろう。
【図１】
2018538595.tif 000003
【図２】
2018538595.tif 000004
【図３】
2018538595.tif 000005
【図４】
2018538595.tif 000006
【図５】
2018538595.tif 000007
【図６】
2018538595.tif 000008
【図７Ａ】
2018538595.tif 000009
【図７Ｂ】
2018538595.tif 000010
【国際調査報告】
2018538595.tif 000011