(57)【要約】【課題】ナビゲーション関連の特徴を提供するシステムにおいて用いられる地理データベースを更新する方法及びシステム。【解決手段】データがパーセルに構成された地理データベースのオリジナル・バージョンが形成される。更新されたデータを含む、地理データベースの更新バージョンが形成される。更新された地理データベースの各パーセル内のデータが、オリジナル・バージョンのパーセル内の対応するものにおいて表されたものと同じ特徴を表すように、更新バージョンがパーセルに構成される。オリジナル・バージョン内のパーセルに対する地理データベースの更新バージョン内に含まれるデータのパーセルの間の差を識別するインクリメンタル更新トランザクションが形成される。インクリメンタル更新トランザクションは、ナビゲーション関連の特徴を提供するシステムに送信され、そこで、該インクリメンタル更新トランザクションを用いて、オリジナル・バージョンからの対応するパーセルの場所において用いられる更新されたパーセルを形成する。【選択図】　　　　　図８
2004070323.tif 000002
【特許請求の範囲】
【請求項１】
地理データベースが第１バージョン・レベルにあり、前記地理データベースが対象領域内に位置する地理的特徴を表し、該地理データベースの各々がデータのパーセルに分離され、前記パーセルの少なくとも一部が空間的に構成されたパーセルであり、空間的に構成されたパーセルの各々が、前記対象領域を分割した複数の矩形の副領域の個々のものの中に含まれる地理的特徴を表すデータを含む、ナビゲーション関連の特徴を提供するシステムにおいて用いられる地理データベースを更新する方法であって、
更新されたデータを含む第１バージョン・レベルの地理データベースにおける各々のパーセルについて更新されたデータのパーセルを形成する段階を含み、
同じ矩形の副領域が、前記第１バージョン・レベルの前記地理データベースにおける対応するパーセル内のデータによって表されていたように前記更新されたパーセル内のデータによって表される状態に、該更新されたデータのパーセルが形成され、
前記更新されたデータのパーセルをナビゲーション関連の特徴を提供するシステムに提供することを特徴とする方法。
【請求項２】
ナビゲーション関連の特徴を提供する前記システムの各々において、前記第１バージョン・レベルの前記地理データベースからの前記対応するパーセルの代わりに、前記更新されたデータのパーセルを用いる段階をさらに含むことを特徴とする請求項１に記載の方法。
【請求項３】
ナビゲーション関連の特徴を提供する前記システムの各々において、前記更新されたデータのパーセルを共に配置された媒体上に格納する段階をさらに含むことを特徴とする請求項１に記載の方法。
【請求項４】
ナビゲーション関連の特徴を提供する前記システムの各々において、更新されたデータのパーセルと前記第１バージョン・レベルの前記地理データベースからのパーセルの組合わせを含む更新された地理データベースを用いる段階をさらに含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記更新されたデータのパーセルをナビゲーション関連の特徴を提供する前記システムに提供する前に、該更新されたデータのパーセルを圧縮する段階をさらに含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記圧縮段階が、前記更新されたパーセルと前記第１バージョン・レベルの前記地理データベースからの前記対応するパーセルとの間の差を識別する少なくとも１つのデータ・マスクを形成する段階を含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記圧縮段階が、第１のデータ・マスクと第２のデータ・マスクとを形成する段階を含み、前記第１のデータ・マスク及び前記第２のデータ・マスクが、前記更新されたパーセルと前記第１バージョン・レベルの前記地理データベースからの前記対応するパーセルとの間の差を識別し、
前記第１のデータ・マスクが、前記第１バージョン・レベルの前記地理データベースからの前記対応するパーセル内にあって前記更新されたパーセル内にはないビットを識別し、
前記第２のデータ・マスクが、前記更新されたパーセル内にあって前記第１バージョン・レベルの前記地理データベースからの前記対応するパーセル内にはないビットを識別することを特徴とする請求項５に記載の方法。
【請求項８】
前記第１バージョン・レベルの前記地理データベースからの前記対応するパーセルと前記更新されたパーセルとの間の差が、後に続くデータを上下に移動させない場所の変化と、前記パーセルの末尾における追加とに制限されるように、前記更新されたデータのパーセルが形成されたことを特徴とする請求項１に記載の方法。
【請求項９】
地理データベースが第１バージョン・レベルにあり、前記地理データベースが対象領域内に位置する地理的特徴を表し、該地理データベースの各々がデータのパーセルに分離された、ナビゲーション関連の特徴を提供するシステムにおいて用いられる地理データベースを更新する方法であって、
更新されたデータを含む第１バージョン・レベルの地理データベースにおいて、各々のパーセルについて更新されたデータのパーセルを形成する段階を含み、
前記更新されたパーセル内のデータによって表される前記地理的特徴が、前記第１バージョン・レベルの前記地理データベースの対応するパーセル内のデータによって表されたものに対応するように、前記更新されたデータのパーセルが形成され、
ナビゲーション関連の特徴を提供する前記システムにインクリメンタル更新トランザクションを提供する段階をさらに含み、
前記インクリメンタル更新トランザクションが、前記第１バージョンの前記地理データベースからの前記対応するパーセルと前記更新されたパーセルとの間の差を識別することを特徴とする方法。
【請求項１０】
前記インクリメンタル更新トランザクションが、前記第１バージョンの前記地理データベースからの前記対応するパーセル内にあって前記更新されたパーセル内にはないビットを識別する第１のビット・マスクと、該更新されたパーセル内にあって該第１バージョンの該地理データベースからの該対応するパーセル内にはないビットを識別する第２のビット・マスクとを含むことを特徴とする請求項９に記載の方法。
【請求項１１】
前記第１のビット・マスク及び前記第２のビット・マスクが、前記インクリメンタル更新トランザクションに圧縮されたことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記第１のビット・マスク及び前記第２のビット・マスクが、同様のビットの通し総数を示すことによって圧縮されたことを特徴とする請求項１１に記載の方法。
【請求項１３】
ナビゲーション関連の特徴を提供するコンピューティング・プラットフォームにおいて用いられる地理データベースを更新する方法であって、
少なくとも１つのデータ・マスクを形成する段階を含み、
前記少なくとも１つのデータ・マスクが、前記地理データベースの一部分の第１のバージョンと該地理データベースの該一部分の第２のバージョンとの間の差を識別し、
前記地理データベースに対するインクリメンタル更新として、前記少なくとも１つのデータ・マスクを提供する段階をさらに含むことを特徴とする方法。
【請求項１４】
ナビゲーション関連の特徴を提供するために、コンピューティング・プラットフォームにおいて用いられる地理データベースにインクリメンタル更新を提供する方法であって、
第１のデータ・マスクを形成し、
第２のデータ・マスクを形成する、
段階を含み、
前記第１のデータ・マスク及び前記第２のデータ・マスクが、前記地理データベースの一部分の第１のバージョンと該地理データベースの該一部分の第２のバージョンとの間の差を識別し、
前記第１のデータ・マスクが、前記第１バージョン内にあって前記第２バージョン内にはないビットを識別し、
前記第２のデータ・マスクが、前記第２バージョン内にあって前記第１バージョン内にはないビットを識別し、
前記地理データベースに対するインクリメンタル更新として、前記第１のデータ・マスク及び前記第２のデータ・マスクを提供する段階をさらに含むことを特徴とする方法。
【請求項１５】
前記一部分が、前記地理データベースを構成する複数のパーセルのうちの一つのパーセルに対応し、前記パーセルの各々が、該地理データベース全体に含まれる個々のサブセットのデータを含むことを特徴とする請求項１４に記載の方法。
【請求項１６】
前記複数のパーセルのパーセルの各々が、地域を分割した複数の別個の境界された地理的領域のうちの個々のものの中に含まれた地理的特徴を表すデータを含むことを特徴とする請求項１５に記載の方法。
【請求項１７】
前記提供する段階の前に、前記第１のデータ・マスク及び前記第２のデータ・マスクを圧縮する段階をさらに含むことを特徴とする請求項１４に記載の方法。
【請求項１８】
前記圧縮が、同様のビットの通し総数を示す段階を含むことを特徴とする請求項１７に記載の方法。
【請求項１９】
地理データベース・システムが第１バージョン・レベルの地理データベースを含み、前記地理データベースが対象領域内に位置する地理的特徴を表し、該地理データベースがデータのパーセルに分離された、ナビゲーション関連の特徴を提供するシステムにおいて用いられる地理データベースを更新する方法であって、
更新されたデータを含む前記第１バージョン・レベルの前記地理データベースにおいて、各々のパーセルについて更新されたデータのパーセルを得る段階を含み、
前記更新されたパーセル内のデータによって表された地理的特徴が、前記第１バージョン・レベルの前記地理データベースの対応するパーセル内のデータによって表されたものに対応するように、該更新されたデータのパーセルが形成され、
前記システムを用いて前記更新されたパーセルを媒体上に保存し、
前記第１バージョン・レベルの前記地理データベースにおいて、前記対応するパーセルの代わりに前記更新されたデータのパーセルを用いる、
段階をさらに含むことを特徴とする方法。
【請求項２０】
前記更新されたパーセルが、前記第１バージョン・レベルの前記地理データベースからの前記対応するパーセルと前記更新されたパーセルとの間の差を識別するインクリメンタル更新トランザクションから得られたことを特徴とする請求項２０に記載の方法。
【請求項２１】
前記インクリメンタル更新トランザクションが、第１のデータ・マスク及び第２のデータ・マスクからなり、前記第１のデータ・マスク及び前記第２のデータ・マスクが、前記更新されたパーセルと前記第１バージョン・レベルの前記地理データベースからの前記対応するパーセルとの間の差を識別することを特徴とする請求項２０に記載の方法。
【請求項２２】
前記インクリメンタル更新トランザクションを復元して、前記第１のデータ・マスク及び前記第２のデータ・マスクを形成する段階をさらに含むことを特徴とする請求項２１に記載の方法。
【請求項２３】
前記第１のデータ・マスクが、前記第１バージョン・レベルの前記地理データベースからの前記対応するパーセル内にあって前記更新されたパーセル内にはないビットを識別し、前記第２のデータ・マスクが、該更新されたパーセル内にあって該第１バージョン・レベルの該地理データベースからの該対応するパーセル内にはないビットを識別することを特徴とする請求項２１に記載の方法。
【請求項２４】
前記第１のデータ・マスクを論理積演算し、その結果を用いて前記第２のビット・マスクを論理和演算し、前記第１バージョン・レベルの前記地理データベースからの前記対応するパーセルを用いて前記更新されたパーセルを形成する段階をさらに含むことを特徴とする請求項２３に記載の方法。
【請求項２５】
前記インクリメンタル更新トランザクションから前記更新されたパーセルを形成し、前記第１バージョン・レベルの前記地理データベースから前記対応するパーセルを形成する段階をさらに含むことを特徴とする請求項２０に記載の方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ナビゲーション関連の特徴又はサービスを提供する、コンピューティング・プラットフォームによって用いられる地理データベースを更新するシステム及び方法に関する。
【０００２】
【従来の技術】
ナビゲーション・システムは、種々の異なるコンピューティング・プラットフォーム上に備えられる。例えば、ナビゲーション・システムを、独立型のシステム、又はネットワーク接続されたシステムとすることができる。独立型のナビゲーション・システムでは、ソフトウェア・アプリケーション、地理データ、及びハードウェアが単一の場所に組み合わされる。独立型のシステムは、乗り物内に実装することができ、又は人が携行することもできる。ネットワーク化されたナビゲーション・システムにおいては、ユーザ及びソフトウェア又は地理データベースの一部を有するハードウェアが遠隔に配置され、通信システムにわたってアクセスされるように、該ソフトウェア又は地理データベースの一部が配置される。ナビゲーション・システムを、ハードウェア及びソフトウェアが特にナビゲーション目的のために設計された専用のプラットフォーム上で実行することができる。代わりに、適切なナビゲーション関連のソフトウェア・アプリケーション及びデータを用いて、ナビゲーション・システムを汎用のコンピューティング・プラットフォーム（パーソナル・コンピュータ、個人用携帯情報端末、又はネットワーク化されたコンピュータのような）上で実行することもできる。
【０００３】
ナビゲーション・システム（ナビゲーション用アプリケーションを実行する汎用のコンピューティング・プラットフォームを含む）は、種々の有用な特徴及びサービスを提供する。例えば、乗り物内に用いられるナビゲーション・システムは、所望の目的地まで運転するための詳細な指示を与えることができ、これにより移動時間と費用が減少されることになる。ナビゲーション・システム及びナビゲーション用アプリケーションはまた、所望の種類の企業を検索することもでき、そのような企業の場所までの経路案内を与えること。ナビゲーション・システム及びナビゲーション用アプリケーションはまた、リアルタイムの交通情報を組み入れることもできる。トラック会社、宅配便などのような乗り物部隊のオペレータが、ナビゲーション・システム及びアプリケーションを用いることもできる。
【０００４】
ナビゲーション・システム及びアプリケーションと関連した一つの考慮事項は、該ナビゲーション・システムによって用いられる地理データが古くなってしまうことである。例えば、新しい道路ができたり、企業の場所が変わったり、道路工事で道路が閉鎖されたり、迂回路が設けられたり、博物館やレストランの営業時間が変わることなどがある。乗り物内にナビゲーション・システムを有する、該乗り物の所有者のようなエンドユーザは、ナビゲーション・システムの地理データがその時々に更新されることを望むと思われる。
【０００５】
ナビゲーション・システムのユーザに更新された地理データを提供する一つの方法は、該ナビゲーション・システムが使用する地理データベース全体を、新しく更新されたデータを含む完全に新しいバージョンと交換することである。この手法を用いる考慮事項は、新しい地理データベース内のデータの比較的大きな部分が古いバージョン内のデータと同じであり、よってそれらを交換する必要がないことである。
ナビゲーション・システムのユーザに更新された地理データを提供する別の方法は、該ユーザに更新されたデータだけを提供し、該更新されたデータを古い地理データベースに適用する機構を提供することである。地理データベースを段階的に更新することについての実施形態が、米国特許第５，８９３，１１３号に開示されており、その開示全体を引用によりここに組み入れる。
【０００６】
【発明が解決しようとする課題】
米国特許第５，８９３，１１３号に開示された実施形態は満足できるものであるが、引き続き改善の余地がある。したがって、ナビゲーション・システムにおいて用いられる地理データベースを更新する方法に対する必要性がある。
【０００７】
【課題を解決するための手段】
これらの及びその他の目的に取組むために、本発明は、ナビゲーション関連の特徴を提供するシステムにおいて用いられる地理データベースを更新する方法及びシステムを含む。データをパーセルに構成した地理データベースのオリジナル・バージョンが形成される。更新されたデータを含む地理データベースの更新バージョンが形成される。更新された地理データベースの各々のパーセル内のデータが、オリジナル・バージョンのパーセル内の対応するデータにおいて表されたものと同じ特徴を表すように、更新バージョンをパーセルに構成する。オリジナル・バージョンに対する地理データベースの更新バージョン内に含まれるデータのパーセル間の差を識別するインクリメンタル更新トランザクションが形成される。インクリメンタル更新トランザクションは、ナビゲーション関連の特徴を提供するシステムに送信され、そこで、該インクリメンタル更新トランザクションを用いて、オリジナル・バージョンからの対応するパーセルの場所において用いられる更新されたパーセルを形成する。
【０００８】
【発明の実施の形態】
Ｉ．地理データベースの原型からコンパイルされた地理データベースの形成
図１は、地理データベースの原型バージョン１００を示す。この地理データベースの原型１００バージョンは、対象領域１０４内の地理的特徴を表すデータ１０２を含む。対象領域１０４は、合衆国のような国全体に対応することができる。或いは、対象領域１０４は、合衆国、カナダ、及びメキシコのような数カ国、又はフランス、ドイツ、及びイタリア等のような数カ国に対応することができる。別の選択肢によると、地理データベースの原型バージョン１００の対象領域１０４は、合衆国の西海岸又は中西部といった国内の単一の地域だけを表すことができる。地理データベースの原型バージョン１００は、対象領域１０４全体における地理的特徴を表すデータを含むが、該対象地域１０４の部分によっては、地理データベース内のデータによって表されない地理的特徴を含むか、又はそれについての地理的特徴の表示がまばらなことがある。
【０００９】
地理データベースの原型バージョン１００は、対象領域１０４内に位置する道路網１２０についてのデータを含む。道路網１２０についてのデータは、道路の位置の地理的座標、道路の通りの名称、道路沿いのアドレス区域、道路の交差点における転回制限などのような、様々な種類の情報を含む。地理データベースの原型バージョン１００はまた、対象領域１０４内の関心ある地点についてのデータも含む。関心ある地点は、ホテル、レストラン、博物館、スタジアム、事務所、自動車販売代理店、自動車修理店などを含むことができる。地理データベースの原型バージョン１００は、これらの関心ある地点の位置についてのデータを含むことができる。地理データベースの原型バージョン１００はまた、市、町、又はその他の地域共同体についてのデータを含むこともできる。地理データベースの原型バージョン１００はまた、その他の種類の情報を含むこともできる。
【００１０】
対象領域１０４内の地理的特徴についてのデータは、イリノイ州シカゴのナビゲーション・テクノロジー社のような地理データベースの開発者によって収集される。しかしながら、ここに開示された発明概念が、特定のいかなるデータ・ソースにも限定されるものではないということが理解される。
データを収集するために、地理データベースの開発者により用いられる種々の方法がある。これらの方法は、地方自治体のような他のソースからデータを得ることを含む。さらに、地理データベースの開発者は、特徴及びそれらについての記録情報を確認するために地理的地域全体にわたって道路沿いに乗り物で移動する現地調査員を雇う。地理データベースの開発者により収集されたデータは、地理データベースの原型バージョン１００内に格納される。
【００１１】
地理データベースの開発者は、地理的対象領域１０４内の特徴を表すデータを継続的に収集し続ける。地理データベースの開発者がデータを収集し続ける一つの理由は、対象領域１０４内の特徴が、時が経つにつれて変わることである。したがって、地理データベースの開発者は、その特徴についてこれまで収集されたデータを更新又は確認するために、同じ特徴についてのデータを収集する。地理データベースの開発者がデータを収集し続ける別の理由は、地理データベースの原型バージョン１００の対象を拡張するためでである。例えば、ある時点において、地理データベースの原型バージョン１００は、対象領域１０４全体の一部分だけを表すデータを含むことができる。その時点の後、地理データベースの開発者は、地理データベースの原型バージョン１００の対象を拡張するために、これまで表されなかった領域内の特徴についてのデータを収集する。
【００１２】
地理データベースの原型バージョン１００は、対処領域１０４に関する最新データを有するコピーとして維持される。したがって、地理データベースの原型バージョン１００は、定期的且つ継続的に更新され、拡張され、及び／又はその他の方法で修正される。これらの操作を容易にするために、地理データベースの原型バージョン１００は、更新、維持、及び開発を容易にする形式で格納される。例えば、原型バージョン１００内のデータを非圧縮とすることができる。好適な形式の例は、ＶＳＡＭ形式及びＧＤＦ形式であるが、専売及び非専売のいずれも問わず他の種類の形式が適していることもある。一般に、データベースの原型１００の形式は、ナビゲーション・システムにおいて用いるのに適切なものではない。
地理データベースの原型バージョン１００のコピーは、物理的に第１の位置１１４に配置される。一つの実施形態において、地理データベースの原型バージョン１００は、一つ又はそれ以上のハードディスク、テープ又はその他の媒体上に格納され、適切なコンピュータ１１６によりアクセスされる。メインフレーム・コンピュータ、ネットワーク化された複数のマイクロコンピュータのような、何らかの適切なコンピュータを用いることもできる。
【００１３】
図２を参照すると、地理データベースの原型バージョン１００が、コンパイルされたデータベース製品１１０を作るために用いられる。コンパイルされたデータベース製品１１０は、コンパイラ１１１を用いて作られる。コンパイラ１１１は、適切なコンピュータ・プラットフォーム上で動作するソフトウェア・プログラムである。コンパイラ１１１は、以下にさらに詳細に説明される。
コンパイルされたデータベース製品１１０は、地理データベースの原型バージョン１００内の全データの一部分だけを含むことができる。例えば、コンパイルされたデータベース製品１１０は、地理データベースの原型バージョン１００の対象領域１０４内にある一つ又はそれ以上の特定の副領域だけに関するデータを含むことができる。さらに、コンパイルされたデータベース製品１１０は、地理データベースの原型バージョン１００において表された地理的特徴を説明する全てのデータ属性より少ないデータ属性を含むことができる。
【００１４】
コンパイルされたデータベース製品１１０は、様々な種類のコンピューティング・プラットフォーム１１２で用いられる。例えば、コンパイルされたデータベース製品１１０は、ナビゲーション・システム（車載のナビゲーション・システム及び手持ち式携帯型ナビゲーション・システムのような）、パーソナル・コンピュータ（デスクトップ及びノート型コンピュータを含む）、及びＰａｌｍＰｉｌｏｔ（登録商標）型装置、ポケットベル、電話、個人用携帯情報端末等のようなその他の種類の装置において用いられる。コンパイルされたデータベース製品１１０はまた、インターネットに接続されたシステムを含むネットワーク化されたコンピューティング・プラットフォーム及び環境で用いられる。
コンパイルされたデータベース製品１１０は、それらが用いられるハードウェアのプラットフォームに適した媒体上に格納される。例えば、コンパイルされたデータベース製品１１０を、現在のところ入手可能な又は将来入手可能になるＣＤ−ＲＯＭディスク、ハードディスク、ＤＶＤディスク、フラッシュメモリ、又はその他の種類の媒体上に格納することができる。
コンピューティング・プラットフォーム１１２上で、コンパイルされたデータベース製品１１０は、種々のソフトウェア・アプリケーションにより用いられる。例えば、コンパイルされたデータベース製品１１０は、経路算出、経路案内、車両の測位、地図表示、電子版職業別電話帳、及びその他の種類の機能のような、ナビゲーション関連の機能を提供するソフトウェア・アプリケーションによって用いられ得る。
【００１５】
ＩＩ．コンパイルされた地理データベースの構成
Ａ．概要
コンパイルされたデータベース１１０において、地理データは、地理データベースの原型バージョン１００とは異なるように構成される。コンパイルされたデータベースは、それらが実装されるコンピューティング・プラットフォーム内のデータの使用を容易にする形式で構成され、配置され、体系化され、格納される。コンパイルされたデータベース１１０はまた、それらが配置される媒体上に圧縮形式で格納することもできる。コンピューティング・プラットフォームに用いるために地理データを構成することができる幾つかの方法が、米国特許第５，９５１，６２０号、第５，９５３，７２２号、第５，９６８，１０９号、第５，９７４，４１９号、第６，０３８，５５９号、第６，０８１，８０３号、第６，０３８，５５９号、第６，１１２，２００号、第６，１１８，４０４号、第６，１２２，５９３号、第６，１８４，８２３号、第６，２４９，７４２号、第６，３０８，１７７号、第６，３２４，４７０号、第６，３３６，１１１号、及び第６，３９３，１４９号に説明されており、その開示全体を引用によりここに組み入れる。
【００１６】
Ｂ．道路の表示
図３及び図４は、図２のコンパイルされたデータベース製品１１０のような地理データベースにおいて、どのように道路が表されるかを示す。図３は、図１に示される対象領域１０４の部分１１６の拡大図を示す。図３の部分１１６は、対象領域１０４内の道路網１２０の一部を示す。道路網１２０は、とりわけ、対象領域１０４内に位置する道路及び交差点を含む。図３に示されるように、対象領域１０４内の道路の各々は、一つ又はそれ以上のリンク又は区間、１２２（１）、１２２（２）・・・１２２（ｎ）からなる。一つの実施形態において、リンクは、地理データベース内のデータとして表された道路の一部分である。図３においては、各々のリンク１２２は、「端点」とも呼ばれる２つのノードと関連付けられた状態で示される。一つのノードは、リンクの一端の地点を表し、他方のノードは、該リンクのもう一方の地点を表す。リンクのいずれの端部におけるノードも、道路が、例えば、交差点又は行き止まりの道路のような別の道路と交わる位置に対応する。交差点は、必ずしもある道路から別の道路への転回が許される場所ではないが、ある道路及び別の道路が、同じ経度、経度、及び高さを有する位置を表す。場合によっては、例えば、道路の属性の変化、踏切を示すために、又は他の理由のために、隣接する交差点の間の道路の一部に沿ってノードを配置することができる。（用語「ノード」及び「リンク」は、これらの地形的な地理的特徴を説明するための唯一の用語を表し、これらの特徴についてのその他の用語は、これらの概念の範囲内に含まれるように意図される。）
【００１７】
一つの種類の地理データベースにおいて、対象領域１０４内の表されたリンクの各々について、少なくとも１つのデータベース入力項目（「エンティティ」又は「レコード」とも呼ばれる）がある。図４は、図３に示されるリンクの一つを表すリンク・データレコード１５０を示す。このリンク・データレコード１５０は、リンクと関連付けられたノード、及び／又は２つのノードの地理的位置（例えば、経度及び緯度座標、及び／又は高度即ち高さ）の識別を可能にする情報（「属性」、「フィールド」などのような）と関連付けられる。さらに、リンク・レコード１５０は、該リンク・レコードによって表された道路の一部分について許された走行速度、該リンク・レコードによって表された道路の一部分について許された移動の方向、もしあれば、該リンク・レコードによって表された道路の一部分の両端部の交差点に対応するノードの各々にある転回制限、該リンク・レコードによって表された車道の一部分のアドレス区域、道路の名称などを特定する情報と関連付けられ得る。リンクと関連付けられた種々の属性を単一のデータレコード内に含ませることができ、又は互いに参照し合う一つより多い種類のレコードの中にこれらを含ませることができる。
【００１８】
直線以外の道路区間を表すリンク・データレコードの各々は、形状点データを含むことができる。形状点は、端点間のリンクに沿った位置である。直線以外の道路の形状を表すために、地理データベースの開発者は、該直線以外の道路に沿って一つ又はそれ以上の形状点を選択する。リンク・データレコード内に含まれる形状点は、表されたリンクに沿いの選択された形状点の位置（例えば、経度、緯度、及び任意に高度すなわち高さ）を示す。
コンパイルされた地理データベースにおいて、各々のノードについてのノード・データレコード１６０もある。ノード・データレコード１６０は、ノードに接続するリンク、及び／又はその地理的位置（例えば、経度、緯度、及び任意に高度即ち高さ）の識別を可能する情報（「属性」、「フィールド」等のような）と関連付けられる。
【００１９】
Ｃ．地理データベースの個々の機能型
上述のように、コンパイルされた地理データベースは、種々のナビゲーション関連の機能の実行を助けるように構成される。ナビゲーション関連の機能の実行を助ける一つの方法は、特定のナビゲーション関連機能によって用いるための地理データを個々に収集するか又は地理データのサブセットを提供することである。このような個々の収集の各々は、特定の関連機能を実行するために必要とされるデータ及び属性を含むが、該機能を実行するために必要とされないデータ及び属性を排除する。図５は、機能に基づいて地理データの別個のサブセットを提供する一つの方法を示す。図５において、コンパイルされた地理データベース１１０は、経路指定用データ、（地図表示のための）地図作成用データ、（経路案内のための）走行用データ、関心ある地点のデータなどの個々の収集からなる。コンパイルされた地理データベース１１０を、これらの異なる種類のデータより少ないデータ、又はこれらの種類のデータより多いデータを有するように定めることができ、他の種類のデータを定め、含ませることもできる。さらに、これらの異なる種類のデータの（又は、以下に説明されるようにそのレベルの）一つ又はそれ以上を組み合わせて、複合型のものにすることもできる。これらのデータの種類のサブセットを一緒に機能させることができるように、相互参照、検索ツリー、又はその他のデータ検索技術を提供する一つ又はそれ以上のインデックスを含ませる。
【００２０】
Ｄ．地理データのレベル
地理データの使用を向上させるように地理データを構成することができる別の方法は、データを様々なレベルで提供することである。地図表示機能及び経路算出機能のようなナビゲーション関連の機能の一部は、異なるレベルの詳細のデータを使用することができる。異なるレベルのデータを実行するために、表された道路区分の各々は、道路の機能によるクラスに対応するランクと関連付けられる。ランク「４」を有する道路区分は、高速道路及びフリーウェイのような、大容量の、進入規制されている道路を含むことができる。ランク「３」を有する道路区分は、速度変化がほとんどない大容量の道路とすることができるが、進入規制されている道路である必要はない。低いランクの道路は、これに対応する低い容量を取り扱い、一般に速度変化が多いか、又は低速である。ランク「０」を有する道路区分は、最も少ない容量を取り扱うことができる。例えば、これらは、横丁、路地などを含むことができる。
【００２１】
表された道路のランクは、道路を表すデータ・エンティティが含まれる最も高いデータ・レベルを特定するために用いられる。例えば、図５を参照すると、経路指定型データレコードは、個々のレベルのデータ、すなわち「レベル０」、「レベル１」などを含むことができ、各々が異なるレベルの詳細を有する経路指定データの個々の収集からなり、経路計算機能によって該経路指定型データレコードの各々を用いることができる。経路指定型のデータにおいて、レベル０は、「０」又はそれより高いランクを有するリンク・データレコードを含み、よって、レベル０は、地理的領域内の全ての道路のうちの表された部分全てに対応するリンク・データレコードを含む。レベル１の経路指定データは、該経路指定データの個々のサブセット（又は収集）からなり、ランク「１」又はそれより高いランクを有するリンク・データ・エンティティだけを含む。レベル２の経路指定データは、該経路指定データの個々のサブセットからなり、レベル２又はそれより高いランクを有するリンク・データ・エンティティだけを含むなど。最も高いレベルは、ランクｎを有するレコードだけを含む。各々の高いレベルは、より少ないレコードを含むが、これらのレコードは、全体的に移動がより速い道路を表す。例えば、出発地又は目的地から遠ざかる経路の一部分について、可能であればいつでも、より高いレベルの経路指定データを用いることにより、経路計算を容易にすることができる。
【００２２】
同様に、地図作成サブセット型のようなその他の型のデータは、データ個々の収集を含むことができ、各々が異なるレベルの詳細を有し、地図表示機能によってこれを用いることができる。これらの異なるレベルの地図作成データを用いると、地図表示機能は、迅速なパニング及び拡大縮小を提供することができる。
データの一部を様々なレベルに構成することにより、幾らかのデータ重複がもたらされるが、一般に、増加した効率があらゆる欠点を埋め合わせる。上述の個々の機能型のデータを用いるのと同様に、これらの異なるレベルが協働して機能することを可能にする必要性が生じる。この目的のために、相互参照、検索ツリー、又はその他のデータ検索技術を含むインデックスを設けることができる。
【００２３】
Ｅ．パーセル化
コンパイルされた地理データベース内のデータを使用しやすくする別の方法は、該データの一部又は全てをパーセルに構成することである。パーセル化は、地理データベース内のデータを構成してグループ分けし、各々のグループ分けにおけるデータを地理データベース内に物理的及び／又は論理的に共に配置させるようにすることを指し、これにより、データにグループとしてまとめて同時にアクセスすることが容易になる。一つの実施形態において、パーセルは、常に一緒にアクセスされるデータを含む。パーセルは、幾つかの他の要因と関連付けることができるが、単一のディスクのアクセスにおいてアクセスし得るデータの量に関連付けることもできる。パーセルのサイズを、地理データベースが格納された媒体の形式に関連付けることもできる。一つの実施形態において、パーセルを約１００キロバイトのデータとなるように確立することができる。１Ｋ、２Ｋ、４Ｋ、８Ｋ、１６Ｋ、３２Ｋ、２５６Ｋなどを含む他のサイズのデータを用いることもできる。地理データベース内で、全てのパーセルが、均一のパーセルサイズに一致するようにすることができ、又は代わりに、一つ以上の均一のパーセルサイズとすることもできる。
【００２４】
Ｆ．空間構成
コンパイルされた地理データベースにおけるデータの使用しやすくする別の方法は、データの一部を空間的に構成することである。地理的に近い特徴を表すデータが、コンパイルされたデータベース１１０内、及び／又は該データベースを含む媒体上に論理的及び／又は物理的に配置されるように、空間的に構成されたデータが配置される。データを空間的に構成する一つの方法は、データを空間的にパーセル化することである。地理データが空間的にパーセル化された場合には、対象領域において物理的に近くにある特徴が、同じパーセル内のデータによって表される。
空間パーセルを形成する前に、データは、まず、経路指定、地図作成、複合、関心ある地点等のような異なる機能の型に分離される。ナビゲーション機能によってデータを使用しやすくするために、これらの種類のデータの一部を空間的にパーセル化することができ、これらの種類の他のデータは、空間的にパーセル化することができない。さらに、型が別々のレベルを含む場合には、データがパーセル化される前にレベルを形成する。
【００２５】
地理データを空間的にパーセル化するために用い得る多くの異なる手順がある。例えば、簡単な空間パーセル化方法は、地理データを複数のパーセル又はグループ分けに分離させることであり、そこで、各々のパーセル内のデータは、複数の普通サイズの矩形の個々のものの中に含まれる特徴を表し、地理的領域の全体にわたって規則的な矩形のグリッドを共に形成する。空間パーセル化の別の方法は、データをパーセルに分離することであり、そこで、各々のパーセル内のデータは矩形の領域内に含まれる特徴を表し、最大しきい値より下のパーセル・サイズが得られるまで、該矩形の各々が該領域の一部を含む矩形の二分によって形成される。さらに、空間パーセル化の手順が、米国特許第５，９７４，４１９号及び第５，９６８，１０９号に開示されており、その開示全体を引用によりここに組み入れる。
【００２６】
図６は、コンパイルされた地理データベース１１０内に含まれるデータの空間パーセル化を示す。図６は、領域２００の地図を示す。領域２００は、図１の対象領域の一部分である。図６において、グリッド２０４が地図の上にある。グリッド２０４は、表された対象領域１０４の一部分２００を複数の副領域２１２に分けるグリッドライン２０８で形成される。（したがって、地理的副領域２１２は、全体の対象領域１０４を構成するものである。）この実施形態において、領域２１２は矩形であるが、別の実施形態において、該領域２１２が他の形状を有することもできる。グリッド２０４のグリッドライン２０８は、領域２１２の境界線を表す。図６に示されるように、これらの副領域２１２は、異なる面積を有することができる。或いは、領域２１２が全て同じ面積を有することもできる。副領域２１２の面積、及び全ての副領域２１２が同じ面積を有するかどうかは、データを空間的にパーセル化するために用いられる手順によって決まる。同様に、副領域２１２の境界線の位置も、データを空間的にパーセル化するために用いられる手順によって決まる。
【００２７】
この実施形態において、データの機能型の各々、及び、レベル化された機能型のレベルの各々は、個々に空間的にパーセル化される。型又はレイヤが空間的にパーセル化されると、個々の副領域２１２の各々の中に含まれる地理的特徴を表す個々のデータレコード２２４（その型又はレイヤの）は、データの個々のパーセル２２０（又はグループ分け）内に集められる。したがって、データのパーセル２２０の各々は、対応する地理的副領域２１２の中に含まれる地理的特徴を表す全てのデータレコード２２４（その型又はレベルの）を含む。
上述のように、あるレベル又は型の全てのパーセル２２０は、１Ｋ、２Ｋ、４Ｋ、８Ｋ、１６Ｋ、３２Ｋ、１００Ｋなどのような、均一のパーセル・サイズを有することができる。パーセルのサイズは、データが格納されることになる媒体、及び／又はエンドユーザのコンピューティング・プラットフォームのメモリ・リソースのような幾つかの要因に基づいて決定される。各々のパーセルを均一のパーセル・サイズと一致させるために、境界された領域内の特徴を表すデータの量が所望のパーセル・サイズより小さくなるように、矩形の領域の境界線が選択され、パーセルが所望の均一のパーセルサイズと一致するように、データ・パディングの量（「０」）が付加される。地理データベースは、一つ以上の均一なパーセル・サイズのパーセルを含むことができる。
【００２８】
図６に示されるように、パーセル２２０が格納されてデータベース１１０を形成し、各々のパーセル２２０内のデータが、論理的及び／又は物理的にまとめられる。パーセル２２０は、エンドユーザのシステム１１２が一度にアクセスできる物理的なデータの量を表すことができる。データのパーセルにアクセスされると、同時にそのデータレコード２２４の全てが媒体からシステムのメモリに読み込まれる。図６の地図を参照すると、これは、各々の矩形の副領域２１２内に含まれる空間的に構成された型のデータのリンク・レコードのような全てのデータレコードが、グループとしてまとめてアクセスされることを意味する。特定の種類のナビゲーション機能については、地理的領域において物理的に近い特徴を表す全てのデータレコードを一緒にメモリ内に備えることが望ましいことが理解され得る。
【００２９】
Ｇ．新しい型のデータ・エンティティの形成
コンパイルされた地理データ内のデータを使用しやすくする別の方法は、新しい型のデータ・エンティティを形成することである。これらの新しい型のデータ・エンティティは、地理データベースの原型バージョン内には存在しないものである。これらの新しい型のデータ・エンティティは、地理データベースの原型バージョンからのデータを用いて、コンパイラ（図２の１１１）によって形成される。例として、単一のデータ・エンティティを有する幾つかの別個の連結されたリンクを表すことによって、幾つかのナビゲーション機能の実行を改善することができる。例えば、地図作成データ型（図５の）において、該地図作成データのパーセルに対応する地理的副領域内に位置する、道路のような連続的な線形の特徴を、別個のリンク・データ・エンティティによって表された複数の別個のリンクの代わりに、単一のデータ・エンティティを用いて表すことができる。このように幾つかの連結されたリンクを表すことで、地図表示プロセスを助けることができる。したがって、コンパイル・プロセスの間、コンパイラは、このように表すことができる連結されたリンクを識別し（「重合ライン」と呼ばれる）、それらを表すために新しい型のデータ・エンティティ（すなわち、重合ライン・データ・エンティティ）を形成する。重合ライン・データ・エンティティの各々は、連続的な線形の地理的特徴の２つの端点と、該２つの端点間の該連続的な線形の地理的特徴に沿って配置された一つ又はそれ以上の形状点を識別するデータと、道路の種類又は重合ライン・エンティティが表すその他の特徴を識別するデータとを含む。これらの重合ライン・データ・エンティティは、地図作成パーセル内に格納される。重合ラインの更なる説明は、米国特許第５，９６８，１０９号及び第６，１１８，４０４号に見出すことができ、その開示全体を引用によりここに組み入れる。
【００３０】
重合ライン・データ・エンティティに加えて、地理データベースの原型バージョンにおいて個々に表された地理的特徴の組合せを表すように、コンパイルされた地理データベースの形成中に形成することができるその他の種類のデータがある。例えば、幾つかの別個の連結されたリンクを表すように、経路指定型データにおいて塊状の区分データ・エンティティを形成し格納することができ、幾つかの別個の連結されたリンクを表すように、複雑な交差点を表すように、スーパーノード・データ・エンティティを形成し格納することができる。これらの型のデータ・エンティティは、米国特許第５，９６８，１０９号に説明される。
【００３１】
Ｈ．パーセル内のデータの構成
上述のように、各々のパーセルは、データレコードの収集を含む。一つの実施形態において、パーセルは、内部に配置されたデータレコードにアクセスしやすいように内部構成される。
図７は、パーセルの内部構成についての一つの実施形態の図を示す。図７は、図６のパーセル２２０の１つを示す。図７において、パーセル２２０は、パーセル・ヘッダ２３０を含む。パーセル・ヘッダ２３０は、パーセルについての幾つかの基本情報を含む。パーセル・ヘッダ２３０は、テーブル・オフセット・アレイ２３４へのオフセットを含む。テーブル・オフセット・アレイ２３４は、データレコード２２４が配置されたパーセル内の各テーブル２３６の初めへのオフセットを含む。例えば、パーセル内に２つのテーブル、すなわちリンク・テーブル及びノード・テーブルがあった場合には、テーブル・オフセット・アレイは２つの入力項目を含む。一つの入力項目は、ノード・テーブルの初めを指し、もう一方の入力項目は、リンク・テーブルの初めを指す。リンクＮを見出すためには、テーブル・オフセット・アレイを用いてリンク・テーブルの初めに到達し、次に、一つのリンク・テーブルの入力項目の長さを付加的な回数（Ｎ−１）だけ進む。
【００３２】
ＩＩＩ．インクリメンタル更新トランザクションを用いてコンパイルされた地理データベースを更新する
Ａ．概要
図８は、ナビゲーション関連の特徴又はサービスを提供するエンドユーザのシステム１１２（ナビゲーション用アプリケーションを実行する汎用のコンピューティング・プラットフォームを含む）において用いられる地理データベース１１０を更新するためのシステム及び方法の概要を示す図である。図８において、第１のプロセス３００が、ナビゲーション関連の特徴を提供するシステム１１２において用いるためのコンパイルされた地理データベースのオリジナル・バージョン１１０を形成し、分散させる。第１のプロセスは、時間ｔ＝０において実行される。第１のプロセスが実行されるとき、地理データベースの原型１００は、第１（すなわちオリジナル・バージョン）レベルにおけるデータを含む。後の時間（すなわちｔ＝０＋ｎ）において、第２のプロセス３１０が、インクリメンタル更新トランザクション３１８を形成し、分散させ、コンパイルされた地理データベースのオリジナル・バージョン１１０に適用することによって、該コンパイルされた地理データベース１１０を更新し、更新されコンパイルされた地理データベース３２０を形成する。
【００３３】
Ｂ．ベースライン・モードにおけるコンパイラの作動
第１のプロセス３００が、コンパイル・プロセス（コンパイラ１１１により実行される）を含む。地理データベースの開発者、すなわち地理データを収集し、地理データベースを更新するパーティによって、コパイル・プロセスを実行することができる。或いは、別のエンティティによって第１のプロセス３００を実行することができる。
上述のように、コンパイラ１１１は、地理データベースの原型１００から地理データを得る。コンパイラ１１１は、地理データベースの原型１００から得られたデータをある形式（又は複数の形式）に構成し、地理データベースのコンパイルされた（又は機能する）バージョン１１０を生成する。コンパイルされた地理データベース１１０の形式は、ナビゲーション関連目的のためのエンドユーザのシステム１１２において地理データを使用しやすくするものである。
【００３４】
図９は、ベースライン・モードで作動するコンパイラ１１１によって実行されるプロセスを示す。ベースライン・モードでは、コンパイラ１１１は、ナビゲーション・システム１１２において用いることができるパーセル化された地理データベースのオリジナル・バージョンを生成する。
コンパイラ１１１がベースライン・モードで作動されるとき、該コンパイラは、地理データベースの原型１００からデータを得る。上述のように、地理データベースの原型は、ＧＤＦ又はＶＳＡＭのような一般化されたデータ形式で維持される。段階３６０において、各々のデータの型及びレイヤについての個々の中間形式のファイル３６４が形成される。地理データベースの原型バージョン１００から形成されたこれらの中間形式のファイル３６４は、経路指定、地図作成、関心ある地点、走行などのような、異なる型のデータの各々、及びこれらの型の一部のレイヤの各々を引き出すために形成される。
これらの個々の中間形式のファイル３６４の各々が形成された後、該これらの中間形式のファイル３６４の各々は、パーセル化されて各々のレイヤについての各データの型のデータレコードのパーセル２２０を形成する（段階３７０において）。上述のように、空間パーセル化についての異なる種類のプロセスを含む異なる種類のパーセル化プロセスを用いることができる。個々の型及びレイヤの各々についてパーセル２２０が形成されるので、該パーセル２２０の各レイヤ及び型は、単一のファイル３７４内に連結される（段階３８０において）。
個々の型及びレイヤの各々について個々のパーセル２２０が形成されるので、パーセルの識別が割り当てられ、全てのデータレコード及びインデックス全体にわたるパーセルの参照が更新されて、新しく割り当てられたパーセルの識別を反映し、最終形式のファイル１１２が形成される（段階３８４において）。
地理データベースを形成するためのこれらの一般的な段階は、地理データベースを形成することができる一つの方法だけを示すものであり、地理データベースを形成する他の方法もあることが理解される。
【００３５】
再び図８を参照すると、コンパイルされた地理データベースのオリジナル・バージョン１１０が、分散され、インストールされ、又は他の方法でエンドユーザのコンピューティング・プラットフォーム１１２に提供される。コンパイルされた地理データベース１１０を、この目的のための媒体上に格納することができ、又は他の手段によってエンドユーザのコンピューティング・プラットフォームに提供することができる。コンパイルされた地理データベース１１０が、エンドユーザのコンピューティング・プラットフォーム１１２にインストールされるとき、地理データベース１１０内に含まれるデータは、エンドユーザのコンピューティング・プラットフォーム１１２上で動作するソフトウェア・アプリケーションによって用いられ、ナビゲーション関連の特徴及びサービスを提供する。
【００３６】
コンパイルされた地理データベース１１０内に含まれるデータにアクセスするために、エンドユーザのコンピューティング・プラットフォーム１１２は、データ・アクセス・レイヤ３４０を含む。データ・アクセス・レイヤ３４０は、地理データに関するナビゲーション用アプリケーション３３０からの要求に応答し、地理データベース１１０から必要とされる地理データを突き止めアクセスし、何らかの必要な復元を実行し、要求しているナビゲーション用アプリケーション３３０に該地理データを提供する、エンドユーザのコンピューティング・プラットフォーム１１２上で動作されるソフトウェア・プログラムである。データ・アクセス・レイヤの実施形態は、米国特許第６，０４７，２８０号及び第６，０７３，０７６号に開示されており、その開示全体を引用によりここに組み入れる。
【００３７】
Ｃ．更新プロセス
（１）概要
図８を参照すると、第１のプロセス３００が実行されて、コンパイルされた地理データベースのオリジナル・バージョン１００がエンドユーザに分散された後、地理データベースの開発者はデータを収集し続ける。地理データベースの開発者は、新しい地理的領域、すなわち第１のプロセス３００が実行されたときに地理データベースの原型バージョン１００によって表されなかった領域内の特徴に関する新しいデータを収集する。地理データベースの開発者はまた、地理データベースの原型のオリジナル・バージョン１００において表された特徴に関する更新されたデータ、及び／又はより詳細なデータも収集する。地理データベースの開発者によって収集された新しい、更新されたデータは、地理データベースの原型バージョン１００に適用され、及び／又は付加される。
【００３８】
地理データベースの開発者が連続的にデータを収集した結果、ある期間の後、地理データベースの原型１００内のデータは、第２（又は後の）のバージョン・レベルとなる。この後のバージョン・レベルは、オリジナル・バージョンの時から地理データベースの開発者によりなされたデータベースの原型１００への変更を反映させる。したがって、後のバージョン・レベルは、オリジナル・バージョンに対して更新されたバージョンである。第２のプロセス３１０が実行されて、コンパイルされた地理データベースのエンドユーザのコピーがもたらされ、第１のプロセス３００の時から地理データベースのマスターコピー１００になされた変更の一部又は全てを反映させる。第２のプロセスは、第１のプロセス３００の後の時間ｎに実行される。第１のプロセス３００が実行された時から第２のプロセス３１０が実行されるまでの間は、如何なる量の時間が経過してもよい。例えば、第１のプロセスから第２のプロセスまでの間の時間を、分、週、月、又は年にさえもすることができる。さらに、オリジナルの分散３００及び更新プロセス３１０は、ある期間にわたって行われ得、或いは異なるユーザに対して異なるものとすることができ、よって第１のプロセスから第２のプロセスまでの時間は、一つ以上の値が生じることがある。さらに、第２のプロセス３１０を地理データベース１１０のオリジナルの分散について一度以上実行することができ、すなわち該第２のプロセス３１０を用いて、オリジナルのデータベースを何回も更新することができる。
【００３９】
（２）更新モードにおけるコンパイラの作動
第２のプロセス３１０は、幾つかのコンポーネント部品を含む。第２のプロセスの部品は、コンパイラ１１１を用いて実行される。コンパイラ１１１が更新プロセス３１０の一部として作動するとき、該コンパイラは、更新モードで作動する。コンパイラ１１１が更新モードで作動するとき、該コンパイラは、更新されたパーセルを形成し、該更新されたパーセルとオリジナルのパーセル（「ベースライン・パーセル」と呼ばれる）との間の差を識別し、圧縮した形式でその差を表す更新トランザクションを形成する。更新モードでコンパイラにより実行される段階が、以下に更に詳細に説明される。
【００４０】
ａ．更新されたパーセルの形成
更新モードにおいて、コンパイラ１１１は、地理データベースの原型１００から地理データを得る。地理データベースの原型１００から得られたデータは、コンパイラ１１１が第１のプロセス３００においてデータを得たときのものに対して異なる（すなわち更新された）ものとなる。
更新モードにおいて、コンパイラ１１１は、更新されたデータを含むベースライン・パーセルの各々について、対応する更新されたパーセルを形成する。更新モードで作動する場合には、パーセル・コンパイラ１１１は、更新されたパーセルが対応するベースライン・パーセルと最小限度に異なるように、該更新されたパーセルを生成しようとする。例えば、コンパイラ１１１が更新モードで作動したとき、該コンパイラは、更新されたパーセル内のデータが対応するベースライン・パーセル内のデータと同じ地理的特徴を表すようにパーセルを形成する。したがって、空間的に構成されたパーセルに対して、コンパイラ１１１は、対応するベースライン・パーセルに用いられた、更新されたパーセルの各々と関連付けられた矩形の領域について同じ境界線を用いる。同様に、空間的に構成されていないデータのパーセルについては、コンパイラ１１１は、対応するベースライン・パーセルにおいて表されたものと同じ地理的特徴を表す更新されたパーセル・データにまとめる。
【００４１】
空間的に構成されたパーセルに対して、同じパーセル境界線が用いられることを保証する一つの方法は、更新モードで作動している際に、コンパイラ１１１への入力として、オリジナルのコンパイルされたデータベース１１０のコピーを提供することがである。コンパイラ１１１は、オリジナルのコンパイルされた地理データベース内に含まれるベースライン・パーセルからパーセルの境界線を判断し、次に更新されたパーセルを形成する際に同じ境界線を用いることができる。代わりに、コンパイラ１１１は、パーセル及び選択境界線を保存するための機構を含むことができる。更新されたパーセルを対応するベースライン・パーセルと同じ地理的特徴を表すように形成する別の方法は、地理データベースの原型バージョン１００内に含まれるデータ・エンティティ識別子と、コンパイルされた地理データベース１１０のベースライン・パーセル内のテーブル入力項目インデックスとの間に相互参照を付加することである。一般に、コンパイラ１１１が更新モードで作動されるとき、コンパイルされたベースライン・パーセル又はそれらを再生するために必要な全てのいずれかが、該コンパイラ１１１への入力として提供される。
対応するベースライン・パーセル内のデータによって表されたものと同じ特徴を表す更新されたパーセルの各々において、データをグループ分けすることに加えて、コンパイラはまた、ベースライン・パーセルと該更新されたパーセルとの間の特定の内部差を制限する。更新されたパーセルを形成する際に、コンパイラ１１１は、ベースライン・パーセルと該更新されたパーセルとの間の差を次の２つの型、すなわち（ａ）後に続くデータを上下に移動させない場所の変化、（ｂ）パーセルの末尾における追加のうちの一つに制限する。
【００４２】
例として、ベースライン・パーセルにおいて表されたリンクが分割された（すなわち、更新されたパーセルにおいて２つのリンクとして表された）場合には、オリジナルのリンクを削除し、２つの新しいリンクを形成することが好ましい。ベースライン・パーセル内のリンクが更新されたパーセル内に存在しないことも時々ある。これらのいずれにおいても、リンク・テーブルの中央からリンクを物理的に削除することにより、更新されたパーセルにおけるテーブルの残りの部分がベースライン・パーセルに対して上方に移動させられる。このために、１ビットの削除用フラグが各々のテーブルに付加される。この削除用フラグは、対応する入力項目が、ベースライン・パーセルに対して、更新されたパーセルにおいて削除されたことを示すために用いられる。図７は、データ・テーブルにおいて各々のデータ入力項目と関連付けられた削除用フラグ４００を示す。（このフラグは、０ビットまでは圧縮されないが、ベースライン・パーセル及び更新されたパーセル内のあらゆる入力項目について１ビットの幅を有する。）
【００４３】
各々のテーブル入力項目内の削除用フラッグ４００は、該入力項目が削除されたかどうかを示すために用いられる。テーブル入力項目が更新されたパーセルにおいて削除された場合には、削除用フラッグ４００は、ベースライン・パーセルにおいて０（誤り）に設定されるが、更新されたパーセルにおいては１に設定される。たとえ入力項目が削除され、よって使用されなくても、更新されたパーセル内のテーブル入力項目の残りの部分は、ベースライン・パーセルにおけるものと同じままにされる。テーブル入力項目の残りの部分を同じままにすることにより、ベースライン・パーセルと更新されたパーセルとの間の差が最小に抑えられる。
一般に、新しい入力項目を付加するために、ベースライン・パーセルにおける所定のテーブルのすぐ後には場所がない。新しい入力項目がテーブルに追加される場合には、新しいテーブル入力項目におけるフィールドの圧縮された幅が、ベースライン・パーセルにおけるそのフィールドの幅を超える可能性がある。したがって、付加的な入力項目を含む同じ型の第２のテーブルが生成され、更新されたパーセルの末尾に配置される。新しい入力項目を含むテーブルが、第２のテーブル・オフセット・アレイによって指し示される。この実施形態において、現在のテーブル・オフセット・アレイは、各々のテーブルの型について一対のオフセットを含むように修正され、更新されたパーセルがその型についての付加的な入力項目のテーブルを含まなかった場合には、各々の型についての第２のオフセットが０となる。
【００４４】
例として、ベースライン・パーセルが形成されたので、単一の新しいリンクが、パーセルに対応する地理的領域に付加されたと仮定する。コンパイラが従来の方法に従って作動された場合には、リンクをパーセルのリンク・テーブルのいずれにも配置することができ、該パーセルの重合ライン・テーブルにおける重合ラインのいずれにも配置することができる。本実施形態においては、コンパイラが更新モードで作動されるとき、該コンパイラは、ベースライン・リンク・テーブルの末尾に新しいリンクを付加し、該新しいリンクを、ベースライン・重合ライン・テーブルの末尾に配置させる（自動的に重合ラインにおいて）。
【００４５】
図１０は、更新されたパーセルの一つの実施形態におけるコンポーネントを示す図である。この実施形態において、テーブル・オフセット・アレイ６３４は、パーセル内に存在するデータ・テーブル型の各々について２つの入力項目を含む。レコードが、特定のデータ型について更新されたパーセル内に付加された場合には、入力項目における第２のオフセットが０でなくなり、その型の付加的なレコードの（第２の）テーブルを指し示す。効率のために、テーブル・オフセット・アレイ６３４はまた、各々の型の２つのテーブルの最初にレコードの総数を含むこともできる。リンクＮを見つけるために、リンク・データ型についてのテーブル・オフセット・アレイ入力項目が用いられる。第１のリンク・テーブルにおけるリンク・レコードの（テーブル・オフセット・アレイ入力項目内の）総数がＫであり、ＮがＫより小さいか又はこれに等しい場合には、第１のリンク・テーブル・オフセットが用いられて、第１のリンク・テーブルの初めに到達する。次に、あるリンク・テーブル入力項目の長さの付加的な（Ｎ−１）倍数でリンクＮを見つけることができる。他方、ＮがＫより大きい場合には、第２のリンク・テーブル・オフセットが用いられて、該第２のリンク・テーブルの初めに到達する。次に、あるリンク・テーブル入力項目の長さの付加的な（Ｎ−Ｋ−１）倍数でリンクＮを見つけることができる。
【００４６】
ｂ．更新トランザクションの形成
上述のように更新されたパーセルを形成した後、コンパイラ１１１は、インクリメンタル更新トランザクションを形成する。インクリメンタル更新トランザクションは、ベースライン・パーセルとそれに対応する更新されたパーセルとの間の差を示す。
（ｉ）マスクの形成
インクリメンタル更新トランザクションを形成する際に、ベースライン・パーセル（「Ｂ］）とそれに対応する更新されたパーセル（「Ｕ」）との間の差が識別される。ベースライン・パーセルＢと対応する更新されたパーセルＵが同じでない場合には、コンパイラ１１１は、２つのビット・マスク、すなわちＭ１（ベースライン・パーセルＢと同じ寸法）及びＭ２（更新されたパーセルＵと同じ寸法）を形成し、ベースライン・パーセルＢが論理的にＭ１と論理積演算され、その結果が、論理的にＭ２と論理和演算された場合には、最終結果が更新されたパーセルＵ、すなわち、（（Ｂ＆Ｍ１）｜Ｍ２）＝Ｕとなる。
【００４７】
マスクＭ１及びＭ２は、ベースライン・パーセルＢと更新されたパーセルＵとの間のビットごとの比較によって生成される。次の表は、２つのマスクにおける各々のビットを定める。
2004070323.tif 000003
ベースライン・パーセルＢのビットが１であり、更新されたパーセルＵの対応するビットが０である場合には、マスクＭ１は該ビットをオフにする。ベースライン・パーセルＢのビットが０であり、更新されたパーセルＵの対応するビットが１である場合には、マスクＭ２は該ビットをオンにする。２つのパーセルが一致する場合には、いずれのマスクもビットに影響を及ぼさない。
図１１は、Ｂ、Ｕ、Ｍ１及びＭ２の間の関係を示す図である。
【００４８】
（ｉｉ）マスクの圧縮
コンパイラが、更新されたパーセルにおいて許された変化の種類を、すなわち後に続くデータを上下に移動させない場所の変化及びパーセルの末尾における追加に制限した方法のために、ビット・マスクＭ１は、主に１となるように生成され、ビット・マスクＭ２は、主に０となるように生成される。したがって、Ｍ１及びＭ２は、それぞれ大きく圧縮することができる。コンパイラ１１１は、０又は１の文字列を効率的に押し潰す何らかの圧縮アルゴリズムを用いて、Ｍ１及びＭ２を圧縮する。（上述のように、削除されたテーブル入力項目に対して単一ビットの削除用フラグを用いることにより、ベースライン・パーセルとそれに対応する更新されたパーセルとの間の差を最小に抑えることが容易になり、これによりこれらの圧縮率が上がることに注意せよ。）
【００４９】
ｃ．更新トランザクションの形成及び送信
図８を参照すると、コンパイラ１１１は、マスクＭ１及びＭ２の圧縮されたバージョンを使用して、インクリメンタル更新トランザクション３１８を形成する。インクリメンタル更新トランザクション３１８は、マスクＭ１及びＭ２の圧縮されたバージョンを含むものである。個々のインクリメンタル更新トランザクションは、更新されたパーセルの各々について形成される。
インクリメンタル更新トランザクション３１８は、エンドユーザのシステム１１２に送信される。更新を必要とするエンドユーザのシステムの地理データベースにおける全てのデータのパーセルに対して、エンドユーザにインクリメンタル更新トランザクションを提供することができる。代わりに、例えば、エンドユーザが通常移動する領域、或いはエンドユーザが選択したか又は申し込んだ領域を表すデータを含むそれらのパーセル対してだけ、エンドユーザに全てのインクリメンタル更新より少ないインクリメンタル更新トランザクションを提供することができる。
無線送信を含むあらゆる適切なデータ送信手段を、インクリメンタル更新トランザクションを送信するために用いることができる。例として、インクリメンタル更新トランザクションを、地理データベースの開発者からエンドユーザのシステムに無線で送信することができる。この例において、エンドユーザのシステムは、これらのインクリメンタル更新トランザクションを受けるために適切なハードウェア及びソフトウェアを含む。
【００５０】
ｄ．インクリメンタル更新トランザクションからの更新されたパーセルの形成
図８を参照すると、更新プロセス３１０は、エンドユーザのシステム１１２において継続する。エンドユーザのシステム１１２は、更新トランザクションを受け取る更新アプリケーション５００を含む。一つの実施形態において、更新アプリケーション５００は、データ・アクセス・レイヤ３４０の一部である。
エンドユーザのシステム１１２の更新アプリケーション５００は、インクリメンタル更新トランザクション３１８内のデータ及び対応するベースライン（オリジナルの）パーセルＢ内のデータ（既にエンドユーザのシステム内にある）を使用して、対応する更新されたパーセルＵを形成する。エンドユーザのシステム１１２上の更新アプリケーション５００は、コンパイラ１１１が実行する演算の逆を実行して、ビット・マスクＭ１及びＭ２を形成する、すなわち、更新アプリケーション５００は、ビット・マスクＭ１及びＭ２を復元し、ベースライン・パーセルＢ並びに該ビット・マスクＭ１及びＭ２から更新されたパーセルＵを生成する。
【００５１】
更新アプリケーション５００が、更新されたパーセルＵを形成した後、該更新されたパーセルＵは、エンドユーザのシステム１１２内の媒体上に格納される。更新アプリケーション５００によって実行されたプロセスは、エンドユーザのシステム１１２が受け取った個々のインクリメンタル更新トランザクション３１８の各々に対して繰り返される。エンドユーザのシステムは、該システムが受け取り、復元するインクリメンタル更新トランザクションの各々について個々の更新されたパーセルを格納する。
エンドユーザのシステムが受け取った全てのインクリメンタル更新トランザクションが、更新されたパーセル内に形成されたとき、更新プロセスが完了する。更新プロセスが完了すると、エンドユーザのシステム内の一部又は全てのオリジナルのベースライン・パーセルについて、更新されたパーセルが形成され、格納される。更新されたパーセル及び何らかの残りのベースライン・パーセルが、共に更新された地理データベース３２０を形成する。
【００５２】
ｅ．更新された地理データベースの使用
更新された地理データベース３２０は、エンドユーザのシステムによって用いられ、ナビゲーション関連の特徴を提供する。更新された地理データベースを用いる場合には、パーセル内に含まれるデータに対する必要性があるときはいつでも、オリジナルのパーセルの場所において、更新されたパーセルがエンドユーザのシステムにより用いられる。システム１１２がナビゲーション関連の特徴を提供するために用いられる際には、データ・アクセス・レイヤ３４０が、オリジナルのパーセルの代わりに更新されたパーセルにアクセスする。
更新されたパーセルを用いる場合には、データ・アクセス・レイヤ３４０は、１に等しい削除用フラグを含む如何なるテーブル入力項目も無視する。さらに、更新されたパーセルを用いる場合には、データ・アクセス・レイヤ３４０は、オリジナルのテーブルの延長として付加的な（すなわち、交換用）入力項目のテーブルを処理する。
【００５３】
ＩＶ．選択肢
パーセルへの多数の変更により、Ｍ１及びＭ２のマスクの組合せが、更新されたパーセルＵの寸法を超えるようになる。このような場合、パーセルＵ全体（又はその圧縮されたバージョン）をインクリメンタル更新として送らなければならない。
上述の実施形態の幾つかにおいて、インクリメンタル更新トランザクションは、エンドユーザのシステムによって受けられ、該エンドユーザのシステムにおいて復元され、内部に配置された媒体上に格納される。別の実施形態において、インクリメンタル更新トランザクションを、ナビゲーション関連の特徴を提供するシステム以外のシステムにおいて、或いはエンドユーザ以外のパーティによって受けることができる。例えば、一つの選択肢において、エンドユーザは、インクリメンタル更新トランザクションをパーソナル・コンピュータ上に受ける。エンドユーザのパーソナル・コンピュータ上のプログラムが、該エンドユーザのナビゲーション・システムからの地理データベースにアクセスし、インクリメンタル更新トランザクション、及び該エンドユーザのナビゲーション・システムからの地理データベース内に含まれるデータを用いて、更新されたパーセルを形成する。次に、更新されたパーセルは、エンドユーザのナビゲーション・システムにおいて用いられる媒体上に格納される。
【００５４】
別の選択肢においては、サードパーティがインクリメンタル更新を受け取り、エンドユーザに代わって更新されたパーセル（及び恐らくは更新された地理データベースの全体）を形成する。例として、自動車販売店は、販売した乗り物のナビゲーション・システムにインストールされた地理データベースについてのインクリメンタル更新トランザクションを受け取る。自動車販売店はまた、これらのナビゲーション・システムにインストールされた地理データベースのコピーも有する。自動車販売店は、更新アプリケーション（図８の５００）と同様の更新プログラムを有する。インクリメンタル更新トランザクション及び地理データベースのコピーを用いて、自動車販売店において更新された地理データベースが形成される。自動車販売店は、更新された地理データベースをエンドユーザのナビゲーション・システムにインストールする。
【００５５】
上述の実施形態において、パーセルは、ヘッダ、テーブル・オフセット・アレイ、及びデータレコードのテーブルを含む内部構造を有するものとして説明された。別の実施形態において、パーセルは、異なるコンポーネントを含む異なる内部構造を有することができる。例えば、データレコードのテーブルを指し示すテーブル・オフセット・アレイを有する代わりに、パーセルは、一つ又はそれ以上のインデックスを有することができる。インデックスを用いて、パーセル内の適切なデータレコードを指し示すことができる。内部インデックスを有するパーセルを、上述の方法と同様の方法で更新することができる。ベースライン・パーセルにおけるインデックスの入力項目を修正しなければならない場合、或いは新しい入力項目を該インデックスに付加する必要がある場合には、修正された入力項目又は新しい入力項目を含む新しい第２のインデックスを有するように、更新されたパーセルが形成される。新しい第２のインデックスを、更新されたパーセルの末尾に配置させることができる。オリジナルのインデックス及び新しい第２のインデックスを共に用いて、更新されたパーセルにおけるデータを見つけることができる。
【００５６】
Ｖ．利点
開示された実施形態の幾つかの利点は、比較的小さなインクリメンタル更新トランザクションを用いて比較的大きな量のデータ（すなわち、地理データベース全体）を更新できることである。圧縮されたバージョンのパーセルを用いて地理データベースを段階的に更新することについて開示された実施形態は、この考慮事項に対処する。
現在開示された実施形態の幾つかによると、インクリメンタル更新トランザクションのサイズが比較的小さいので、オリジナルのパーセルに実際に変更され又は付加されたデータのサイズに緊密に近づく。
開示された実施形態に関連した利点は、インクリメンタル更新トランザクションが、パーセル内のレコードのような幾らかの小さなユニットではなく、全体のパーセルに適用される場合には、該インクリメンタル更新トランザクションのサイズを低減させることができることである。この利点は、パーセルの平均サイズが大きくなるにつれて増加する。
【００５７】
以下の例が、この利点を示す。
ケースＩ：１０，０００レコードのデータベースが、各々が１００のレコードを含む１００のパーセルに分けられ、一つのパーセルにおいて一つのレコードを変更する。
開示された実施形態が用いられない場合には、インクリメンタル更新トランザクションは、１パーセル、すなわちデータベースの１パーセントである。しかしながら、開示された実施形態を用いた場合には、インクリメンタル更新トランザクション（Ｍ１＋Ｍ２）は、単一のレコードすなわちデータベースの０．０１パーセントに近づく。
ケースＩＩ：１０，０００レコードのデータベースが、各々が１０００レコードを含む１０のパーセルに分けられ、一つのパーセルにおいて一つのレコードを変更する。
開示された実施形態が用いられない場合には、インクリメンタル更新トランザクションは、１パーセル、すなわちデータベースの１０パーセントである。しかしながら、開示された実施形態を用いた場合には、インクリメンタル更新トランザクション（Ｍ１＋Ｍ２）は、単一のレコードすなわちデータベースの０．０１パーセントに近づく。
【００５８】
ケースＩＩのパーセルは、ケースＩのパーセルのサイズの１０倍である。開示された実施形態が用いられない場合には、ケースＩＩにおけるインクリメンタル更新トランザクションもまた、ケースＩのもののサイズの１０倍となる。しかしながら、開示された実施形態を用いる場合には、インクリメンタル更新トランザクションが、両方のケースにおいてほとんど同じサイズとなる。したがって、この例に示されるように、開示された実施形態は、パーセルが１０倍大きい場合には、更新トランザクションのサイズを減少させる際に１０倍有利となる。
上記の詳細な説明は、限定的と言うよりは例示的とみなされるよう意図されており、更に、添付の特許請求の範囲は、全ての均等物を含むものであり、本発明の範囲を定めるよう意図されていることを理解すべきである。
【図面の簡単な説明】
【図１】地理データベースの原型バージョンと対象領域との間の関係を示す図である。
【図２】図１に示される地理データベースの原型バージョンからの地理データベース製品の形成を示す図である。
【図３】図１の対象領域の一部分を示す地図である。
【図４】図３に示される道路区分（リンク）の一つのデータ表示のコンポーネントを示すブロック図である。
【図５】図２の地理データベース製品を構成するための一つの実施形態を示すブロック図である。
【図６】図２のデータ製品の一つの空間パーセル化を示す図である。
【図７】図６のデータ・パーセルの一つの中に含まれるデータを構成するための一つの実施形態を示すブロック図である。
【図８】図２の地理データベース製品のオリジナル・バージョンを分散するためのプロセス、及び地理データベース製品を更新するためのプロセスを示す図である。
【図９】図８に示されるベースライン・モード・プロセスにおける付加的な段階を示す。
【図１０】更新されたパーセルの一つの実施形態におけるコンポーネントを示す図である。
【図１１】ベースライン・パーセルと、更新されたパーセルと、図８の更新モード・プロセスによって形成されたビット・マスクとの間の関係を示す図である。
【符号の説明】
１０４　対象領域
１１０、３２０　地理データベース
１１１　コンパイラ
１１２　コンピューティング・プラットフォーム
２１２　副領域
２２０　パーセル
２２４　データ・レコード
３１８　インクリメンタル更新トランザクション
５００　更新アプリケーション
【図１】
2004070323.tif 000004
【図２】
2004070323.tif 000005
【図３】
2004070323.tif 000006
【図４】
2004070323.tif 000007
【図５】
2004070323.tif 000008
【図６】
2004070323.tif 000009
【図７】
2004070323.tif 000010
【図８】
2004070323.tif 000011
【図９】
2004070323.tif 000012
【図１０】
2004070323.tif 000013
【図１１】
2004070323.tif 000014