(57)【要約】  複数の目的データベースへ向けられ、任意の複数のソースから元となっている入力データクエリは、まず認証された標準形式へ変換され、次に目的データベースをクエリするのに使用される。特に、入力データクエリを受け取る上で、比較的正確な参照データベースが入力データの種類に基づいて選択される。この参照は、次に、正確に一致するレコード、または正確に一致するとみなすことができ、これによって入力データを認証する一致に近いレコードを見つける目的で、入力データのためにクエリされる。さもなければ、要求ソースは、新しいクエリを提供するために指示される。認証されたレコードを有すると、標準形式へ変換され、その後、検索される目的で目的データベースをクエリするのに使用される。さらなる実施形態において、複数の参照データベースは、データの標準形式を決定するか、またはデータの複数の標準形式を決定するためにクエリされる。
2007535741.tif 000002
【特許請求の範囲】
【請求項１】
入力データクエリに一致する１または複数の目的データベースのための任意の複数の目的データベースをクエリする方法であって、
前記入力データに一致する参照データベースレコードのための参照データベースをクエリするステップと、
一致する参照データベースが見つかる場合に、前記参照データベースレコードに対応する前記１または複数の目的データベースレコードのための任意の前記複数の目的データベースをクエリするステップと
を備えたことを特徴とする方法。
【請求項２】
参照データベースレコードが見つからない場合に、新しい入力データクエリを入力する要求を生成するステップをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項３】
参照データベースをクエリする前記ステップは、前記入力データと一致する可能性のある参照データベースレコードのための前記参照データベースをクエリするステップを備えたことを特徴とする請求項１に記載の方法であって、
一致する参照データベースレコードが見つからないが、１または複数の一致する可能性のある参照データベースが見つかる場合、一致する可能性のあるレコードが、入力データに一致に近いレコードとみなすことができるかを決定するステップと、
一致に近いレコードが決定される場合、前記一致に近いレコードに対応する前記１または複数の目的データベースレコードのための任意の前記複数の目的データベースをクエリするステップと
をさらに備えたことを特徴とする請求項１に記載の方法。
【請求項４】
一致する参照データベースレコードが見つからず、１または複数の一致する可能性のある参照データベースが見つかるが、一致に近いレコードは決定されない場合、前記１または複数の一致する可能性のあるレコードの間から、前記入力データに対応するレコードを選ぶための選択要求を生成するステップと、
一致する可能性のあるレコードが前記入力データに対応し、選ばれる場合、前記選ばれたレコードに対応する前記１または複数の目的データベースレコードのための任意の前記複数の目的データベースをクエリするステップと
をさらに備えたことを特徴とする請求項３に記載の方法。
【請求項５】
前記参照データベースをクエリする前に、前記参照データベースは、入力データの種類に基づいて、複数の参照データベースの間から選択されることを特徴とする請求項１に記載の方法。
【請求項６】
任意の複数の目的データベースをクエリする前記ステップは、一致する参照データベースレコードが見つかる場合に、前記参照データベースレコードに対応する可能性のあるレコードをクエリするステップをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項７】
１または複数の目的データベースレコードのために、１または複数の目的データベースをクエリする方法であって、
入力データクエリを受け取るステップと、
入力データの種類に基づいて、複数の参照データベース間から１または複数の参照データベースを選択するステップと、
単一の参照データベースが選択された場合に、
前記入力データに一致する参照データベースレコードのために、単一の参照データベースをクエリするステップと、
一致する参照データベースが見つかる場合、前記１または複数の目的データベースレコードのための、前記１または複数の目的データベースの続くクエリのために、前記一致する参照データベースを使用するステップと
を備えたことを特徴とする方法。
【請求項８】
前記使用するステップは、前記一致する参照データベースレコードを単一の標準形式に変換するステップ、および前記１または複数の目的データベースレコードのための、前記１または複数の目的データベースをクエリするための前記標準形式を使用するステップを備えたことを特徴とする請求項７に記載の方法。
【請求項９】
前記使用するステップは、前記一致する参照データベースレコードを、各標準形式が１または複数の目的データベースのうちの１つに対応する１または複数の標準形式に変換するステップ、および前記１または複数の目的データベースレコードのための目的データベースに対応するクエリに、各標準形式を使用するステップを備えたことを特徴とする請求項７に記載の方法。
【請求項１０】
前記使用するステップは、前記一致する参照データベースレコードから情報を取り除く前記ステップ、および１または複数のデータベースレコードのための前記１または複数の目的データベースの前記続くクエリのために、任意の保持する情報を続いて使用するステップを備えたことを特徴とする請求項７に記載の方法。
【請求項１１】
前記一致する参照データベースレコードは、前記入力データクエリを超える追加の情報を備え、前記使用するステップは、
複数の形式を作成するために、前記一致する参照データベースレコードの前記情報を分離するステップと、
前記１または複数の目的データベースレコードのための、前記１または複数の目的データベースの前記続くクエリのために、前記複数の形式を使用するステップと
を備えたことを特徴とする請求項７に記載の方法。
【請求項１２】
複数の参照データベースが選択された場合に、
前記入力データに一致する参照データベースが見つかるまで、前記複数の参照データベースを続いてクエリすることと、
一致する参照データベースが見つからない場合、１または複数の目的データベースレコードのための、１または複数の目的データベースの続くクエリのために、前記一致する参照データベースレコードを使用することと
を特徴とする請求項７に記載の方法。
【請求項１３】
複数の参照データベースが選択された場合、
前記入力データに一致するすべての参照データベースのために、平行して前記複数の参照データベースをクエリすることと、
１または複数の目的データベースレコードが見つかる場合、
前記一致する参照データベースレコードを選択することと、
１または複数の目的データベースレコードのための、１または複数の目的データベースの続くクエリのために、前記一致する参照データベースレコードを使用することと
を特徴とする請求項７に記載の方法。
【請求項１４】
前記選択するステップは、前記１または複数の目的データベースレコードの間に定足数があるかどうかに基づくことを特徴とする請求項１３に記載の方法。
【請求項１５】
複数の参照データベースが選択された場合、
前記入力データに一致するすべての参照データベースのために、前記複数の参照データベースをクエリすることと、
１または複数の一致する参照データベースレコードが見つからない場合、１または複数の目的データベースレコードのための、１または複数の目的データベースの続くクエリのために、各一致する参照データベースレコードを使用することと
を特徴とする請求項７に記載の方法。
【請求項１６】
１または複数の目的データベースレコードのための、１または複数の目的データベースをクエリするシステムであって、
入力データクエリを参照データベースレコードにマッピングさせるための参照ベースのマッピングルールと、
参照データベースレコードを目的データベースレコードに一致させるための目的ベースのクエリルールと、
入力データクエリが与えられ、選択された参照データベース内のレコードを、前記与えられた入力データクエリへ一致させるために、前記参照ベースのマッピングルールを使用し、前記１または複数の目的データベース内の１または複数の目的データベースレコードを、前記一致した参照データベースレコードまたは前記一致した参照データベースレコードの標準形式へ一致させるために、目的ベースのクエリルールを使用する認証およびマッピング処理と
を備えたことを特徴とするシステム。
【請求項１７】
前記認証およびマッピング処理は、前記選択された参照データベースを決定するために参照データベースリストを使用し、入力データの種類と前記参照データベース間の関係を特定する参照データベースリストをさらに備えたことを特徴とする請求項１６に記載のシステム。
【請求項１８】
参照データベースレコードを標準形式へ変換するための変換ルールのリストをさらに備えたことを特徴とする請求項１６に記載のシステム。
【請求項１９】
前記変換ルールのリストは、参照データベースレコードを、前記目的データベースに対応するカスタマイズされた標準形式へ変換するためでもあることを特徴とする請求項１８に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して、データベースアクセスに関する。より詳細には、本発明は、任意の複数の要求ソースからの入力データで、複数の目的データベースの１または複数にクエリするための方法および装置に関する。
【背景技術】
【０００２】
今日、多くのコンピューティングシステムおよびエンドユーザは、必要な情報を抽出するために、多くの異なる目的データベースと対話する必要がある。これらの目的データベースへアクセスしていたコンピューティングシステムおよびエンドユーザの入力データは、しばしば多様性がある。一般に、情報を抽出するために、この様々な入力データを、各種ソースから目的データベースエントリへ、マッピングする必要がある。しかし、様々な入力データと様々なデータベースエントリ間の矛盾は、しばしばこのタスクを複雑にする。
【０００３】
詳細には、様々な目的データベースは、それら自身およびお互いの間で、エラー、欠陥、矛盾（たとえば、不完全、不明瞭、不正確なエントリ）をしばしば含む。同様に、様々な入力データソース（コンピューティングシステムであろうと、エンドユーザであろうと）もまた、それら自身およびお互いの間で、しばしばエラー／欠陥および矛盾を含む。一般に、目的データベースおよび入力データでのエラーおよび欠陥のアクセスは、小さい（たとえば、データベースが実語「Ｓｔｒｅｅｔ」をリストする一方で、入力データは略語「Ｓｔ．」を使用する。）か、またはより有名（たとえば、データベースのすべてのエントリが「Ｒｏｕｔｅ  １」を参照し、入力データは代替名「Ｍａｉｎ  Ｓｔ．」として入力される。）なものであることができる。しかし、エラー／矛盾の度合いに関わらず、データベースおよび入力データ間で整合性を決定できることは、いまだ必要があり、しばしば重要である。
【０００４】
この問題の一例として、ユーザは、属性値に影響する任意の問題を特定するために、特定のストリートアドレス（ｓｔｒｅｅｔ  ａｄｄｒｅｓｓ）にある建物についての情報を探していると仮定する。関連情報は、国および町の不動産記録、州および連邦の税記録、１または複数の金融機関にわたる担保記録、新聞の保管などにある。さらに、たとえば、属性の入力住所にも基づいて、ユーザの代わりにこれら複数のソースを探すことができ、すべての関連情報を返すことができる、インターネットベースのサービスがあると仮定する。しかしこれらの実体に対応する各目的データベースは、潜在的に独自の住所の表現を有する。たとえば、記録は正確な特定のためにブロック番号および番地に依存するので、国の記録は、短縮した方式で住所を保持するかもしれない。国の記録は、ストリート名を表すのに使用される文字数に限られる、初期のコンピューティングシステムで格納されたかもしれない。金融記録は、異なるユーザがデータを入力し、異なる趣向を有するので、どのようにそれらがストリート名および指標を表すかにおいて、広く矛盾するかもしれない。さらに、すべてのこれらデータベースは、誤字またはスペルミスなどのデータ入力エラーを有する記録を含みそうである。全体として、サービスが、ユーザによって入力された入力住所を、様々なデータベースのそれぞれとうまく適合できないという強い可能性がある。
【０００５】
そのようなマッピングの問題を克服すること、および様々なソースからのエラー／欠陥の可能性のある入力データと複数の異なるデータベースのエントリとの間の適合性を見つけることは、負担の大きいタスクである。より詳しくは、入力データのための「Ｍ」個の異なるソースがあると仮定すると、それらに特有の種類の変化／矛盾およびエラーを、それぞれが有する。たとえば、入力データソースは、データベース、ユーザインターフェースアプリケーションを介して取得されたデータ、電話の会話でカスタマーサービス担当者によって収集されたデータ、手書きメモの転写、音声認識出力などを含むことができる。さらに、任意の「Ｍ」個のソースからの任意の与えられた入力データ要求を、検索されうる「Ｎ」個の異なるソースがあると仮定する。例えば、上記の属性検索の例に加えて、コンピューティングシステムは、異なるサービスプロバイダーからの顧客記録、異なるマーケティング会社からの顧客データ、異なる法域からの法律データなどへアクセスする必要があるかもしれない。もう一度、これら「Ｎ」個のデータベースのそれぞれ特有の変化／矛盾およびエラーを有するだろう。任意の「Ｍ」個の入力ソースから任意の「Ｎ」個の目的データベースへ、入力データをマップするために、各ソースを各目的へマッピングするためのルールを定義することを伴う。任意の与えられた入力ソースおよび任意の与えられたデータベースのエラー／矛盾のために、任意のこれらのルールの複雑さは、高くなりうる。そして、ルールを定義するのに困難さに至り、特にこのクエリが複数の目的データベースにアクセスされる場合に、任意の与えられたクエリを処理するために、過剰の処理に至る。重要なものとして、定義される必要があるルールの総数は、およそ「Ｍ×Ｎ」個のルールである。この状況を悪くすることは、「Ｍ×Ｎ」個のルールが各フィールドで定義される必要があるので、このルールがフィールド特有であることを必要とする可能性がある。「Ｍ×Ｎ」個の製品のできる限り高い値は、複数の入力ソースと１または複数の目的データベースのエントリ間の直接のマッピングを実行しようとすることの困難性を示す。
【０００６】
上記で説明したマッピング問題を乗り越える多くの既存のアプローチがある。１つのアプローチは、目的データベースとの対話を特定の選択肢に制限することであり、これによって、データが表現される方式を制限する。たとえば、プルダウンボックスは、データベースシステムにデータを入力するために使用でき、検索を行うときに入力データを特定する。このアプローチは、データベースおよびデータベースと入力データ間のエラーおよび矛盾を減らす。しかし、このアプローチは、自由形式の柔軟性を許さず、与えられたデータベースエントリの可能性のある値の数は、ユーザをひるませる結果にならない数に制限される場合のみ、実現可能である。
【０００７】
第２のアプローチは、様々な入力データソースと複数の変動目的データベースの間で、動的マッピングを実行するための、複数のルールのセットを定義することである。上記のとおり、このアプローチは、すべての可能性のあるエラーおよび矛盾を考慮して、様々な入力データソースを各変動目的データベースへマッピングする、「Ｍ×Ｎ」個のルールを定義することを伴う。このアプローチが自由な形式の柔軟さを許す一方で、目的データベースおよび／または入力データソースの変動数が大きい場合、これは煩雑なタスクである。さらに、場合によってルールの複雑さが与えられると、この方法は、任意の与えられたクエリをさらに処理することとなる。
【０００８】
第３のアプローチは、「クレンジングルール」を使用して複数のデータベースにまたがるデータを「クレンジング」し、これによって、エントリエラーを取り除き、データベース内およびデータベース間の両方の整合性をとる（たとえば、データベース内のすべてのアドレスエントリが、実語「Ｓｔｒｅｅｔ」を使用するようクレンジングされる。）。コンピューティングシステムは、その後、入力データが現在データベースエントリで矛盾しないように、データベースへアクセスする前に入力データ上で「クレンジングルール」を使用することができる。代替として、コンピューティングシステムは、複数の目的データベース間で現在共通であるデータ表現へ、さらなる自由形式の入力データをマップする単一のルールを利用できる。一般に、この第３のアプローチは、目的データベースが共通して制御され／保持される状況、および複数のデータベース間の目的データが静的である状況によく適している。しかし、複数のデータベース間の目的データが動的ならば、データベース情報は、そのデータへのアップデートを行うために、連続的にクレンジングされていただろう。これは、整合性の問題を示す。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
第２および第３のアプローチは、マッチング問題に対処し、入力データおよびデータベースエントリに関して、自由形式の柔軟さを認めるが、部分一致（ｍａｔｃｈ）に関してさらなる問題も有する。特に、第２および第３のアプローチなどでマッチングのためのルールを定義するとき、厳密でない一致を検出するルール（つまり部分マッピングルール）を定義することも可能である。たとえば、部分一致は、共通のミススペルまたは誤字を含む入力に一致するすべてのレコードを受け入れることを伴う（たとえば、「Ｍｉａｎ  Ｓｔｒｅｅｔ」は「Ｍａｉｎ  Ｓｔｒｅｅｔ」と同等である。）。部分マッピングは、データエントリエラーによって隠されたかもしれない意図したレコードを場合によっては特定する利点を提供する。しかし、全然一致しないアイテムを特定する不利点も有する。入力データまたは目的データのどちらかが正しいと推定できる場合、このような不一致の可能性は低くなりそうだ。しかし、エラーが、入力データおよび目的データの両方に存在する可能性がある場合、不一致の可能性は、大幅に高くなる。
【課題を解決するための手段】
【００１０】
したがって、データベースアクセスの効率性と信頼性も改善する一方で、任意の複数のソースから任意の複数の目的データベースへアクセスするための、従来技術の欠点を克服し、ルールの数と複雑さを減らす方法およびシステムを提供することが望ましい。本発明の方法によると、要求ソースからの入力データで目的データベースをクエリする前に、入力データは最初に、「参照ベースのマッピングルール」を使用して、参照データベースと比較される。この参照データベースは、比較的静的であり、クレンジングされていると推定されることによって、参照データベースを実際の目的データベースより正確にする（参照データベースのクレンジングは、本発明の範囲外で起こる処理であり、本発明は、参照データベースが事前にクレンジングされていると推定されることに留意されたい。）。したがって、入力データをこの比較的正確な参照ソースと一致させる目的は、入力データを認証し、完全で、不明瞭でなく、正しい／エラーがないことを保障する。
【００１１】
さらに詳しくは、参照データベースをクエリする本発明のこのステップは、正確に一致するレコードを作成するか（これにより、入力データを認証する）、一致するレコードがないか（新しい要求をする要求ソースを必要とする。つまり、エンドユーザ、コンピュータシステムなど。）のいずれかとなる。代替として、本発明のさらなる実施形態によれば、このステップは、１または複数の一致する可能性のあるレコードも作成するかもしれない。一致する可能性のあるレコードが見つかり、正確に一致するレコードが見つからないと仮定すると、一致する可能性のあるレコードの一つが、入力データに正確に一致するとみなされるのに「十分近い」かどうかについて決定がなされ、そしてもしそうならば、この方法は、このレコードで処理する。正確に一致するとみなすのに「十分近い」一致する可能性のあるレコードがない場合は、要求ソースは、新しいクエリを作るよう要求される。さらなる代替として、一致する可能性のあるレコードが見つかり、「十分近い」とみなされるものがないとき、これらの一致する可能性のあるレコードは要求ソースへ返され、入力に一致するレコードを選択するようソースに問う。そしてこのようなレコードは存在すると仮定する。
【００１２】
入力データに一致するレコードが見つかるかまたは選択されると、入力データは、認証されたソースとみなされ、この一致レコードはここで、実際の目的データベースのクエリに使用される。さらに詳しくは、「変換ルール」を使用すると、この一致レコードは、次に、元の入力データにおいて表される情報すべてを表す単純化および規格化されたデータ形式である標準形式に変換されるが、参照データベースレコードより、検索される各目的データベースに一致させるほうがより単純な可能性がある。代替として、「変換ルール」は、参照データベースの形式を使用するのと同じように単純かもしれない（このような場合、実際の変換は行われない。）。しかし、「変換ルール」は、一致レコードを複数の標準形式に変換するために使用され、各形式は、検索されることになる関連付けられた目的データベースのエントリに対応し、一致するのが好ましい。とにかく、結果の標準形式または入力データの形式は、次に、「目的ベースのクエリルール」を使用して１つまたは複数の目的データベースのデータエントリと比較される。クエリからの結果の一致レコードは、次に、要求ソースへ返される。
【００１３】
入力データおよび「Ｃ」個の参照データベースのために、「Ｍ」個の異なるソースがあると仮定すると、「参照ベースのマッピングルール」は、参照データベースへのアクセスのために「Ｍ×Ｎ」個のルール備える。同様に、「Ｎ」個の異なるデータベースで使用されるデータエントリの「Ｎ」個の異なる表現／形式があると仮定すると、認証され、規格化された入力データの標準形式は、「目的ベースのクエリルールが「Ｎ」個のルールからなることを許可する。同様に、単一の標準形式であろうと、複数の標準形式であろうと、一致レコードを変換することは、より悪い場合において、「変換ルール」は約「Ｎ」個のルールである。結果として、約「Ｎ」個の任意の目的データベースをクエリする任意の「Ｍ」個の要求ソースのための我々の複数段階の方法は、すべての入力データ形式をすべての目的データベースエントリ形式にマッピングするための従来技術の「Ｍ×Ｎ」個のルールではなく、約（Ｍ×Ｃ）＋Ｎ個のルール（または、変換ルールを考慮する場合、（Ｍ×Ｃ）＋２Ｎ個のルール）である。参照データベース「Ｃ」の数は、通常「Ｍ」および「Ｎ」と比較して少なく、しばしば１つに制限されることさえあるので、任意の複数のソースからの目的データベースをクエリする我々の方法は、定義される必要があるルールの数を大幅に単純化する。重要なものとして、（Ｍ×Ｃ）＋Ｎ個のルールとみなそうが、（Ｍ×Ｃ）＋２Ｎ個のルールとみなそうが、従来技術と比較して減らされたルール数は、任意の与えられたクエリの処理を減らすことになり、これによって、我々のデータベースクエリ方法は従来技術より効率的になる。
【００１４】
我々の方法は、従来技術に多くのさらなる利点をも有する。第１に、入力データが認証されているので、目的データベース検索が結果レコードを作成しない場合、目的データベースが望まれる情報を含まないという、より高い信頼性がある。第２に、従来技術と同様に、我々の方法は、参照データベースおよび目的データベースへアクセスする際に、部分一致ルールをサポートする。しかし、参照データベースおよび目的データベースへアクセスするとき、参照データベースがアクセスする間、参照データベースが正しいと推定され、目的データベースがアクセスする間、入力データの標準形式が正しいと推定されるので、我々の方法は、実際には一致しないデータベースレコードを特定する可能性を減らす。第３に、入力データの標準形式は、元の入力データの不要な部分が簡単に取り除かれるので、単純化された目的データベース検索をできるようにし、さらに、元の入力データをコンポーネントの断片に分離し、優先順位が決めることができ、その後各断片は、階層形式で目的データベースを検索するのに使用されるので、より効率的な目的データベース検索をできるようにする。
【００１５】
本発明の第２の実施形態によると、１つの参照データベースよりむしろ、複数の参照データベースが、入力データを認証するために、選択され、アクセスされる。これらの複数の参照データベースは、正確に一致するレコードまたは一致する可能性のあるレコードのために、シーケンス形式でデータベースを検索すること、すべての正確な一致および一致する可能性のあるレコードのために平行してデータベースを検索すること（そして次に、これらのレコードのうちの１つを使用すること）、および階層形式のデータベースを使用して断片の入力データを認証することを含む、多くの代替方法で使用できる。
【００１６】
最後に、本発明の第３の実施形態によると、入力の複数の標準形式が、検索されるよう意図された各目的データベースをクエリするのに使用される。さらに詳しくは、いくつかの場合において、冗長性、および入力データを標準形式へマッピングするときに起こるかもしれない任意のエラーを克服するエラーチェックを提供するのに有益かもしれない。複数の標準形式は、たとえば、単一の参照データベースをクエリし、次に複数の形式の結果レコードを表現することによって、または複数の参照データベースにクエリし、各結果レコードを入力データの標準形式として使用することによって、取得できる。
【発明を実施するための最良の形態】
【００１７】
図１は、本発明の実施形態による実行方法のための、コンピューティングシステム１００の高レベルのアーキテクチャである。コンピューティングシステム１００は、本発明の方法を実行するためのプロセッサ１０２を備え、この方法は、「認証およびマッピング処理」１０４として実行する。認証およびマッピング処理１０４は、１または複数の参照データベース１０６ａ〜ｄ、および複数の目的データベース１０８ａ〜ｄを有する。参照データベースおよび目的データベースは、共同設置またはコンピューティングシステムの一部であることができ（たとえばデータベース１０６ａ〜ｂおよび１０８ａ〜ｂ）、あるいはコンピューティングシステムの外部、およびネットワーク１０９を介してアクセス可能であってもよい（たとえばデータベース１０６ｃ〜ｄおよび１０８ｃ〜ｄ）。認証およびマッピング処理１０４は、複数の要求ソース１２２から入力データクエリ１１０を受け取り、ここで入力データクエリ１１０は、１つまたは複数の目的データベース１０６へ向けられる。要求ソース１２２は、コンピューティングシステムの外部であり（たとえば、ネットワークインターフェースを介してコンピューティングシステム１００にアクセスする、外部エンドユーザおよび外部システム）、および／または、コンピューティングシステム１００のローカルである（たとえば、直接コンピューティングシステムにアクセスするエンドユーザか、システム上で実行されるローカルアプリケーション）。同様に、目的データベース１０８からレコードを受け取ると、認証およびマッピング処理１０４は、受け取ったレコード１１２を要求ソース１２２へ転送する。コンピューティングシステム１００は、参照データベース１０４にアクセスするための「参照ベースのマッピングルール」１１４および、目的データベース１０８にアクセスするための「目的ベースのクエリルール」のデータベースも備える。コンピューティングシステム１００は、参照データベース１０６を選択するための「参照データベースのリスト」１２４をさらに備える。随意的に、コンピューティングシステムは、さらに以下で説明される「変換ルール」１１８も備える。
【００１８】
図２は、任意の複数の要求ソース１２２から、入力データクエリ１１０で、多数の目的データベース１０８うちの１または複数をクエリするための本発明の方法ステップの第１の実施形態を表すフローチャートである。さらに詳しくは、要求ソース１２２から入力データクエリを受け取った上で（ステップ２０２）、入力データは、それが完全で、不明瞭でなく、正しく／エラーがないことを保障することを、まず認証される。特に、ステップ２０４において、参照データベース１０６は、入力データの種類に基づいて最初に選択される。参照データベースは、比較的に静的であることが推定されるデータベースであり、注意深くクレンジングされてきたことによって、参照データベースは、目的データベース１０８と比べて、比較的に正確となる。（参照データベースのクレンジングは、本発明の外で起き、図２の方法ステップは、このクレンジングがすでに起きたと推定することに留意されたい。さらに、クレンジング処理が、プロセッサ集中であるかもしれない一方で、クレンジングの結果は、本発明によって実行される多くのエンドユーザ／目的データベースアクセス間の結果であると考えることができ、これによって、データベースアクセスごとのコストを小さくできることにさらに留意されたい。）これによってコンピューティングシステム１００は、参照データベースのリスト１２４を保持することができ、データの種類ごとの参照が認証できる。入力データの種類に基づいて、認証およびマッピング処理１０４は、参照データベースの間から選ぶ。もう一度、ストリートアドレスの例を使用して、参照データベースは、商業用のストリートアドレスガイド、マッピングおよび地理的情報データベース、または郵便サービスを提供するものなどの公文書データベースを含むことができる。ここで、属性記述の種類に基づいて、入力データは、これらのアドレスベースの参照データベースの一つが選択されることを提供する。
【００１９】
参照データベースを有すると、このデータベースは、「参照ベースのマッピングルール」１１４を使用して、入力データでステップ２０６において、クエリされる。これらのマッピングルール１１４は本発明特有ではなく、それ自身の正確なデータにあまり依存せず、入力データおよびこのデータに共通のエラー（入力データのソースに影響を与えるこれらの両方）の一般的に形式に依存することに留意されたい。それにもかかわらず、入力データおよび「Ｃ」この参照データベース１０６のために、「Ｍ」個の異なるソースがあると仮定すると、「参照ベースのマッピングルール」は、参照データベース１０６へアクセスするための「Ｍ×Ｃ」個のルールを備えることになる。入力データのそれぞれの種類は、それ自身のルールを有するかもしれないことにも留意されたい。重要なことには、参照データベース１０６がクレンジングされ、正確と推定されるので、「参照ベースのマッピングルール」１１４を備えた「Ｍ×Ｃ」個のルールのそれぞれは、従来技術のマッピングルールと比べて、単純化されることに留意されたい。
【００２０】
「参照ベースのマッピングルール」１１４は、参照データベースをクエリする上で、入力データへ正確に一致するレコードが見つかり選択され（これによって入力データを検証する）、または一致するデータが見つからないかのいずれかということを定義される。さらに、ルール１１４は、データベースクエリが、１または複数の一致する可能性のあるレコードが見つかることになるという、部分マッピングルールも含むように定義されるのが好ましい。したがって、一致レコードが見つかると仮定すると、入力データは認証され、我々の方法はステップ２０６からステップ２０８へ進む。同様に、一致するレコードが見つからないと仮定すると、我々の方法は、ステップ２０６からステップ２１０へ進み、ここで要求ソースは、新しいクエリを作るよう指示される。しかし、ルール１１４が部分マッピングルールを含むと仮定すると、正確な一致が見つからないが、１または複数の一致する可能性のあるレコードが見つかる場合、我々の方法は、ステップ２０６からステップ２１２へ進み、ここで、これらの一致する可能性のあるレコードの１つが「十分近い」とみなせるかどうかに関しての決定がなされる（「参照ベースのマッピングルール」１１４に基づいて）。そのようなレコードが見つかる場合、我々の方法は、選択された一致に近いレコードを使用して、それが正確な一致かのように、ステップ２１２から２０８へ進む。しかし、一致する可能性のあるレコードの間からのレコードが正確な一致とみなすことができない場合、我々の方法は、ステップ２１２からステップ２１０へ進み、ここで、要求ソース（たとえば、エンドユーザまたはコンピューティングシステム）は、新しいクエリを作るよう指示される。
【００２１】
ステップ２１２からステップ２１０へ進むことの代替として、一致する可能性のあるレコード間からのレコードが正確な一致とみなすことができなかった場合、我々の方法は、ステップ２１２からステップ２１４へ進むことができ、ここで、一致する可能性のあるレコードのセットは、入力データに一致するレコードを選択するためのソースを要求する入力データソース１２２へ、入力データを返される。要求ソースが、入力データと一致する一致する可能性のあるレコードがないことを示す場合、我々の方法は、ステップ２１０へ進み、ここで、要求ソースはもう一度新しいクエリを作るよう要求される。しかし、要求ソースが一致レコードを示す場合、このレコードは、ここで認証された入力データとして使用され、我々の方法は、ステップ２１４からステップ２０８へ進む。「参照ベースのマッピングルール」１１４は、部分マッピングルールを含む必要はないが（たとえばステップ２１２および２１４）、このようなルールを含むことが好ましいことに、もう一度留意されたい。それにも関わらず、このようなルールが含まれるとき、参照データベースは、クレンジングされ正確であると推定されるので、クエリが与えられると、我々の発明は、より少ない「一致する可能性のあるレコード」を作成し、これは従来技術と比較して、全くクエリに一致しない。
【００２２】
ステップ２０８の方へいき、マッピングレコードが見つかり選択されると、このレコードは標準形式に変換され、これは、入力データ内にある全情報を表す単純化され規格化された形式である。標準形式への変換は、ルールに基づいてなされ、「変換ルール」１１５と呼ばれる。これらのルールは、参照データベースの形式を使用するのと同じくらい単純かもしれない（このような場合、実際の変換は行われない）。代替として、これらのルールは、参照データベースレコードを各目的データベースにより簡単に一致する単一の標準形式へ変換する処理ステップを定義できる。しかし、ルールは、参照データベースレコードを複数の標準形式へ変換する処理ステップを定義できることが好ましく、各形式は、検索されることになる関連目的データベースのエントリに対応し一致する。言い換えると、検索されることになる各特定目的データベースにとって、一致レコードは、データベースの個々の形式ルールに一致する標準形式に変換され、結果として多くの標準形式になる。重要なことには、標準形式を各目的データベースに対応させることは、一致が見つかることになる可能性を増加させる。
【００２３】
一般に、一致するレコードから標準形式への変換を実行するための「変換ルール」１１８は、参照データベースレコードを分析すること、ルールに特有の特定の特徴を探すこと、およびこのような特徴が見つかった場合に変更行うことによって実行される。たとえば、参照データベースは、「Ｓｔｒｅｅｔ」または「Ａｖｅｎｕｅ」と綴るかもしれないが、目的データベースは、「Ｓｔｒｅｅｔ」を「Ｓｔ．」、「Ａｖｅｎｕｅ」を「Ａｖｅ．」と、省略形を使用することが知られている。この場合に、「Ｓｔｒｅｅｔ」が「Ｓｔ．」に置き換えられ、「Ａｖｅｎｕｅ」が「Ａｖｅ．」に置き換えられるべきであることを特定することは、変換ルールにとって有利点である。重要なことに、一致レコードを単一の標準形式に変換しようと、複数の標準形式に変換しようと、より悪い場合、この「変換ルール」は、「Ｎ」個の異なるデータベースに使用されるデータエントリの「Ｎ」個の異なる表現／形式があることを仮定する約「Ｎ」個のルールである。重要なことに、クレンジングされた形式内の元の入力データを有することによって（つまり、参照データベースレコード形式）、１または複数の目的データベースのための標準形式へ変換することは、単純化されることに留意されたい。同様に重要なことに、１または複数の標準形式が作成されたかどうかは、この時点で、入力データは認証され規格化された形式である。
【００２４】
ステップ２１６に進んで、入力データの標準形式を有すると、１または複数の目的データベース１０８は選択され、「目的ベースのクエリルール」１１６を使用して、入力データの標準形式を検索される（正確な目的データベースの数、およびどのデータベースが検索されたかは、要求ソースの初期の検索要求に基づく）。この検索の結果に基づいて、検索されたレコードは、ステップ２１８で要求ソースへ返される。
【００２５】
もう一度、「目的ベースのクエリルール」１１６が本発明に特有でなく、検索される正確なデータの特定のコンテンツに依存し、そしてさらに検索される目的データベースエントリの一般的形式に依存するだろう。それにも関わらず、「Ｎ」個の異なるデータベースで使用されるデータエントリの「Ｎ」個の異なる表現／形式があると仮定すると、入力データの認証され、規格化された標準形式によって、「目的ベースのクエリルール」１１６がたった「Ｎ」個のルールから成ることになる。（各入力データの種類の標準化された形式はそれ自身のルールを有するかもしれないことにも留意されたい。）さらに、入力データの認証され規格化された標準形式のために、「目的ベースのクエリルール」を備えた「Ｎ」個のルールは、従来技術の一致ルールと比べて、単純化されている。全体として、任意の複数の要求ソース１２２が任意の「Ｎ」個の目的データベース１０８をクエリできるようにするための我々の複数段階の方法は、すべての入力データ形式をすべての目的データベースエントリ形式にマッピングさせるための従来技術の「Ｍ×Ｎ」このルールよりむしろ、約「（Ｍ×Ｃ）＋Ｎ」個のルール（または、「変換ルール」１１８を考慮する場合、「（Ｍ×Ｃ）＋２Ｎ」個のルール）である。参照データベース「Ｃ」は通常、「Ｍ」および「Ｎ」と比べて小さく、しばしば１つに制限されているかもしれないので、任意の複数のソースから目的データベースをクエリする我々の方法は、定義される必要のあるルールの数を大幅に単純化する（つまり、「（Ｍ×Ｃ）＋Ｎ」は通常、「Ｍ×Ｎ」より少ない）。重要なことには、従来技術と比べて減らされたルールの数は、任意の与えられたクエリの処理を減らすことになり、これにより、我々のデータベースクエリ方法を、従来技術より効率的にする。
【００２６】
本発明の増加した効率性および単純化されたルールに加えて、入力データの認証され規格化された標準形式は、「目的ベースのクエリルール」１１６、およびどのように目的データベースクエリがステップ２１６において実行されるかに関して、多くのさらなる有利点を有する。第１に、入力データは認証されているので、目的データベース検索が結果レコードを作成しない場合、目的データベースが望む情報を含まないというより高い信頼性がある。第２に、「目的ベースのクエリルール」１１６は、部分マッピングルールを含むのが好ましい。しかし、入力データの認証され規格化された標準形式は、目的データベースクエリを実行するために使用され、本発明は、従来技術とは違って、部分マッピングルールがまったく一致しないレコードを識別する可能性を減らす。
【００２７】
同様に、部分マッピングルールを改善するための一つの方法は、距離メトリックを含むことである。例えば、１または２つの文字位置のみが異なるエントリは、一致または一致に近いと見なされるかもしれない。さらに、重さは、各目的データベースに特有の可能性のあるエラーを保障するこれらの距離メトリックに設定されることができる。（たとえば、タイプされたデータのための「ＱＷＥＲＴＹ」キーボードに基づく重さ、テキスト化されたデータから光学的にスキャンされた文字の出現に基づく重さ、および音声認識のための音声学に基づく重さ。）しかし、エラーの可能性が、データベース内に存在するだけでなく入力データ内に存在する場合、この従来技術と同様に、これらの技術が不一致を作成する強い可能性がある。本発明は、入力データをあらかじめ認証し、これによってすべてのエラーを取り除いているので、距離メトリックは、不一致が起こることにあまり関心がないので、「目的データベースクエリルール」１１６の任意の部分マッピングルールにより簡単に統合される。参照データベースがクレンジングされ正確なので、距離メトリックは、「参照ベースのクエリルール」１１６の任意の部分マッピングルールによりも簡単に統合されることにも留意されたい。
【００２８】
本発明の入力データの規格化された標準形式の第３の有利点は、目的データベースクエリを実行するのに入力データの全体形式を使用する必要がないことである。特に、標準形式は規格化されたフォーマットなので、元の入力データの必要でない部分は、簡単に取り除かれ、これによって、目的データベース検索を単純化する。同様に入力データの標準形式は、標準形式がここで元の入力データの及ばない追加の情報を含むことができるという点において、大きな有利点も有する。この追加の情報は、続くクエリを高め、可能にするために使用することができる。たとえば、前からの正規の検索例に戻って、ステップ２０６において検索される参照データベース１０６は、アドレス情報だけでなく、緯度および経度情報を含むレコードという結果になると仮定する。結果として、入力データの標準形式は、元の入力データを越えた追加の情報を含む。「目的ベースのクエリルール」１１６は、この緯度および経度情報が、そのような情報を含み、ストレートアドレス情報を含まない目的データベースをクエリするのに使用されるべきであることを特定できる。同様に、「目的ベースのクエリルール」１１６は、アドレス情報が、そのような情報を含んで、緯度／経度情報を含まない目的データベースをクエリするのに使用されるべきであることを特定できる。入力データの規格化された標準形式のために、緯度ならびに経度情報、および／またはアドレス情報は、目的データベースクエリから随時取り除かれる。結果として、本発明によって検索できる目的データベースの数は、元の入力データが許されるだろう数より、広くなる。
【００２９】
参照は、本発明の多くの代替の実施形態でなされるだろう。特に、本発明の第２の実施形態によって、ステップ２０４において、（１よりむしろ）複数の参照データベースが入力データの種類に基づいて選択される。選択がなされると、複数の参照データベースは、入力データを認証するためにステップ２０６において多くの代替の方法のうちの一つで続いて使用できる。第１の代替として、複数の参照データベースを、正確に一致するレコードが見つかるか（この場合、方法はステップ２０８へ進む）、または一致するレコードが見つからないか（この場合、方法はステップ２１０へ進む）のいずれかまで、順番にクエリできる。代替として、「参照ベースのマッピングルール」１１４は、順番のクエリもまた、１または複数の一致に近い可能性のあるマッピングレコードが見つかることになるような、部分マッピングルールも含むことが好ましい。そのような一致に近いレコードが収集され、一致するレコードが見つからない場合、処理はステップ２１２へ進み。そこで、複数の参照データベース間からのこれらの一致に近いレコードのうちの一つが、正確に一致するとみなされることになる入力データに「十分近い」とみなすことができるかに関して、決定がなされる。一般に、複数の参照データベース間から一致に近いレコードがどのように選択されるかは、本発明に特有でない。一つのメカニズムは、参照データベースを重み付け／優先度付けし、一致に近いレコードを作成した最も優先度が高いデータベースから一致に近いレコードを選択することである。もう一つの可能なメカニズム／検討事項は、参照データベース間で定数に達したかである。（つまり、クエリされたデータベースの定足数がいくつかの「一致する可能性のあるレコード」を作成した場合、このレコードを正確に一致するとして使用する。）それにもかかわらず、ステップ２１２から、この方法は次に、上記の通りに続き、一致に近いレコードが正確に一致するとして選択された場合ステップ２０８へ進むか、またはソースを要求するステップ２１０が新しいクエリを作るために指示されるステップ２１０へ進むか、あるいは要求ソースが可能性のあるレコードの提供されたセットであるステップ２１４へ代替的に進む。
【００３０】
第２の代替として、複数の参照データベースに関して、選択された参照データベースは、平行して検索され、ここですべての一致レコード、そしてできれば、すべての一致する可能性のあるレコードを収集する。もう一度、１または複数の一致レコードが見つかる場合、これらのレコードの一つは選択され、方法はステップ２０８へ進む。レコードが見つからない場合、方法はステップ２１０へ進む。正確に一致するレコードが見つからないが、１または複数の一致に近いかもしれないレコードが見つかると、方法はステップ２１２へ進み、そこでこれらの一致に近いレコードが正確に一致するとみなせるかどうかの決定がなされる。もう一度、優先度付け方法／定足数方法などは、一致するレコードとして一致に近いレコードを選択するのに使用できる。方法は、次に、上記のように処理する。
【００３１】
第３の代替として、複数の選択された参照データベースは、複数段階の認証において使用でき、ここで、入力データが断片ごとに分析され認証される。たとえば、もう一度、入力データ属性アドレスと仮定すると、第一のパスにおいて、郵便番号参照データベースは、郵便番号を認証するためにクエリすることができる。認証されると、郵便番号は、ストリートアドレスに連結され、ストリートアドレスデータベースなどをクエリするのに、共に使用できる。
【００３２】
本発明の第３の実施形態によって、入力データの複数の標準形式は、各ターゲットデータベースを検索するのに使用される。（例えば、各目的データベースは複数回検索され、それぞれが入力データの異なる標準形式を使用する。）入力データの複数標準形式は、多くの方法で取得できる。たとえば、単一の参照データベースは、ステップ２０６でクエリでき、結果のレコードはその後、「変換ルール」１１８に基づいてステップ２０８において異なる方法で表現される。代替として、複数の参照データベースは、ステップ２０６でクエリでき、それぞれの結果レコードは次に、入力データの標準形式を生成するのに使用される。たとえば、入力データとしてアドレスが与えられると、アドレスの参照データベースは、入力データのアドレスベースの標準形式を与えるためにクエリでき、緯度／経度の参照データベースは、入力データの緯度／経度標準形式を与えるためにクエリできる。それにもかかわらず、入力データのそれぞれの標準形式は、次に、「目的ベースのクエリルール」１１６を使用してそれぞれの意図した目的データベース１０８を検索するのに、ステップ２１６で使用される。言い換えると、検索されることになる各目的データベースは、複数回クエリされ、それぞれが入力データの各標準形式の一つを使用する。（上記の通り、入力データの各標準形式の同じ形式は、各目的データベースに駆り編成できることに留意されたい。）目的データベース上の複数クエリの結果は、次に比較される。与えられたデータベースからの結果レコードが一致する場合、共通の結果が要求ソースへ返される。与えられたデータベースからの結果レコードが異なる場合、レコードは疑われる。ここで、複数クエリからのすべてのレコードがさらなる選択のために要求ソースへ返されることができ、これらのレコードのフィルタリングされたサブセットが、さらなる選択のための要求ソースへ返されることができるか、またはすべてのレコードは正確でないとして捨てることができる。したがって、この実施形態の有利点は、いくつかの場合において、冗長性およびエラーチェックを提供するのに有益であるかもしれないことである。特に、いくつかの場合において、ステップ２０４〜２１４において、入力データを標準形式へマッピングする場合、エラーが起きるかもしれない。入力データを複数の分離した標準形式へマッピングすることによって、そして次に、目的データベースクエリを実行するために各形式を使用することによって、同一のエラーの確率は減る。与えられた目的データベースからの結果レコードが同じ場合、マッピングより正しくなりがちである。
【００３３】
本発明の上記の実施形態は、例示としてのみを意図する。膨大な他の実施形態は、本発明の精神と範囲から離れることなく、当業者によって発案されるかもしれない。
【図面の簡単な説明】
【００３４】
【図１】本発明の実施形態による方法を達成するためのコンピューティングシステムのアーキテクチャを示す。
【図２】任意の複数の要求ソースからの入力データで、複数の目的データベースの１つまたは複数をクエリする、本発明の一実施形態の方法ステップを表す。
【図１】
2007535741.tif 000003
【図２】
2007535741.tif 000004