(57)【特許請求の範囲】
【請求項１】
使用時に、メインアプリケーションと前記メインアプリケーションに関連する少なくとも１つの外部アプリケーションとの１つ以上の機能を制御するためのユーザインタフェースを提供するように構成された処理リソースと、
通信ネットワークを介して前記少なくとも１つの外部アプリケーションとの通信をサポートするように構成された通信インタフェースと、
それぞれが多数のユーザインタフェース要素の所定の表示を含む複数のユーザインタフェース・テンプレートを含むデータ格納部と、
使用時に、受信されたメッセージに応じて選択可能な前記データ格納部のユーザインタフェース・テンプレートにアクセスし、前記多数のユーザインタフェース要素の前記所定の表示から、選択された前記ユーザインタフェース・テンプレートを、ユーザインタフェースのインスタンスに転換するように構成されたユーザインタフェース・ホスト・エンティティとを備え、
前記ユーザインタフェース・ホスト・エンティティは、
使用時に、各アプリケーションについての優先レベルを含むメッセージを、前記メインアプリケーションと前記少なくとも１つの外部アプリケーションとから受信して、より高い優先レベルを有する前記アプリケーションに対して、前記ユーザインタフェースのインスタンスに転換される前記ユーザインタフェース・テンプレートを選択することを許可し、
選択された前記ユーザインタフェース・テンプレートの少なくとも１つのユーザインタフェース要素に対して表示するためにレンダリングする情報を特定する構成データを含む、少なくとも１つのメッセージを前記外部アプリケーションから受信し、
前記選択されたユーザインタフェース・テンプレートの前記少なくとも１つのユーザインタフェース要素とのユーザ対話に応じて、イベントデータを生成し、
生成された前記イベントデータを、解釈のために前記外部アプリケーションへ送信する
ように構成されている、ことを特徴とする通信装置。
【請求項２】
前記通信インタフェースは、使用時に、前記外部アプリケーションと通信するように構成され、前記外部アプリケーションは、前記処理リソースの外部の機器に設けられていることを特徴とする請求項１に記載の装置。
【請求項３】
前記機器を含む電子装置を更に含み、
前記電子装置は、前記処理リソースとは分かれて収容されていることを特徴とする請求項２に記載の装置。
【請求項４】
前記多数のユーザインタフェース要素は、定義可能な制御要素を含むことを特徴とする請求項１乃至３のいずれか１項に記載の装置。
【請求項５】
前記多数のユーザインタフェース要素は、定義可能なラベル要素を含むことを特徴とする請求項１乃至４のいずれか１項に記載の装置。
【請求項６】
ユーザインタフェースのナビゲーション・ジェスチャーを受信するように構成された入力装置を更に備え、
前記イベントデータは、前記ユーザインタフェースのナビゲーション・ジェスチャーに対応することを特徴とする請求項１乃至５のいずれか１項に記載の装置。
【請求項７】
前記複数のユーザインタフェース・テンプレートの各々は、当該ユーザインタフェース・テンプレートに関連付けられる所定のレイアウトを有することを特徴とする請求項１乃至６のいずれか１項に記載の装置。
【請求項８】
前記通信インタフェースは、無線通信インタフェースであることを特徴とする請求項１乃至７のいずれか１項に記載の装置。
【請求項９】
請求項１乃至８のいずれか１項に記載の前記通信装置を含むことを特徴とするナビゲーション装置。
【請求項１０】
請求項１乃至８のいずれか１項に記載の前記通信装置を含む第１のデバイスと、
前記少なくとも１つの外部アプリケーションをサポートする第２のデバイスとを含む通信システムであって、
前記第１及び第２のデバイスは、前記通信ネットワークを介して通信するように構成されていることを特徴とする通信システム。
【請求項１１】
前記第１のデバイスは前記第１のデバイスに関連付けられた第１の動作タスクを有し、前記第２のデバイスは前記第２のデバイスに関連付けられた第２の動作タスクを有し、前記第１及び前記第２の動作タスクは異なっていることを特徴とする請求項１０に記載のシステム。
【請求項１２】
前記第１のデバイスはナビゲーションデバイスであり、前記第２のデバイスは娯楽システムであることを特徴とする請求項１０又は１１に記載のシステム。
【請求項１３】
メインアプリケーションと前記メインアプリケーションに関連する少なくとも１つの外部アプリケーションとの１つ以上の機能を制御するためのユーザインタフェースを提供する方法であって、
各アプリケーションについての優先レベルを含むメッセージを、前記メインアプリケーションと前記少なくとも１つの外部アプリケーションから受信する工程と、
より高い優先レベルを有する前記アプリケーションに対して、それぞれが多数のユーザインタフェース要素の所定の表示を含む複数のユーザインタフェース・テンプレートからユーザインタフェース・テンプレートを選択することを許可する工程と、
選択された前記ユーザインタフェース・テンプレートの少なくとも１つのユーザインタフェース要素に対して表示するためにレンダリングする情報を特定する構成データを含む、少なくとも１つのメッセージを前記外部アプリケーションから受信する工程と、
前記多数のユーザインタフェース要素の前記所定の表示から、選択された前記ユーザインタフェース・テンプレートと、受信した前記構成データを、ユーザ用のユーザインタフェースのインスタンスに転換する工程と、
前記選択されたユーザインタフェース・テンプレートの前記少なくとも１つのユーザインタフェース要素とのユーザ対話に応じて、イベントデータを生成する工程と、
生成された前記イベントデータを、解釈のために前記外部アプリケーションへ送信する工程と
を含むことを特徴とする方法。
【請求項１４】
請求項１３に記載の方法をコンピュータに実行させるコンピュータプログラムコード手段を含むことを特徴とするコンピュータプログラム。
【請求項１５】
コンピュータ読み取り可能な媒体上で具現化される請求項１４に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば多数のアプリケーションが共有使用するユーザインタフェースを有する種類の通信装置に関する。本発明は、更に、例えば多数のアプリケーションが共有するユーザインタフェースを含む第１のデバイスを有する種類の通信システムに関する。本発明は、例えば多数のアプリケーションが共有するユーザインタフェースを提供する種類の方法に関する。
【背景技術】
【０００２】
携帯演算装置、例えばＧＰＳ（全地球測位システム）信号受信及び処理機能性を含むポータブルナビゲーションデバイス（ＰＮＤ）は周知であり、車載ナビゲーションシステム又は他の車両ナビゲーションシステムとして広く採用される。
【０００３】
一般に、近頃のＰＮＤは、プロセッサ、メモリ（揮発性及び不揮発性のうちの少なくとも一方、並びに一般的には双方）及びメモリ内に格納される地図データを含む。プロセッサ及びメモリは、ソフトウェアオペレーティングシステムが確立される実行環境を提供するように協働する。また、ＰＮＤの機能性を制御し且つ種々の他の機能を提供するように１つ以上のソフトウェアプログラムが更に提供されることは当然なことである。
【０００４】
通常、これらのデバイスは、ユーザがデバイスと対話し且つデバイスを制御できるようにする１つ以上の入力インタフェースと、ユーザに情報を中継する１つ以上の出力インタフェースとを更に含む。出力インタフェースの例示的な例には、視覚表示装置及び可聴出力用スピーカが含まれる。入力インタフェースの例示的な例には、オン／オフ動作又はデバイスの他の特徴を制御する１つ以上の物理ボタン（ボタンは必ずしもデバイス自体上にある必要はなく、デバイスが車両に内蔵されている場合はハンドル上にあってもよい）及びユーザ音声を検出するマイクが含まれる。特定の一構成において、出力インタフェース表示装置は、ユーザがタッチすることでデバイスを操作するために使用される入力インタフェースを更に提供するタッチセンシティブディスプレイとして（又はタッチセンシティブオーバレイ等を使用して）構成されてもよい。
【０００５】
多くの場合、この種のデバイスは、電力及びオプションとしてデータ信号をデバイスに送信し且つデバイスから受信するのに使用される１つ以上の物理コネクタインタフェース、並びにオプションとして、セルラ電気通信及び他の信号を介する通信、並びにデータネットワーク、例えばＢｌｕｅｔｏｏｔｈ、Ｗｉ−Ｆｉ、Ｗｉ−Ｍａｘ、ＧＳＭ、ＵＭＴＳ等、あるいはコントローラエリアネットワーク（ＣＡＮ）又はメディアオリエンテッドシステムトランスポート（ＭＯＳＴ）ネットワーク等の自動車ネットワークを可能にする１つ以上の無線送受信装置を含む。
【０００６】
この種のナビゲーションデバイスは、場所データを含む衛星放送信号を受信し、その後デバイスの現在地を判定するように処理するのに使用されるＧＰＳアンテナを更に含む。
【０００７】
ナビゲーションデバイスは、現在の角度及び直線加速度、また、ＧＰＳ信号から取得する場所情報に関連して速さ及びデバイスの相対的な変位、従って搭載される車両を判定するように処理される信号を生成する電子ジャイロスコープ及び加速度計を更に含んでもよい。通常、そのような機能は車載ナビゲーションシステムに提供されるのが最も一般的であるが、そうすることが得策である場合にはＰＮＤに提供されてもよい。
【０００８】
そのようなナビゲーションデバイスの有用性は、主に、第１の場所（一般に、出発地又は現在地）と第２の場所（一般に、目的地）との間の経路を判定する機能にある。デバイスのユーザは、多種多様な種々の方法、例えば郵便番号、街路名及び戸番、以前に格納した「公知の」目的地（例えば有名な場所、公共の場所（運動場又は水泳プール等）、あるいは他の地点情報）、並びにお気に入りの目的地又は最近訪れた目的地のいずれかにより、これらの場所を入力する。
【０００９】
一般に、ＰＮＤは、地図データから出発地住所の場所と目的地住所の場所との間の「最善」又は「最適な」経路を算出するソフトウェアにより使用可能になる。「最善」又は「最適な」経路は、所定の基準に基づいて判定され、必ずしも最速又は最短経路である必要はない。運転者を案内する経路の選択は非常に複雑であり、選択経路は、既存の交通予測される交通、動的に及び／又は無線で受信される交通、道路情報、道路速度に関する履歴情報、並びに道路の選択を判定する要因に対する運転者自身の好み（例えば運転者は、経路は高速道路又は有料道路を含んではならないと規定する）を考慮する。
【００１０】
更にデバイスは、道路状況及び交通状況を継続的に監視し、状況変化により、残りの行程がなされる経路の変更を提案するか又は選択する。種々の技術（例えば、移動電話データ交換、固定カメラ、ＧＰＳ車両追跡）に基づくリアルタイム交通監視システムは、交通遅延を識別し、その情報を通知システムに供給するために使用されている。
【００１１】
この種のＰＮＤは、一般に、車両のダッシュボード又はワイドスクリーン上に搭載されるが、車両ラジオの内蔵コンピュータの一部又は実際は車両自体の制御システムの一部として形成されてもよい。ナビゲーションデバイスは、例えばＰＤＡ（ポータブルデジタルアシスタント）、メディアプレーヤ、移動電話等のハンドヘルドシステムの一部であってもよい。これらの場合、ハンドヘルドシステムの標準的な機能性は、経路算出及び算出経路に沿うナビゲーションの双方を実行するデバイス上のソフトウェアを設置することで拡張される。
【００１２】
経路が算出されると、ユーザは、ナビゲーションデバイスと対話して、必要に応じて提案経路のリストから所望の算出経路を選択する。オプションとして、ユーザは、例えばある特定の経路、道路、場所又は基準が特定の行程に対して回避される必要があるか又は必須であると規定することにより、経路選択処理に介入するか又は経路選択処理を案内してもよい。ＰＮＤの経路算出面は１つの主機能を形成し、そのような経路に沿うナビゲーションは別の主機能である。
【００１３】
算出経路に沿うナビゲーションの間、一般に、そのようなＰＮＤは、選択経路に沿ってユーザをその経路の終点、即ち所望の目的地に案内する視覚命令及び／又は可聴命令を提供する。また、ＰＮＤは、ナビゲーションの間地図情報を画面上に表示するのが一般的である。そのような情報は、表示される地図情報がデバイスの現在地及びデバイスが車載ナビゲーションに使用される場合にはユーザの現在地又はユーザの車両の現在地を示すように画面上で規則的にアップグレードされる。
【００１４】
画面上に表示されるアイコンは、一般に、デバイスの現在地を示し且つデバイスの現在地の近傍において現在の道路及び周囲の道路の地図情報と共に中央に置かれ、他の地図機能も表示される。また、ナビゲーション情報は、オプションとして上下のステータスバーに表示されるか又は表示される地図情報の片側に表示されてもよい。ナビゲーション情報の例には、ユーザが走行する必要がある現在の道路から次の道路変更への距離が含まれ、場合によってはその進路変更の特性は、右折又は左折等、特定の種類の進路変更を示唆する更なるアイコンで示される。更にナビゲーション機能は、経路に沿ってユーザを案内するのに使用される可聴命令の内容、継続時間及びタイミングを判定する。理解されるように、「１００ｍ先で左折」等の簡単な命令は、かなりの処理及び分析を要する。上述のように、デバイスとのユーザ対話は、タッチスクリーンによってでもよく、更に又はあるいはリモートコントロールに搭載されるステアリングコラム、音声起動又は任意の他の適切な方法によってでもよい。
【００１５】
ナビゲーションの間にユーザが事前算出経路から逸れる場合（偶然に又は意図的に）、別の経路がより得策であるとリアルタイム交通状況が要求し且つそのような状況を自動的に認識するようにデバイスが適切に使用可能にされる場合又はユーザが任意の理由で能動的にデバイスに経路を再算出させる場合、デバイスにより提供される更なる重要な機能は自動経路再算出である。
【００１６】
ユーザが規定する基準で経路を算出できることも周知である。例えばユーザは、デバイスにより景色のよい経路が算出されることを好むか、あるいは交通渋滞が広がる可能性が高いか、広がることが予想されるか又は現在広がっている全ての道路を回避することを要求する。次に、デバイスソフトウェアは種々の経路を算出し、例えば景勝であるとしてタグ付けされる地点情報（ＰＯＩとして周知である）を経路に沿って最も多く含む経路をより有利に評価するか、あるいは特定の道路上で広がっている交通状況を示す格納情報を使用することにより、考慮される可能性の高い渋滞又は遅延のレベルに関して算出ルートを整理する。他のＰＯＩに基づく経路算出及び交通情報に基づく経路算出、並びにナビゲーション基準が更に考えられる。
【００１７】
経路算出及びナビゲーション機能はＰＮＤの全体的な有用性に対して重要であるが、デバイスを純粋に情報表示装置用に使用できる。即ち、デバイスの現在地に関連する地図情報のみが表示され、経路が全く算出されておらず、デバイスが現在全くナビゲーションしていない「フリードライビング」用に使用できる。多くの場合、そのような動作モードは、移動することを要求される経路をユーザが既に認識し且つナビゲーション支援を必要としない場合に適用可能である。
【００１８】
上述のこの種のデバイス、例えばTomTom International B.V.が製造及び供給する920 GOモデルは、ユーザがある位置から別の位置に走行できるようにする信頼できる手段を提供する。そのようなデバイスは、ナビゲートしている目的地までの経路にユーザが精通していない場合に非常に有用である。
【００１９】
上記で提案されたように、ＰＮＤは、主に、ナビゲーション関連機能及び／又は地図表示装置に対して使用されるが、ＰＮＤに応じてユーザの経験を向上させ且つ／又は隣接デバイスの制御を容易にするためにＰＮＤを他の隣接電子デバイスに結合することが周知である。それにより、特にＰＮＤ及び隣接デバイスが車両内に配置される場合に、ユーザの作業負荷及び注意散漫を減少させる。
【発明の概要】
【発明が解決しようとする課題】
【００２０】
いくつかのアプリケーションの場合、ＰＮＤと外部デバイスとの対話は、外部デバイスが提供する機能性の詳細を規定する機能インタフェース定義によりサポートされる。インタフェース定義は、一般に、デバイス内のソフトウェア処理に関連する。しかし、インタフェース定義に従って且つ外部デバイスに関連して構造化されるアプリケーションプログラミングインタフェース（ＡＰＩ）をサポートするために、外部デバイスの機能性の特定の知識はＰＮＤのメインアプリケーションに組み込まれる必要がある。
【００２１】
従って、ＡＰＩの新バージョンがリリースされる際、例えば外部デバイスがアップグレードされるか又は新モデルがリリースされる際、ＰＮＤのメインアプリケーションを維持する必要がある。
【００２２】
その結果、サードパーティデバイスの使用に関連する種々のインタフェースの最新サポートを確保する負担は、ＰＮＤの製造業者に課せられる。ＰＮＤのメインアプリケーションのアップグレードのために外部デバイスと関連付けられるサードパーティの介入が必要な場合、論理的な問題が浮上する。また、ＰＮＤのメインアプリケーションのバージョンのリリースは、ＰＮＤと組み合わせて使用される外部デバイスを変更する結果、サードパーティが提供する変更のメインアプリケーションへの組込みの容易さに関連するか又は依存する。
【００２３】
従って、ソフトウェア及びデバイスのリリースサイクルがサードパーティ機器のリリースサイクルに依存するのを回避することが望ましい。
【課題を解決するための手段】
【００２４】
本発明の第１の態様によると、使用時に、メインアプリケーション及びユーザインタフェースをサポートするように構成された処理リソースと、データ格納部と、使用時に、受信されたメッセージに応じて選択可能な多数のユーザインタフェース要素の所定の表示形式を含むユーザインタフェース・テンプレートにアクセスするように構成されたユーザインタフェース・ホスト・エンティティとを含む通信装置が提供され、ユーザインタフェースは、多数のユーザインタフェース要素の所定の表示形式から選択されたユーザインタフェース・テンプレートをユーザインタフェースの具体例に転換するように構成される。
【００２５】
処理リソースは、ユーザインタフェースを使用するために競合した要求を調停するように構成されてもよい。
【００２６】
装置は、通信ネットワークを介してメインアプリケーションに対する外部アプリケーションとの通信をサポート可能な通信インタフェースを更に含んでもよく、処理リソースは、使用時に、外部アプリケーションに、通信ネットワークを介したユーザインタフェースへのリモートアクセスを提供するように構成されてもよい。
【００２７】
メッセージは、通信インタフェースを介して受信されてもよい。メッセージは、例えば外部アプリケーションから通信インタフェースを介して受信されてもよい。
【００２８】
多数のユーザインタフェース要素は、多数のユーザインタフェース・オブジェクトであってもよい。
【００２９】
ユーザインタフェースの具体例は、多数のユーザインタフェース要素のレンダリングであってもよい。
【００３０】
通信インタフェースは、使用時に、処理リソースの外部の機器に設けられてもよい外部アプリケーションと通信するように構成されてもよい。
【００３１】
装置は、機器を含み且つ処理リソースとは分かれて収容されてもよい電子装置を更に備えてもよい。
【００３２】
ユーザインタフェース要素はグラフィカルユーザインタフェース（ＧＵＩ）・ウィジェットであってもよい。
【００３３】
ユーザインタフェース・ホストは、表示されるテキスト等のユーザインタフェースの具体例をカスタマイズするためのデータを受信するように構成されてもよい。
【００３４】
メインアプリケーションは、第１の動作タスクと関連付けられてもよく、外部アプリケーションは第２の動作タスクと関連付けられてもよい。第１の動作タスクと第２の動作タスクは異なっていてもよい。
【００３５】
第１の動作タスクは第１の車両タスク、例えばテレマティック・タスクであってもよく、第２の動作タスクは第２の車両タスク、例えば車載娯楽、空調、室温調節又は温度測定装置等のセンサ測定装置であってもよい。
【００３６】
ユーザインタフェースは、ローカルに格納された多数のユーザインタフェース・テンプレートのうちのユーザインタフェーステンプレートにアクセスするように構成されてもよい。通信インタフェースを介して受信されたメッセージは、ユーザインタフェースを識別してもよく、ユーザインタフェース・テンプレートを選択するように構成してもよい。
【００３７】
ユーザインタフェースは、使用時に、ユーザインタフェース・テンプレートのユーザインタフェース要素を限定する情報を受信するように構成されてもよい。
【００３８】
多数のユーザインタフェース要素は定義可能な制御要素を含んでもよい。
【００３９】
多数のユーザインタフェース要素は定義可能なラベル要素を含んでもよい。
【００４０】
ユーザインタフェースは、多数のユーザインタフェース要素の素子のユーザインタフェースの具体例とのユーザ対話に応じてイベントデータを生成するように構成されてもよい。
【００４１】
処理リソースは、外部アプリケーションによる受信のための通信インタフェースを介してイベントデータを通信するように構成されてもよい。
【００４２】
装置は、ユーザインタフェースでのナビゲーション表示を受信するように構成される入力装置を更に備えてもよく、イベントデータはユーザインタフェースでのナビゲーション表示に対応してもよい。
【００４３】
ユーザインタフェースはグラフィカルユーザインタフェースであってもよい。ユーザインタフェース・テンプレートはそれに関連付けられる所定のレイアウトを有してもよい。
【００４４】
通信インタフェースは無線通信インタフェースであってもよい。
【００４５】
入力装置は、例えばソフトキー、リモートコントロール及び／又は音声起動モジュールを提供するタッチスクリーンであってもよく、あるいは別の入力装置であってもよい。入力装置は、車両のステアリング機構、例えばステアリングコラム又はハンドルに結合されてもよい。
【００４６】
本発明の第２の態様によると、本発明の第１の態様に対して上述されたような通信装置を具備するナビゲーション装置が提供される。
【００４７】
ナビゲーション装置はポータブルナビゲーションデバイスであってもよい。
【００４８】
本発明の第３の態様によると、通信装置を備える第１のデバイスと、外部アプリケーションをサポートする第２のデバイスとを備える通信システムが提供され、第１のデバイス及び第２のデバイスは、通信ネットワークを介して通信するように構成される。
【００４９】
第１のデバイスはそれに関連付けられる第１の動作タスクを有してもよく、第２のデバイスはそれに関連付けられる第２の動作タスクを有してもよく、第１の動作タスクと第２の動作タスクとは異なっていてもよい。
【００５０】
第１のデバイスはナビゲーションデバイスであってもよく、第２のデバイスは娯楽システムであってもよい。
【００５１】
第２のデバイスは、空調又は室温調節コントローラ、あるいは周囲温度監視等、別の機能を提供する回路基板であってもよい。
【００５２】
本発明の第４の態様によると、ユーザインタフェースを提供する方法が提供され、方法は、メインアプリケーション及びそのためのユーザインタフェースをサポートする工程と、メッセージを受信する工程と、受信されるメッセージに応じて多数のユーザインタフェース要素の所定の表示形式を含むユーザインタフェース・テンプレートを選択する工程と、多数のユーザインタフェース要素の所定の表示形式から選択されるユーザインタフェース・テンプレートをユーザに対するユーザインタフェースの具体例に転換することとを含む。
【００５３】
方法は、通信インタフェースをサポートする工程と、通信ネットワークにおいて通信をサポートする工程と、通信ネットワークを介したユーザインタフェースへのリモートアクセスを、メインアプリケーションに対した外部アプリケーションに提供する工程とを更に含んでもよい。
【００５４】
本発明の第５の態様によると、本発明の第４の態様に対して上述されたような方法をコンピュータに実行させるコンピュータプログラムコード手段を含むコンピュータプログラム要素が提供される。
【００５５】
コンピュータプログラム要素は、コンピュータ可読媒体上で具現化されてもよい。
【発明の効果】
【００５６】
これらの実施形態の利点は以下に示され、これらの実施形態の各々の更なる詳細及び特徴は、添付の従属請求項及び以下の詳細な説明の他のところで規定される。
【００５７】
従って、メインアプリケーションの開発サイクルを外部アプリケーションの開発サイクルから分離できる装置、システム及び方法を提供することができる。その結果、メインアプリケーションの開発は外部アプリケーションの開発サイクルの完了に依存せず、提供されるユーザインタフェースは種々のアプリケーションに対して再利用できる。また、提供されるテンプレートは、テンプレートがデータファイルから形成されるため、実行時であっても後続の機会に容易にアップグレード及び／又は補足される。更に、メインアプリケーションを含むデバイスが減少した量のコードを保有するように開発されることにより、デバイスを簡略化し、製造コスト及び開発期間を減少させる。メインアプリケーションを含むデバイスが増加する外部デバイスと相互動作することを装置、システム及び方法が更に許可することにより、デバイスの汎用性を高め、ユーザにとって望ましくなる。提供されるユーザインタフェースは均一であり、上記示唆されたように、複数のデバイスに対して個別の開発努力を必要としない。ユーザインタフェース要素、例えばウィジェットは、各ウィジェット、例えばプロパティ、イベント及び／又はレイアウトの特徴のために拡張可能であり、その拡張性は、装置、方法及び／又はシステムを実現するために使用される通信プロトコルを変更する必要なく可能である。実際に、上記装置、方法及びシステムが最小プロトコルオーバヘッドで実現される結果、エンティティ間の通信における遅延時間は最少になる。更に、簡単且つ明確に規定されたテンプレートを提供することにより、メインアプリケーションを含むデバイスの開発中に必要とされるデバッギング及び誤りを減少させることができる。
【図面の簡単な説明】
【００５８】
【図１】ナビゲーションデバイスにより使用可能な全地球測位システム（ＧＰＳ）の例示的な部分を示す概略図である。
【図２】本発明の一実施形態を構成する通信システムを示す概略図である。
【図３】図３のナビゲーションデバイスの構成要素を示す概略図である。
【図４】図２のナビゲーションデバイスと組み合わせて、車両でオプションとして使用するドッキング装置を示す概略図である。
【図５】図３のナビゲーションデバイスが採用するアーキテクチャスタックを示す概略図である。
【図６】図２の通信システムをより詳細に示す概略図である。
【図７】図３のナビゲーションデバイスが使用するデータ構造を示す概略図である。
【図８】ポピュレートされないテンプレートと関連付けられる一画面を示す図である。
【図９】図３のナビゲーションデバイスと外部デバイスとの対話を示すメッセージシーケンス図である。
【図１０】図８のメッセージのシーケンスに従ってナビゲーションデバイスが生成する表示の一画面を示す図である。
【図１１】本発明の別の実施形態を構成する「画面」への層割り当てを示す概略図である。
【図１２】図３のナビゲーションデバイスと多数の外部デバイスとの別の対話を示すメッセージシーケンス図である。
【図１３】図８、図１２及び図１４のメッセージシーケンスに従ってポピュレートされるような図１１の「画面」の層を示す概略図である。
【図１４】図１２のメッセージのシーケンスに従って、図３のナビゲーションデバイスと図１２の外部デバイスのうちの１つとの更なる対話を示すメッセージシーケンス図である。
【発明を実施するための形態】
【００５９】
次に、添付の図面を参照して、一例として本発明の少なくとも１つの実施形態を説明する。
【００６０】
以下の説明中、同一の図中符号は同様の部分を示すために使用される。
【００６１】
次に、特にＰＮＤを参照して、本発明の実施形態を説明する。しかし、本発明の教示はＰＮＤに限定されず、任意の種類の処理デバイス、例えば経路計画及びナビゲーション機能性を提供するように携帯型及び／又は移動型でナビゲーションソフトウェアを実行するように構成される任意の種類の処理デバイスに普遍的に適用可能である。従って、本明細書において、デバイスが、経路計画及びナビゲーションソフトウェアを実行するＰＮＤ、自動車等の車両、あるいは実際にポータブルパーソナルコンピュータ（ＰＣ）、移動電話又はパーソナルデジタルアシスタント（ＰＤＡ）として具体化されるかに関係なく、任意の種類の経路計画及びナビゲーションデバイスを（無制限に）含むことが意図されるナビゲーションデバイスを参照するということになる。
【００６２】
また、本明細書における教示は、ユーザがある地点から別の地点への走行方法に関する命令を求めておらず、所定の場所の表示のみ提供されることを要求する状況においてであっても有用性を有することが以下の説明から明らかになるだろう。そのような状況において、ユーザが選択する「目的地」の場所は、ユーザが走行を開始したい対応する出発地の場所を有する必要はない。従って、「目的地」の場所、即ち実際には「目的地」を本明細書において任意に参照することは、経路の生成が必須であり、「目的地」への移動が行なわれる必要があり又は実際に目的地の存在が対応する出発地の場所を指定することを要求するという意味で解釈されるべきではない。
【００６３】
上記条件を念頭において、図１の全地球測位システム（ＧＰＳ）等は、種々の目的で使用される。一般に、ＧＰＳは、連続した位置、速度、時間及びいくつかの例において無数のユーザに対する方向情報を判定できる衛星無線を使用するナビゲーションシステムである。以前はＮＡＶＳＴＡＲとして周知であったＧＰＳは、例示的に厳密な軌道で地球を周回する複数の衛星を組み込む。これらの厳密な軌道に基づいて、ＧＰＳ衛星は、場所を任意の数の受信ユニットに中継できる。
【００６４】
ＧＰＳシステムは、特にＧＰＳデータを受信するように装備されるデバイスがＧＰＳ衛星信号に対する無線周波数の走査を開始する場合に実現される。ＧＰＳ衛星から無線信号を受信すると、デバイスは、複数の異なる従来の方法のうちの１つを介してその衛星の厳密な場所を判定する。殆どの例において、デバイスは、少なくとも３つの異なる衛星信号を取得するまで信号に対する走査を継続する（尚、他の三角測量技術を使用して２つの信号のみで位置を判定することは一般的ではない）。幾何学的な三角測量を実現することにより、受信機は、３つの周知の位置を利用して、衛星に対する自身の２次元の位置を判定する。これは周知の方法で行なわれる。また、４つの衛星信号を取得することにより、受信デバイスは、周知の方法で同一の幾何学的な算出により３次元の位置を算出できる。位置データ及び速度データは、無数のユーザにより連続してリアルタイムでアップグレードされる。
【００６５】
図１に示すように、ＧＰＳシステム１００は、地球１０４を周回する複数の衛星１０２を含む。ＧＰＳ受信機１０６は、複数の衛星１０２のうちの多くから拡散スペクトルＧＰＳ衛星データ信号１０８を受信する。拡散スペクトルデータ信号１０８は各衛星１０２から継続して送信され、送信される拡散スペクトルデータ信号１０８の各々は、データストリームを発信する特定の衛星１０２を識別する情報を含むデータストリームを含む。ＧＰＳ受信機１０６は、一般に、２次元の位置を算出できるように、少なくとも３つの衛星１０２からの拡散スペクトルデータ信号１０８を必要とする。第４の拡散スペクトルデータ信号を受信することにより、ＧＰＳ受信機１０６は、周知の技術を使用して３次元の位置を算出できる。
【００６６】
図２を参照すると、ナビゲーションデバイス２００は、第１の外部デバイス１２２、第２の外部デバイス１２４及び第３の外部デバイス１２６と通信できる。この例において、第１の外部デバイス１２２はＦＭラジオ等の車載娯楽システムであり、第２の外部デバイス１２４は空調システム等の室温調節システムの調節ユニットであり、第３の外部デバイス１２６は外部周囲温度算出ユニット等の車両のハードウェア要素の回路基板である。第１の外部デバイス１２２は、第２の通信リンク１３０及び第３の通信リンク１３２の各々を介してナビゲーションデバイス２００に動作可能に結合される第１の無線通信リンク１２８、第２の外部デバイス１２４及び第３の外部デバイス１２６を介してナビゲーションデバイス２００に動作可能に結合される。通信リンク１２８、１３０、１３２は、それぞれＢｌｕｅｔｏｏｔｈリンクである。しかし、ナビゲーションデバイス２００と第１の外部デバイス１２２、第２の外部デバイス１２４及び第３の外部デバイス１２６との間に各有線接続を含む他の通信技術が採用されてもよい。
【００６７】
ナビゲーションデバイス２００と外部デバイス１２２、１２４、１２６との間の通信リンクは、任意の適切な通信技術に従って確立される。この点において、任意の数の適切なデータ通信プロトコル、例えばＴＣＰ／ＩＰ階層プロトコルが採用されてもよい。更に移動デバイスは、他の通信規格、例えばIEEE802.11a/b/c/g/n規格のうちのいずれか１つを利用する。実際には、通信リンク１２８、１３０、１３２は、特定の通信技術に限定されない。要求に応じて、デジタル信号及びアナログ信号の双方は、通信リンク１２８、１３０、１３２を介して送信される。これらの信号は、通信技術対して望ましいような変調信号、暗号化信号及び／又は圧縮信号であってもよい。また、第１の外部デバイス１２２、第２の外部デバイス１２４、第３の外部デバイス１２６に結合されるナビゲーションデバイス２００は、通信システム１３４を構成する。
【００６８】
図３を参照すると、図３に対するナビゲーションデバイス２００の以下の説明は、ナビゲーションデバイス２００の全ての構成要素を含まず、多数の構成要素の例を示すのみであることが留意されるべきである。ナビゲーションデバイス２００は、筐体（不図示）内に配置される。ナビゲーションデバイス２００は、例えば入力装置２０４及び表示画面２０６等の表示装置に結合される上述のプロセッサ２０２を含む処理リソースを含む。本明細書では単一の入力装置２０４を参照するが、当業者であれば、入力装置２０４が、情報入力に利用されるキーボードデバイス、音声入力装置、タッチパネル及び／又は任意の他の周知の入力装置を含む任意の数の入力装置を示すことを理解するだろう。同様に、表示画面２０６は、例えば液晶ディスプレイ（ＬＣＤ）等の任意の種類の表示画面を含んでもよい。
【００６９】
一構成において、入力装置２０４、タッチパネル及び表示画面２０６のうちの１つの面は、ユーザが表示画面２０６一部分をタッチするだけで複数の表示選択肢のうちの１つを選択するか、あるいは複数の仮想ボタン又は「ソフト」ボタンのうちの１つを起動するように、タッチパネルを介して情報入力（直接入力、メニュー選択等を介して）及び情報表示の双方を可能にするタッチパッド又はタッチスクリーン入力２５０（図４）を含む内蔵入力装置及び表示装置を提供するように組み込まれる。この点において、プロセッサ２０２は、タッチスクリーンと関連して動作するグラフィカルユーザインタフェース（ＧＵＩ）をサポートする。これについては、本明細書において後で説明する。
【００７０】
ナビゲーションデバイス２００において、プロセッサ２０２は、接続２１０を介して入力装置２０４に動作可能に結合され且つ入力装置２０４から入力情報を受信でき、出力接続２１２、２１３の各々を介して表示画面２０６のうちの少なくとも１つ及び出力装置２０８、例えばスピーカ等の可聴出力装置に動作可能に結合されて情報を出力する。出力装置２０８がナビゲーションデバイス２００のユーザに対して可聴情報を生成できるため、更に入力音声コマンドを受信するマイク及びソフトウェアを入力装置２０４が含むことを同様に理解する必要がある。更にナビゲーションデバイス２００は、任意の更なる入力装置及び／又は任意の更なる出力装置、例えばオーディオ入力／出力装置を含んでもよい。
【００７１】
プロセッサ２０２は、接続２１６を介してメモリ２１４に動作可能に接続され、接続２２０を介して入力／出力（Ｉ／Ｏ）ポート２１８から情報を受信し且つＩ／Ｏポート２１８に情報を送出するように更に構成される。Ｉ／Ｏポート２１８は、ナビゲーションデバイス２００の外側のＩ／Ｏ装置２２２に接続可能である。外部Ｉ／Ｏ装置２２２は、例えばイヤホン等の外部聞き取りデバイスを含むが、これに限定されない。この例において、Ｉ／Ｏ装置２２２は、音声起動動作、イヤホン又はヘッドホンへの接続、及び／あるいは移動電話への接続のために他の外部デバイスに有線又は無線接続されるが、Ｉ／Ｏ装置２２２への接続は、外部デバイス１２２、１２４、１２６のいずれかへの無線接続である。移動電話接続は、例えばナビゲーションデバイス２００とインターネット又は任意の他のネットワークとのデータ接続を確立するため、及び／あるいは例えばインターネット又は任意の他のネットワークを介してサーバへの接続を確立するために使用される。
【００７２】
図３は、接続２２６を介するプロセッサ２０２とアンテナ／受信機２２４との動作可能な接続を更に示す図である。アンテナ／受信機２２４は、例えばＧＰＳアンテナ／受信機であってもよい。図中符号２２４で示すアンテナ及び受信機は図示するために概略的に組み合わされるが、アンテナ及び受信機は別個に配置される構成要素であってもよく、アンテナは、例えばＧＰＳパッチアンテナ又はヘリカルアンテナであってもよいことが理解されるべきである。
【００７３】
当然、１つ以上の電源（不図示）が図３に示す電子構成要素に従来の方法で電力を供給することは、当業者には理解されるだろう。当業者には理解されるように、図３に示す構成要素の種々の構成が考えられる。例えば図３に示す構成要素は、有線及び／又は無線接続等を介して互いに通信してもよい。従って、本明細書で説明されるナビゲーションデバイス２００は、ポータブルナビゲーションデバイス２００又はハンドヘルドナビゲーションデバイス２００であってもよい。
【００７４】
更に、図３のポータブルナビゲーションデバイス２００又はハンドヘルドナビゲーションデバイス２００は、自転車、モータバイク、自動車又は船舶等の車両に周知の方法で接続されるか、あるいは「ドッキングされる」。そのようなナビゲーションデバイス２００は、ポータブルナビゲーション又はハンドヘルドナビゲーションに使用するためにドッキングされた場所から取り外し可能である。
【００７５】
図４を参照すると、ナビゲーションデバイス２００は、内蔵入力装置及び表示装置２０６、並びに図２の他の構成要素（内部ＧＰＳ受信機２２４、マイクロプロセッサ２０２、電源（不図示）、メモリシステム２１４等を含むがそれらに限定されない）を含むユニットである。
【００７６】
ナビゲーションデバイス２００は、吸着カップ２５４を使用して、車両のダッシュボード／窓／等に固定されるアーム２５２上に置かれる。このアーム２５２は、ナビゲーションデバイス２００がドッキングされるドッキングステーションの一例である。ナビゲーションデバイス２００は、例えばナビゲーションデバイス２００をアーム２５２にスナップ接続することにより、ドッキングステーションのアーム２５２にドッキングされるか又は接続される。ナビゲーションデバイス２００は、アーム２５２上で回転可能である。ナビゲーションデバイス２００とドッキングステーションとの接続を解除するために、例えばナビゲーションデバイス２００上のボタン（不図示）が押下されてもよい。ナビゲーションデバイス２００をドッキングステーションに結合し且つナビゲーションデバイス２００をドッキングステーションから分離する他の同様の適切な構成は、当業者には周知である。
【００７７】
図５を参照すると、プロセッサ２０２及びメモリ２１４は、ナビゲーションデバイス２００の機能ハードウェア構成要素２３０とデバイスが実行するソフトウェアとのインタフェースとして機能するＢＩＯＳ（基本入出力システム）２３２をサポートするように協働する。その後、プロセッサ２０２は、メモリ２１４からオペレーティングシステム２３４をロードし、アプリケーションソフトウェア２３６（上述の経路計画及びナビゲーション機能性の一部又は全てを実現する）が実行できる環境を提供する。アプリケーションソフトウェア２３６は、ナビゲーションデバイスの中核機能、例えば地図表示、経路計画、ナビゲーション機能及びそれに関連付けられる任意の他の機能をサポートする動作環境を提供する。
【００７８】
図６を参照すると、組み合わされる表示装置及び入力装置、タッチスクリーン２５０は、ナビゲーションデバイス２００のハードウェア２３０の部分として提供される。この例において、ハードウェア２３０はリモートコントロール２６０を更に含む。他の入力装置２６２、例えば音声認識入力ユニットが更に提供される。１つ以上の入力装置は、車両のステアリング機構、例えばハンドル又はステアリングコラム上に配設される。上述のように、オペレーティングシステム２３４は、ハードウェア２３０にサポートされ、ハードウェア２３０に対する多数のドライバ、例えばタッチスクリーン２５０の表示部分を駆動するビデオドライバ２６４、タッチスクリーン２５０のタッチセンサ入力部分を駆動するタッチスクリーンドライバ２６６、リモートコントロールドライバ２６８及び提供される任意の他の入力装置を駆動する任意の他の必要なドライバ２７０を提供する。
【００７９】
ビデオドライバ２６４は、上述のＧＵＩをサポートするオペレーティングシステム２３４のグラフィカルサブシステム２７２と通信できる。タッチスクリーンドライバ２６６、リモートコントロールドライバ２６８及び他のドライバ２７０は、ユーザからの入力ジェスチャに応答して入力装置２５０、２６０、２６２により生成される入力データの処理をサポートするオペレーティングシステム２３４の入力サブシステム２７４と通信できる。
【００８０】
上述のように、オペレーティングシステム２３４は、タッチスクリーン２５０の表示部分によりレンダリング及び出力される画像又は「画面」を有するように図面コマンドを通信するグラフィカルサブシステム２７２と通信できるナビゲーションアプリケーション等のメインアプリケーション２７６を含むアプリケーションソフトウェア２３６をサポートする実行環境を提供する。また、メインアプリケーション２７６は、ユーザ入力ジェスチャと関連付けられるイベントデータを受信する入力サブシステム２７４と通信できる。
【００８１】
アプリケーションソフトウェア２３６は、メモリ２１４に格納されるテンプレートデータのデータベース２８０にアクセスできるユーザインタフェースホスト２７８を更に含む。ユーザインタフェースホスト２７８は、画面アクセスネゴシエーションモジュール２８６と通信できるホスト処理論理２８４と通信できるテンプレート図面及びイベント処理モジュール２８２を含む。ユーザインタフェースホスト２７８は、画面アクセスネゴシエーションモジュール２８６を介してメインアプリケーション２７６と通信できる。ユーザインタフェースホスト２７８は、画面テンプレートに従って画面をレンダリングするために図面コマンドを通信するグラフィカルサブシステム２７２と通信できる。その詳細については、本明細書において後で説明する。更にユーザインタフェースホスト２７８は、ユーザ入力ジェスチャと関連付けられるイベントデータを受信するために入力サブシステム２７４と通信できる。
【００８２】
ユーザインタフェースホスト２７８は、ホスト処理論理２８４を介して、オペレーティングシステム２３４によりサポートされる第１の通信プロトコルスタック２８８と更に通信できる。この例において、第１の通信プロトコルスタック２８８は第１のＢｌｕｅｔｏｏｔｈプロトコルスタックであるが、別の通信技術が必要な場合に他のプロトコルスタックが採用されてもよいことは、当業者には理解されるだろう。実際に、必要な他の通信技術をサポートするため、第１のＢｌｕｅｔｏｏｔｈプロトコルスタックに加え他のプロトコルスタックが提供されてもよい。また、Ｂｌｕｅｔｏｏｔｈスタックをサポートするトランシーバ（不図示）は、十分な能力で適切に提供され、データ通信のため所定数の外部クライアント１２２、１２４、１２６をサポートするように構成される。
【００８３】
この例において、第１の通信リンク１２８は、第１の外部デバイス１２２と通信するために示される。しかし、この例において、Ｂｌｕｅｔｏｏｔｈプロトコルスタック２８８及び関連するハードウェアがそれぞれ第２の通信リンク１３０及び第３の通信リンク１３２を介して第２の外部デバイス１２４及び第３の外部デバイス１２６との通信をサポートできることは、当業者には理解されるだろう。
【００８４】
第１の外部デバイス１２２を参照すると、第１の外部デバイス１２２はクライアントアプリケーションソフトウェア２９０をサポートする。この点において、クライアントアプリケーションソフトウェア２９０は、第１の外部デバイス１２２の動作目的、例えばＦＭチューナ（不図示）の制御専用のクライアントアプリケーション論理２９２を含む。クライアントアプリケーション論理２９２は、第２の通信プロトコルスタック２９６、例えば第２のＢｌｕｅｔｏｏｔｈプロトコルスタックと通信できるユーザインタフェースクライアント論理２９４と通信できる。ナビゲーションデバイス２００は、無線周波数（ＲＦ）媒体を介し、第１のＢｌｕｅｔｏｏｔｈスタック２８８及び第２のＢｌｕｅｔｏｏｔｈスタック２９６を使用して第１の外部デバイス１２２と通信でき、それにより第１の通信リンク１２８をサポートする。従って、この例において、パーソナルエリアネットワーク（ＰＡＮ）は、ナビゲーションデバイス２００と第１の外部デバイス１２２との通信のためにサポートされる。
【００８５】
上述のように、メモリ２１４によりサポートされるデータベース２８０は、テンプレートデータ、特に多数のユーザインタフェース画面テンプレートを含む。この例において、ユーザインタフェース画面テンプレートは、以下のように構造化される。図７を参照すると、ユーザインタフェーステンプレート、例えば画面テンプレート定義１４０は、ナビゲーションデバイス２００のＧＵＩにより提示される１つ以上の「画面」が外部デバイス１２２と使用するのに適することを保証するため、ナビゲーションデバイス２００の設計段階中に及び必要に応じて第１の外部デバイス１２２及び／又はクライアントアプリケーション論理２９２の製造業者に関連して判定される。
【００８６】
画面テンプレート定義１４０は、少なくとも１つの制御テンプレート定義１４２と少なくとも１つのレイアウトテンプレート定義１４４とのセットを示す。画面が２つ以上の外部アプリケーションをサポートする可能性がある場合、いわゆるデバイスの「最大モード」状態及びデバイスの「最小モード」状態をサポートする画面テンプレート定義が提供される。しかし、ナビゲーションデバイス２００と協働する単一のデバイスの場合、画面テンプレート定義１４０は、例えば以下のCode Fragment Ｉに示すようなＸＭＬコードを含む。
＜?xml version="1.0" ?＞
＜!? The screen DTD --＞
＜!DOCTYPE screen SYSTEM "T_template.dtd" ＞
＜!-- The screen content --＞
＜screen＞
＜template source="template1_interface.xml" type="full" /＞
＜layout source"template1_layout.xml" alt="0" /＞
＜/screen＞
コードフラグメントＩ
この例において、画面テンプレート定義は、制御テンプレート定義及びレイアウトテンプレート定義を示す。制御テンプレート定義１４２は、ボタン、ラベル、画像、進捗バー、スライダ、チェックボックス、入力フィールド、無線ボタン、リスト制御及び任意の他の適切な制御タイプ又は多要素制御タイプを含む一組の制御タイプから構成される。当然、列挙される制御は、ユーザインタフェース要素、例えばＧＵＩウィジェット等のユーザインタフェースウィジェットの例である。各制御タイプは、プロパティとそれに関連付けられるイベントとのセットをそれぞれ有する。この例において、２種類のプロパティ、「公開」プロパティ及び「保護」プロパティが存在する。公開プロパティが外部アプリケーション又はクライアントアプリケーションにより実行時に変更される一方、保護プロパティは画面テンプレート定義に関連するレイアウト定義により定義される。従って、保護プロパティは、大部分レイアウトに関連し、外部アプリケーション又はクライアントアプリケーションにより変更されない。この例においては説明しないが、親テンプレート定義及び子テンプレート定義が使用される。子テンプレート定義は、親定義から制御を継承でき、例えば子画面テンプレート定義に対するレイアウトテンプレート定義は、充填幾何学領域の詳細を含まず、レイアウトの詳細については親画面テンプレートから既に周知である。以下のコードフラグメントＩＩは、制御テンプレート定義１４２を構成するＸＭＬコードの一例を提供する。
＜?xml version="1.0" ?＞
＜!DOCTYPE template SYSTEM "T_interface.dtd" ＞
＜template id="1" ＞
＜!-- LABELS --＞
＜element class="label" id="1" /＞
＜element class="label" id="2" /＞
＜element class="label" id="3" /＞
＜!-- BUTTONS --＞
＜element class="button" id="11" /＞
＜element class="button" id="12" /＞
＜element class="button" id="13" /＞
＜/template＞
コードフラグメントＩＩ
レイアウトテンプレート定義１４４は、例えば制御テンプレート定義１４２で定義される各制御の色、位置及び大きさを特定するために使用される。各制御テンプレート定義は、複数のレイアウト、例えば異なる画面の向きに対応するように、横向き及び縦向き等、２つの異なるレイアウトを有する。以下のコードフラグメントＩＩＩは、１つのレイアウト定義を構成するＸＭＬコードの一例である。
＜?xml version="1.0" encoding="UTF-8" ?＞
＜!DOCTYPE layout SYSTEM "T_layout.dtd" ＞
＜!-- The layout definition --＞
＜layout＞
＜!-- Control ID 1 (label 1) --＞
＜control id="1" client="0" template_id="1"＞
＜property name="top" value="2" /＞
＜property name="left" value="2" /＞
＜property name="width" value="320" /＞
＜property name="height" value="20" /＞
＜property name="level" value="100" /＞
＜property name="text_class" value="ARIAL9FONT" /＞
＜property name="text_halign" value="0" /＞
＜property name="text_color" value="FFFFFF" /＞
＜/control＞
＜!-- Control ID 2 (label 2) --＞
＜control id="2" client="0" template_id="1"＞
＜property name="top" value="2" /＞
＜property name="left" value="30" /＞
＜property name="width" value="290" /＞
＜property name="height" value="30" /＞
＜property name="level" value="100" /＞
＜property name="text_class" value="ARIAL28FONT" /＞
＜property name="text_halign" value="0" /＞
＜property name="text_color" value="000000" /＞
＜/control＞
＜!-- Control ID 3 (label 3) --＞
＜control id="3" client="0" template_id="1"＞
＜property name="top" value="70" /＞
＜property name="left" value="30" /＞
＜property name="width" value="290" /＞
＜property name="height" value="30" /＞
＜property name="level" value="100" /＞
＜property name="text_class" value="ARIAL18FONT" /＞
＜property name="text_halign" value="0" /＞
＜property name="text_color" value="FFFFFF" /＞
＜/control＞
＜!-- Control ID 11 (button 1) --＞
＜control id="11" client="0" template_id="1"＞
＜property name="top" value="210" /＞
＜property name="left" value="10" /＞
＜property name="width" value="65" /＞
＜property name="height" value="20" /＞
＜property name="level" value="100" /＞
＜property name="text_class" value="ARIAL10FONT" /＞
＜property name="text_halign" value="1" /＞
＜property name="text_color" value="336699" /＞
＜property name="corner_radius" value="0" /＞
＜/control＞
＜!-- Control ID 12 (button 2) --＞
＜control id="12" client="0" template_id="1"＞
＜property name="top" value="47" /＞
＜property name="left" value="85" /＞
＜property name="width" value="65" /＞
＜property name="height" value="20" /＞
＜property name="level" value="100" /＞
＜property name="text_class" value="ARIAL10FONT" /＞
＜property name="text_halign" value="1" /＞
＜property name="text_color" value="336699" /＞
＜property name="corner_radius" value="0" /＞
＜/control＞
＜!-- Control ID 13 (button 3) --＞
＜control id="14" client="0" template_id="1"＞
＜property name="top" value="131" /＞
＜property name="left" value="235" /＞
＜property name="width" value="65" /＞
＜property name="height" value="20" /＞
＜property name="level" value="100" /＞
＜property name="text_class" value="ARIAL10FONT" /＞
＜property name="text_halign" value="1" /＞
＜property name="text_color" value="336699" /＞
＜property name="corner_radius" value="0" /＞
＜/control＞
＜/layout＞
コードフラグメントＩＩＩ
１つ以上の画面テンプレート定義を提供し及び／又はそれを第１の外部デバイス１２２の製造業者と整合させることにより、第１の外部デバイス１２２の機能性の知識がナビゲーションデバイス２００の開発及び／又はアップグレードに必要とされないように、ナビゲーションデバイス２００のユーザインタフェース機能性を第１の外部デバイス１２２のデバイス制御機能性から効果的に分離できる。同一の原理は、第２の外部デバイス１２４及び第３の外部デバイス１２６に対しても当てはまる。
【００８７】
上記ＸＭＬサンプルコードは、画面出力構造３００（図８）又は第１の領域３０２、第２の領域３０４及び第３の領域３０６を含むテンプレートに関連する。第１の領域３０２は第１のラベル３０８に対応でき、第２の領域３０４は、第２のラベル３１０及びこの例において美的分割線３１４により区切られる第３のラベル３１２に対応できる。第３の領域３０６は、この例において、３つの「ソフトボタン」、即ち第１のソフトボタン３１８及び第２のソフトボタン３２０を含む一対のソフトボタン３１６、並びに第３のソフトボタン３２２に対応できる。
【００８８】
動作中、第１の外部デバイス１２２は、ナビゲーションデバイス２００のＧＵＩを使用することにより、ナビゲーションデバイス２００のユーザが第１の外部デバイス１２２を制御できるように、ナビゲーションデバイス２００と対話する。説明を簡潔且つ容易にするため、第２の外部デバイス１２４又は第３の外部デバイス１２６のナビゲーションデバイス２００との相互動作は、同様の動作原理が当てはまるので最初に説明しない。しかし、ユーザインタフェースホスト２７８及び／又はユーザインタフェースクライアント論理２９４により提供される他の有用な機能を例示するため、３つの外部デバイスのうちの２つとナビゲーションデバイス２００との相互動作については、本明細書において後で説明する。
【００８９】
図９を参照すると、ホスト処理論理２８４により容易にされるユーザインタフェースホスト２７８とユーザインタフェースクライアント論理２９４との間のＢｌｕｅｔｏｏｔｈ通信プロトコル及び通信セッションに従って第１の外部デバイス１２２とナビゲーションデバイス２００との間の第１の通信リンク１２８を確立した後、ユーザインタフェースクライアント論理２９４は、ユーザインタフェースホスト２７８により格納される多数の画面テンプレートの中から、上述の図８のテンプレートに対応するように第１の外部デバイス１２２の設計段階中に選択された所定の画面テンプレートを選択するようにSetTemplateメッセージ３３０を送出する。従って、SetPropertyメッセージは、関連するウィジェットテンプレート定義において示される１つ以上のウィジェットを限定するように機能することが分かる。制御／ウィジェットの公開プロパティが設定されない場合、制御／ウィジェットは非アクティブのままであり且つ表示されず、依然としてユーザに対して検出不可である。その結果、外部デバイスが画面テンプレートの一部分のみを使用することにより、既存のテンプレートの部分が使用されるためにいくつかの状況において専用テンプレートの必要性を除去する。
【００９０】
その後、ユーザインタフェースクライアント論理２９４は、第１のラベル３０８が「Tuner」３４０という語を示すように構成するために第１のSetPropertyメッセージ３３２を送出する。次に、ユーザインタフェースクライアント論理２９４は、一対のソフトボタン３１６が、それぞれ、「Scan -」３４２及び「Scan +」３４４を示すように構成するために第２のSetPropertyメッセージ３３４を送出する。後続のSetPropertyメッセージ３３６も、第２のラベル３１０、第３のラベル３１２及び第３のソフトボタン３２２が、それぞれ、「101.6 FM」３４６、「Sky Radio」３４８及び「Volume」３５０を示すように構成するために送出される。
【００９１】
その後、ユーザインタフェースクライアント論理２９４は、UpdateScreenメッセージ３３８を送出する。UpdateScreenメッセージ３３８に応答して、テンプレート図面及びイベント処理モジュール２８２は、ホスト処理論理２８４が受信する構成データを使用し、図１０に示すのと同様の方法でタッチスクリーン２５０の表示部分でレンダリングするため、即ち提示するためにナビゲーションデバイス２００のグラフィカルサブシステム２７２に通信される図面コマンドを生成する。
【００９２】
ラベル及びソフトボタンをレンダリング又はインスタンス化することにより、上述のようにＦＭチューナである第１の外部デバイス１２２を制御する機会をユーザに提示する。その結果、提供されるユーザインタフェースにより、ユーザは、１つ以上のジェスチャを提供してＦＭチューナを制御できる。ジェスチャは、タッチスクリーン２５０のタッチセンサ入力部分、例えば又はリモートコントロール（不図示）を使用して提供される。従って、入力サブシステム２７４は、例えばタッチスクリーンのタッチセンサ入力部分からのイベントデータを待つ。
【００９３】
例えばユーザが「Scan +」（第２の）ボタン３２０、３４４をタッチする場合、入力サブシステム２７４は、タッチスクリーンドライバ２６６からタッチイベントデータを受信する。これは、ホスト処理論理２８４が受信するタッチイベントとしてその後入力サブシステム２７４により処理及び通信され、例えばボタンが押下されたというイベントの特性を詳述するRaiseEventメッセージ３３９として第１の通信リンク１２８を介してユーザインタフェースクライアント論理２９４に通信される。RaiseEventメッセージ３３９を受信すると、ユーザインタフェースクライアント論理２９４は、例えば関連するようにボタンが事前に特定されている機能を識別するRaiseEventメッセージを解釈し、順方向にＦＭチューナを走査するように第１の外部デバイス１２２のハードウェアを操作するクライアントアプリケーション論理２９２に内部制御メッセージを伝達する。
【００９４】
当然、ユーザインタフェースクライアント論理２９４からの他の応答は、例えばユーザが「volume」３５０（第３の）ボタン３２２を選択するのに応答して提供される。そのような一実施例において、ユーザインタフェースクライアント論理２９４は、別のユーザインタフェース画面テンプレート、例えばユーザが所望する音量変化を通信するイベントデータを提供できるスライダ（不図示）を含むユーザインタフェース画面テンプレートに従って新しい画面を提示するようユーザインタフェースホスト２７８に要求するために、図９に対して上述のテンプレート選択及び応答処理を繰り返す。
【００９５】
明らかなように、この例において、ナビゲーションデバイス２００の少なくともユーザインタフェースの一部の使用に対する要求は、一般に、ナビゲーションデバイス２００のユーザインタフェースホスト２７８により処理され、第１の外部デバイス１２２のユーザインタフェースクライアント論理２９４がナビゲーションデバイス２００のＧＵＩにより提示されるコンテンツの制御率に影響を及ぼせるようにメッセージを伝達する。この点において、外部デバイスにより制御テンプレートの各制御に割り当てられる情報コンテンツの重要性は、選択されるか又はユーザとタッチスクリーン２５０との対話を介してコマンドが発行される場合、ユーザインタフェースホスト２７８及び／又はメインアプリケーション２７６、あるいは実際にナビゲーションデバイス２００の任意の部分により認識されないか又は使用されない。ＧＵＩの外部のアプリケーションに提供されるフィードバックの重要性は、同様に、ＧＵＩと全く関連しないか又はＧＵＩには役に立たない。ＧＵＩへのリモートアクセスは、第１の外部デバイス１２２（及びそのようなリモートアクセスに適当な任意の他のもの）に容易に提供され、外部デバイスを制御するデータを有さないＧＵＩ関連情報は、ナビゲーションデバイス２００のユーザインタフェースと外部デバイスとの間で容易に伝達され、ＧＵＩ関連データはＧＵＩイベントデータを含む。従って、ユーザによる応答は、ナビゲーションデバイス２００からの任意の制御メッセージ又は命令を発行することなく、ユーザインタフェースホスト２７８によりユーザインタフェースクライアント論理２９４に通信され、情報は、ＧＵＩと外部アプリケーションとの間でのみ中継される。
【００９６】
図１１を参照すると、別の実施形態において、第２の外部デバイス１２４は、第１の外部デバイス１２２に加えてナビゲーションデバイス２００と通信し、ナビゲーションデバイス２００のＧＵＩを使用する機会を競っている。従って、上述のように、画面テンプレート定義１４０は、各々が異なる外部デバイスに割り当てられる画面の個別「スライス」を構成する多数の制御テンプレート定義１４２を含む。この点において、動作モード状態、即ち前の実施形態に関連して既に上述された最大モード状態及び最小モード状態は、各スライスと関連付けられる。最大モード状態は、メインアプリケーション２７６、第１の外部デバイス１２２又は第２の外部デバイス１２４のうちの１つに優先的に割り当てられる。その詳細については、本明細書において後で説明する。しかし、メインアプリケーション２７６が、第１の外部デバイス１２２及び第２の外部デバイス１２４よりもユーザインタフェースホスト２７８を優先すると仮定すると、メインアプリケーション２７６は最大モード状態に割り当てられる。従って、メインアプリケーション２７６は、ナビゲーションデバイス２００のＧＵＩが使用するテンプレート画面を選択することが許可される。第１のスライス３６０は、メインアプリケーション２７６が使用するように確保された第１の制御テンプレート定義を有する。これに対して、ユーザインタフェースホスト２７８は、スライス及び画面テンプレート定義１４０の関連制御テンプレート定義を第１の外部デバイス１２２及び第２の外部デバイス１２４に割り当てる。従って、ユーザインタフェースホスト２７８は、第２のスライス３６２及び第２の制御テンプレート定義を第２の外部デバイス１２４に割り当て、且つ第３のスライス３６４及び第３の制御テンプレート定義を第１の外部デバイス１２２に割り当てる。
【００９７】
上記方法を実現するため、メインアプリケーション２７６は、画面アクセスネゴシエーションモジュール２８６及び内部通信リンクを介してホスト処理論理２８４と通信し（図１２）、SetTemplateメッセージ２８０を送出して画面テンプレート定義１４０を選択し、第１の制御テンプレート定義及び第１のスライス３６０がナビゲーション機能に対してユーザとインタフェースするために使用されることを認識するように事前設定される。画面テンプレート定義１４０がメインアプリケーション２７６により選択されると、テンプレート図面及びイベント処理モジュール２８２は、画面テンプレート定義１４０及び関連する第１の制御テンプレート、並びにデータベース２８０からのレイアウト定義を検索する２８２。その後、ホスト処理論理２８４は、第３のスライス３６４及び第３の制御テンプレート定義を第１の外部デバイス１２２に割り当てるために、第１のSetHostTemplateメッセージ２８４を第１の外部デバイス１２２のユーザインタフェースクライアント論理２９４に送出する。同様に、ホスト処理論理２８４は、第２のスライス３６２及び第２の制御テンプレート定義を第２の外部デバイス１２４に割り当てるために、第２のSetHostTemplateメッセージ２８６をユーザインタフェースクライアント論理（不図示）に送出する。
【００９８】
この例において、第１のスライス３６０に対する第１の制御テンプレート定義は、第１のスライスラベル３６６、第１のスライスソフトボタン３６８及び第２のスライスソフトボタン３７０を定義する。また、スライス美的分割線３７２が定義される。第２のスライス３６２に対する第２の制御テンプレート定義は、第３のスライスソフトボタン３７４を定義する。第３のスライス３６４に対する第３の制御テンプレート定義は、第４のスライスソフトボタン３７６を定義する。ナビゲーションデバイス２００のＧＵＩにより統合される場合、統合スライス画面３７８はユーザに提示される。当然、上述のように、各制御テンプレート定義は関連するレイアウト定義を有する。
【００９９】
第１のスライス３６０、第２のスライス３６２及び第３のスライス３６４は、それぞれ、以下の通りメインアプリケーション２７６、第１の外部デバイス１２２及び第２の外部デバイス１２４により規定される。この例において、メインアプリケーション２７６は、それぞれ、第１のスライスラベル３６６を「アドレスを保存しますか？」ラベル２９０（図１３）、第１のスライスソフトボタン３６８を「はい、保存します」ソフトボタン２９２及び第２のスライスソフトボタン３７０を「いいえ」ソフトボタン２９４としてレンダリング又はインスタンス化するために、グラフィカルサブシステム２７２と直接通信する。
【０１００】
第１の外部デバイス１２２及び第２の外部デバイス１２４、第３のスライス３６４及び第２のスライス３６２の以下の割り当て、並びに関連する制御テンプレート定義のそれぞれに対して、第１のSetHostTemplateメッセージ２８４及び第２のSetHostTemplateメッセージ２８６を使用して、ユーザインタフェースクライアント論理２９４の各々は、それぞれ、第３のスライスソフトボタン３７４を第２の外部デバイス１２４の空調機能と関連付けられる「空調ＯＮ」ソフトボタン２９６、第４のスライスソフトボタン３７６をＦＭチューナと関連付けられる「106.1 FM」ソフトボタン２９８として規定するために、１つ以上のSetPropertyメッセージ４００（図１４）を送出することによりユーザインタフェースホスト２７８のホスト処理論理２８４と通信する。第１の外部デバイス１２２及び第２の外部デバイス１２４の各々が全ての必要な制御を規定した後、第２の外部デバイス１２２及び第３の外部デバイス１２４は、それぞれ、各UpdateScreenメッセージ４０２をホスト処理論理２８４に送出する。UpdateScreenメッセージ４０２の各々に応答して、テンプレート図面及びイベント処理モジュール２８２は、タッチスクリーン２５０の部分を統合スライス画面３７８としてレンダリングする、即ち提示するようにナビゲーションデバイス２００のグラフィカルサブシステム２７２に通信される図面コマンドを生成するために、ホスト処理処理２８４が受信する構成データを使用する。
【０１０１】
図９に対して上述されるのと同様に、第１のスライスソフトボタン３６８、２９２又は第２のスライスソフトボタン３７０、２９４を選択する結果、必要に応じてその機能応答のために、入力サブシステム２７４によりナビゲーションアプリケーション２７６に直接通信されるイベントデータを生成する。これに対して、ユーザが第３のスライスソフトボタン３７４、２９６を選択する結果、第２の外部デバイス１２４の空調機能性に関して解釈及び場合によっては応答するために、第２の外部デバイス１２４のユーザインタフェースクライアント論理（不図示）に送出されるホスト処理論理２８４によりイベントデータ及び別のRaiseEventメッセージ４０４を生成する。同様に、ユーザが第４のスライスソフトボタン３７６、２９８を選択する結果、第１の外部デバイス１２２のＦＭチューナの機能性に関して解釈及び場合によっては応答するために、第１の外部デバイス１２２のユーザインタフェースクライアント論理２９４に送出されるホスト処理論理２８４によりイベントデータ及び更なるRaiseEventメッセージ４０４を生成する。
【０１０２】
ナビゲーションデバイス２００のＧＵＩにより生成される統合スライス画面３７８に対するユーザの選択に依存して、メインアプリケーション２７６は最大モード状態を保持するか、あるいは最大モード状態は第１の外部デバイス１２２又は第２の外部デバイス１２４に伝達される。第１の外部デバイス１２２又は第２の外部デバイス１２４の状態が最小モード状態から最大モード状態にアップグレードされる場合、メインアプリケーション２７６は最小モード状態にダウングレードされる。最大モード状態が第１の外部デバイス１２２又は第２の外部デバイス１２４のうちのいずれか一方に伝達される場合、アップグレードされた状態の外部デバイスは、必要に応じて別の画面テンプレートを選択でき、上記割り当て及びテンプレートの規定は、主にアップグレードされた状態の外部デバイスに集中して繰り返される。
【０１０３】
最大モード状態を要求するため、第１の外部デバイス１２２又は第２の外部デバイス１２４のうちのいずれか一方、例えば第１の外部デバイス１２２は、０から１２７の間の値等、優先度の表示を含むRequstFullModeメッセージを送出する。その後、ホスト処理論理２８４は、各要求から受信される優先レベル値に依存して最大モード状態に対する要求を調停できる。実際にこの技術は、上述の例において、メインアプリケーション２７６の最大モード状態を最初に設定するように採用される。
【０１０４】
現在最大モード状態を享受しているアプリケーションと関連付けられるよりも高い優先度値のホスト処理論理２８４が最大モード状態に対する要求を受信する場合、ホスト処理論理２８４は、LostFullModeメッセージを使用して、現在最大モード状態を享受しているアプリケーションに最大モード状態の損失を通信する。また、FullModeGrantメッセージは、最大モード状態を要求するより優先度の高いアプリケーションに送出される。当然、最大モード状態に対する要求が不十分な優先度である場合、ホスト処理論理２８４が最大モード状態を要求する外部アプリケーションにFullModeRefuseメッセージを送出する結果、要求する外部アプリケーションは少なくとも一時的に最大モード状態を拒絶される。しかし、ホスト処理論理２８４は、要求を伴う優先度の表示と共に外部アプリケーションによる要求を記録する。しかし、ホスト処理論理２８４は、その後、現在最大モード状態を享受しているアプリケーションが、例えば優先レベルがより低いRequestFullModeメッセージをホスト処理論理２８４に送出することでそれに関連付けられる優先レベルを下回る場合又はReleaseFullModeメッセージをホスト処理論理２８４に送出することで最大モード状態を放棄する場合に要求を行なった外部アプリケーションに最大モード状態を割り当てることにより、アプリケーションと関連付けられる優先レベルをゼロに設定する。
【０１０５】
別の実施例において、アプリケーションが最大モード状態を要求しない場合、最大モード状態を享受するアプリケーションは、ReleaseFullModeメッセージをホスト処理論理２８４に送出して、最大モード状態を放棄し、関連する優先レベルを減少する。そのような状況において、ホスト処理論理２８４は、AssignFullModeメッセージをそれに関連付けられる次の最優先値を有する別のアプリケーションに送出する。最大モード状態を別のアプリケーションに割り当てた結果、上述の割り当てが得られ、テンプレートの特定が繰り返される。
【０１０６】
別の実施形態において、メッセージ交換の高速度化を容易にするためにバーストモードが提供される。バーストモードにおいて、複数のメッセージ又はコマンドは、往復遅延時間を減少させるために単一メッセージ構造に合成される。各メッセージが承認される必要があり且つメッセージを送出するエンティティが応答を待つ必要がある非バーストモードに対して、単一の応答、例えば承認はバーストモードメッセージに応答して送出される。この例において、バーストモードメッセージは単一方向であり、アプリケーションからホスト処理論理２８４に送出される。
【０１０７】
従って、上記実施例は、パーソナルエリアネットワークがナビゲーションデバイス２００のＧＵＩに対するリモートアクセス及び／又は操作を提供するために使用されることを示す。
【０１０８】
上述されなかったが、当業者であれば、特に２つの更なるコマンド、即ちResetProperties及びResetIndexedPropertiesが存在することを理解するだろう。ResetPropertiesコマンドは、制御テンプレート定義により規定される制御の公開プロパティをデフォルト値にリセットさせる。その後設定されない場合、リセット制御は非アクティブであり、この例においてユーザに検出されない。ResetIndexedPropertiesコマンドは、合成制御の要素、例えばリスト制御を除いて同様のリセット機能を提供する。
【０１０９】
本発明の種々の態様及び実施形態についてこれまで説明したが、本発明の範囲は本明細書において示される特定の構成に限定されず、添付の請求の範囲の範囲内の全ての構成、並びに変更及び変化を含むように拡張することが更に理解されるだろう。
【０１１０】
例えば、上記実施形態はＧＵＩに関して説明されたが、上記技術が他のユーザインタフェース、例えば音声入力ユーザインタフェース及び／又はオーディオ出力ユーザインタフェースに関連して使用されてもよいことは、当業者には理解されるだろう。
【０１１１】
更に又はあるいは、車両から取り外し可能であり且つ個人が物理的に携行できるという意味で携帯可能であるＰＮＤに関して上述の例を説明したが、上述のＰＮＤが車両から取り外し可能である必要はなく、車両に内蔵されてもよいこと、即ちＰＮＤが例えば車両内の固定位置に固定されてもよいことが当業者には理解されるだろう。実際に、上記例は単に例示するものとして考慮されるべきであり、上述の技術は他のアプリケーションに対しても実現可能である。
【０１１２】
例えば上述の技術は、ナビゲーションの分野に対して適用される必要ななく、他の試みの分野に関連して使用されてもよい。一例として、他の（１つ以上の）外部デバイスと共有されるユーザインタフェースを有する主デバイスを具備する１つの別のアプリケーションは、建物内の他の場所に配置されるデバイスから遠く離れて配置される各ユーザインタフェースを有する主デバイスを具備する建物内システム、即ち例えば主デバイスの外部にある建物環境制御システムである。
【０１１３】
更に、上述の実施形態のいずれかに対して、外部デバイスと１つ以上の主デバイスとの任意の所望の順列関係に従って各々が多数の外部デバイスにより共有されるユーザインタフェースを所有する２つ以上の主デバイスが提供されると考えられる。要求に応じて、外部デバイスは、例えば第１の場所で第１の主デバイスを介して第１の出力の種類及び第２の場所で第２の主デバイスを介して第２の出力の種類を提供する必要がある場合、所定の方式に従って第１の主デバイスのユーザインタフェース及び第２の主デバイスのユーザインタフェースを共有できる。
【０１１４】
尚、上記詳細な説明において説明された実施形態はＧＰＳを参照したが、ナビゲーションデバイスがＧＰＳの代わりとして（又は実際にはＧＰＳに加えて）任意の種類の位置検出技術を利用してもよい。例えばナビゲーションデバイスは、欧州のガリレオシステム等の他のグローバルナビゲーション衛星システムを使用して利用してもよい。同様に、衛星を使用するものに限定されず、デバイスに地理的場所を判定させる地上に基づくビーコン又は任意の他の種類のシステムを使用して容易に機能できる。
【０１１５】
本発明の別の実施形態は、例えばディスケット、ＣＤ ＲＯＭ、ＲＯＭ又は固定ディスク等の有形データ記録媒体上に格納される一連のコンピュータ命令であり、コンピュータシステムと共に使用するコンピュータプログラム製品として実現されるか、あるいは有形媒体又は無線媒体、例えばマイクロ波又は赤外線を介して送信されるコンピュータデータ信号において具体化される。一連のコンピュータ命令は、上述の機能性の全て又は一部を構成し、半導体メモリ素子、磁気メモリ素子、光学メモリ素子又は他のメモリ素子等、揮発性又は不揮発性の任意のメモリ素子に格納される。
【０１１６】
当業者であれば、好適な実施形態はソフトウェアを使用してある特定の機能性を実現するが、その機能性は、（例えば、１つ以上のＡＳＩＣ（特定用途向け集積回路）を使用することにより）ハードウェアにおいてのみ又は実際にはハードウェアとソフトウェアとの混合により同様に実現されることも十分に理解するだろう。従って、本発明の範囲は、ソフトウェアにおいてのみ実現されるものとして限定して解釈されるべきではない。
【０１１７】
最後に、添付の請求の範囲は本明細書において説明される特徴の特定の組合せを示すが、本発明の範囲は以下の請求の範囲の特定の組合せに限定されず、特定の組合せが今回添付される請求の範囲に特に列挙されているか否かに関係なく、本明細書において開示される特徴又は実施形態の任意の組合せを含むように拡張されることが更に留意されるべきである。
【図１】
0005421917.tif 000002
【図２】
0005421917.tif 000003
【図３】
0005421917.tif 000004
【図４】
0005421917.tif 000005
【図５】
0005421917.tif 000006
【図６】
0005421917.tif 000007
【図７】
0005421917.tif 000008
【図８】
0005421917.tif 000009
【図９】
0005421917.tif 000010
【図１０】
0005421917.tif 000011
【図１１】
0005421917.tif 000012
【図１２】
0005421917.tif 000013
【図１３】
0005421917.tif 000014
【図１４】
0005421917.tif 000015