(57)【要約】【課題】この発明は、見た目上フォーカスを持ちうる要素と実際にフォーカスを持ちうる要素の領域が一致していない場合でも、ユーザの意図通りにフォーカスを移動させることができるようになる表示制御装置を提供することを目的とする。【解決手段】マークアップ言語で記述されたコンテンツのフォーカス表示をポインティングデバイスを用いて制御する表示制御装置において、コンテンツを表示させる前に、コンテンツ内の各要素毎に要素関連付け処理を行う手段を備えており、要素関連付け処理を行う手段は、処理対象要素である第１要素がフォーカス取得可能要素であり、かつ第１要素がフォーカスを取得した際に表示内容が変更される他の第２要素が存在することという関連付け要件を満たしているか否かを判別する手段、および関連付け要件を満たしているときには、上記第１要素を上記第２要素に関連付ける手段を備えている。【選択図】図５
2009223655.tif 000002
【特許請求の範囲】
【請求項１】
マークアップ言語で記述されたコンテンツのフォーカス表示をポインティングデバイスを用いて制御する表示制御装置において、
コンテンツを表示させる前に、コンテンツ内の各要素毎に要素関連付け処理を行う手段を備えており、要素関連付け処理を行う手段は、処理対象要素である第１要素がフォーカス取得可能要素であり、かつ第１要素がフォーカスを取得した際に表示内容が変更される他の第２要素が存在することという関連付け要件を満たしているか否かを判別する手段、および関連付け要件を満たしているときには、上記第１要素を上記第２要素に関連付ける手段を備えていることを特徴とする表示制御装置。  
【請求項２】
コンテンツが表示されている場合において、ある第１要素が関連付けられている第２要素の領域内にポインティングデバイスのポインタが移動した際に、当該第１要素にフォーカスを取得させる手段を備えていることを特徴とする請求項１に記載の表示制御装置。
【請求項３】
コンテンツが表示されている場合において、ある第１要素が関連付けられている第２要素の領域内においてポインティングデバイスがクリックされた際に、当該第１要素に対して決定キーによるキーダウンイベントを発行させる手段を備えていることを特徴とする請求項１乃至２に記載の表示制御装置。
【請求項４】
フォーカス取得可能要素とは、フォーカスを取得した際にスクリプトが実行される要素であり、第１要素がフォーカスを取得した際に表示内容が変更される他の第２要素とは、第１要素がフォーカスを取得したことによってスクリプトが実行されることにより、属性値またはＣＳＳ特性値が変更される要素であることを特徴とする請求項１乃至３に記載の表示制御装置。
【請求項５】
フォーカス取得可能要素とは、bml:onfocus 属性を有する要素であり、第１要素がフォーカスを取得した際に表示内容が変更される他の第２要素とは、第１要素のbml:onfocus 属性で指定されているスクリプトが実行されることにより、属性値またはＣＳＳ特性値が変更される要素であることを特徴とする請求項４に記載の表示制御装置。
【請求項６】
属性値が変更されるとは、object要素のdata属性またはimg 要素のsrc 属性の値が変更されることであることを特徴とする請求項４乃至５に記載の表示制御装置。
【請求項７】
ＣＳＳ特性値が変更されるとは、visibility特性の値が変更されることであることを特徴とする請求項４乃至５に記載の表示制御装置。
【請求項８】
要素関連付け処理は、ロードされたコンテンツに対してスクリプトのグローバルコードが実施された後に実行されることを特徴とする請求項１乃至７に記載の表示制御装置。
【請求項９】
上記関連付け要件を満たしている場合であっても、上記第１要素がユーザに視認可能に画面上に表示される場合には、上記関連付けを禁止させる第１禁止手段を備えていることを特徴とする請求項１乃至８に記載の表示制御装置。
【請求項１０】
上記関連付け要件を満たしている場合であっても、上記第１要素がフォーカスを取得した際に、表示内容が変更される他の第２要素が複数存在する場合には、上記関連付けを禁止させる第２禁止手段を備えていることを特徴とする請求項１乃至９に記載の表示制御装置。
【請求項１１】
上記関連付け要件を満たしている場合であっても、上記第１要素以外のフォーカス取得可能要素であって、そのフォーカス取得可能要素がフォーカスを取得したときに上記第２要素の表示内容を変更させるようなフォーカス取得可能要素が存在する場合には、上記関連付けを禁止させる第３禁止手段を備えていることを特徴とする請求項１乃至１０に記載の表示制御装置。
【請求項１２】
フォーカスを取得したときに上記第２要素の表示内容を変更するような複数のフォーカス取得可能要素が存在している場合であっても、それら複数のフォーカス取得可能要素のうち、visibility特性の値がvisible である要素が上記第１要素のみである場合には、上記第３禁止手段を無効にさせる手段を備えていることを特徴とする請求項１１に記載の表示制御装置。
【請求項１３】
マークアップ言語で記述されたコンテンツのフォーカス表示をポインティングデバイスを用いて制御する表示制御プログラムにおいて、
コンテンツを表示させる前に、コンテンツ内の各要素毎に要素関連付け処理を行う機能を、コンピュータに実現させるためのプログラムであり、
要素関連付け処理を行う機能は、処理対象要素である第１要素がフォーカス取得可能要素であり、かつ第１要素がフォーカスを取得した際に表示内容が変更される他の第２要素が存在することという関連付け要件を満たしているか否かを判別する機能、および関連付け要件を満たしているときには、上記第１要素を上記第２要素に関連付ける機能を備えていることを特徴とする表示制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、マークアップ言語で記述されたコンテンツのフォーカス表示をポインティングデバイスを用いて制御する表示制御装置および表示制御プログラムに関する。
【背景技術】
【０００２】
地上デジタル放送におけるデータ放送で使用されるＢＭＬ(Broadcast Markup Language) 等のマークアップ記述言語で記述されたコンテンツを再生するブラウザでは、ユーザ操作によりキーイベントを発生させることが可能である。たとえばユーザが決定キーを押下した際にはキーダウンイベントが、押下した決定キーを離した際にはキーアップイベントが発生する。ユーザは特定の要素に対してキーイベントを発生させ、所定の動作を行わせることが可能である。たとえば、onkeydown 属性の指定されているobject要素に、ユーザが決定キーのキーダウンイベントを発生させるとonkeydown 属性で指定されている動作を行う。これにより文書遷移が行われたり、画面の更新が行われたりする。なお、ＢＭＬについては、非特許文献１に詳細に記述されている。
【０００３】
通常、携帯型電話機などで用いられるブラウザでは、ユーザがキー入力による操作を可能とするためにフォーカスという概念を用いる。キーイベントを取得する要素をその要素がフォーカスを持つといい、ユーザにこのフォーカスを持つ要素に対してキーイベントを発生させることを可能とさせる。ここで、フォーカスを持ちうる要素をフォーカス取得可能要素、フォーカスを持つ要素をフォーカス要素と呼ぶ。フォーカス取得可能要素のうち、フォーカスを持つ要素は常に高々１つである。キー入力デバイスを持つ表示制御装置では、矢印キーを用いてフォーカス要素を変更することが可能である。この操作により、すべてのフォーカス取得可能要素を順番にフォーカス要素とすることが可能であり、ユーザは特定の要素に対してキーイベントを発生させることができる。また、要素がフォーカス要素になることをその要素がフォーカスを取得したといい、逆にフォーカス要素から通常の要素になることを、その要素がフォーカスを消失したという。通常、ブラウザではフォーカス要素は、現在その要素がフォーカス要素であることがユーザに判別可能なようにフォーカス表示される。
【非特許文献１】ＡＲＩＢ  ＴＲ  Ｂ１４  ３．４版  「地上デジタルテレビジョン放送データ放送運用規定」  社団法人  電波産業会  発行
【発明の開示】
【発明が解決しようとする課題】
【０００４】
昨今、携帯端末向け地上デジタル放送（ワンセグ放送）を受信できる端末として、携帯型電話機以外にもＰＣあるいは車載向けナビゲーション装置などが存在する。これらは、入力デバイスとして、マウスやタッチパネル、スタイラスペンなどのポインティングデバイスが用いられる。当然ながら、ブラウザの操作に関してもこれらの入力デバイスが用いられる。マウスを用いたブラウザ操作としては、次のような操作を行う端末がすでに商品化されている。
【０００５】
（１）  図１の左側に示す状態から右側に示す状態に遷移させるための操作
フォーカス取得可能要素Ａが表示されている位置にマウスポインタＭを移動した際に、その要素Ａにフォーカスを取得させて、フォーカス要素にする。
（２）  図１の右側に示す状態から左側に示す状態に遷移させるための操作
フォーカス要素が表示されている位置からマウスポインタＭが外れた際に、その要素にフォーカスを消失させて、通常のフォーカス取得可能要素Ａに戻す。
（３）  決定キーのキーダウンイベントを発生させるための操作
図１の右側に示すようにフォーカス要素上にマウスポインタが存在する際に、マウスをクリックすると、当該フォーカス要素に対して決定キーのキーダウンイベントが発生する。
【０００６】
しかしながら、ＢＭＬ文書の記述によっては、これらのポインティングデバイスが適さない場合がある。
【０００７】
ワンセグ放送におけるデータ放送で使用されるＢＭＬ(Broadcast Markup Language) では、object要素に対してbml:onfocus 属性およびbml:onblur属性を指定することが可能である。object要素がフォーカスを取得すると、bml:onfocus 属性で指定された動作が行われ、object要素がフォーカスを消失すると、bml:onblur属性で指定された動作が行われる。
【０００８】
これを用いることにより、図２および図３に示すように、あるフォーカス取得可能要素Ａ１がフォーカスを取得した際に別の要素Ｂ１の表示を変更し、あたかもその別の要素Ｂ１が見た目上フォーカスを得たように表示させることが可能である。
【０００９】
図２および図３においては、要素Ａ１が実際にフォーカスを持ちうる要素であり、要素Ｂ１が見た目上フォーカスを持ちうる要素である。なお、図３においては、要素Ａ１と要素Ａ２が実際にフォーカスを持ちうる要素であり、要素Ｂ１と要素Ｂ２が見た目上フォーカスを持ちうる要素である。要素Ａ１は要素Ｂ１に隠れて実際は見えない。同様に、要素Ａ２は要素Ｂ２に隠れて実際は見えない。
【００１０】
マウスポインタＭをフォーカス取得可能要素Ａ１上に移動させると、要素Ａ１がフォーカスを取得し、当該要素Ａ１のbml:onfocus 属性によって指定されている動作が実行される。図２の例では、図３に示すようにＹＥＳの画像である要素Ｂ１（"iobj1" ）の背景色が例えば白から赤に変化せしめられる。フォーカス取得可能要素Ａ１外にマウスポインタを移動させると、当該要素Ａ１がフォーカスを消失し、当該要素Ａ１のbml:onblur属性によって指定されている動作が実行される。図２の例では、要素Ｂ１（"iobj1" ）の背景色が例えば赤から白に変化せしめられる。要素Ａ２と要素Ｂ２に関しても、同様な動作をさせることができる。
【００１１】
図２および図３の例では、実際にフォーカスを持ちうる要素と見た目上フォーカスを持ちうる要素の領域が異なっている。このような場合、キー入力デバイスを持つ表示制御装置では、矢印キーを用いてフォーカス要素を変更するため、全てのフォーカス取得可能要素を順番にフォーカス要素とすることが可能であり、実際にフォーカスを持ちうる要素と見た目上フォーカスを持ちうる要素の領域が異なっていても問題はない。
【００１２】
しかしながら、ポインティングデバイスを用いた操作では、見た目上フォーカスを持ちうる要素と実際にフォーカスを持ちうる要素の領域が一致していない場合、ユーザの意図通りにフォーカスを移動させることができないという問題がある。
【００１３】
この発明は、見た目上フォーカスを持ちうる要素と実際にフォーカスを持ちうる要素の領域が一致していない場合でも、ユーザの意図通りにフォーカスを移動させることができるようになる表示制御装置および表示制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
請求項１に記載の発明は、マークアップ言語で記述されたコンテンツのフォーカス表示をポインティングデバイスを用いて制御する表示制御装置において、コンテンツを表示させる前に、コンテンツ内の各要素毎に要素関連付け処理を行う手段を備えており、要素関連付け処理を行う手段は、処理対象要素である第１要素がフォーカス取得可能要素であり、かつ第１要素がフォーカスを取得した際に表示内容が変更される他の第２要素が存在することという関連付け要件を満たしているか否かを判別する手段、および関連付け要件を満たしているときには、上記第１要素を上記第２要素に関連付ける手段を備えていることを特徴とする。  
【００１５】
請求項２に記載の発明は、請求項１に記載の表示制御装置において、コンテンツが表示されている場合において、ある第１要素が関連付けられている第２要素の領域内にポインティングデバイスのポインタが移動した際に、当該第１要素にフォーカスを取得させる手段を備えていることを特徴とする。
【００１６】
請求項３に記載の発明は、請求項１乃至２に記載の表示制御装置において、コンテンツが表示されている場合において、ある第１要素が関連付けられている第２要素の領域内においてポインティングデバイスがクリックされた際に、当該第１要素に対して決定キーによるキーダウンイベントを発行させる手段を備えていることを特徴とする。
【００１７】
「クリック」とは、ポインティングデバイスによる入力を意味する。例えば、ポインティングデバイスがマウスの場合にはマウスクリックを意味し、ポインティングデバイスがタッチパネルやスライダペンの場合は画面上を指、ペンなどでタッチすることを意味する。
【００１８】
請求項４に記載の発明は、請求項１乃至３に記載の表示制御装置において、フォーカス取得可能要素とは、フォーカスを取得した際にスクリプトが実行される要素であり、第１要素がフォーカスを取得した際に表示内容が変更される他の第２要素とは、第１要素がフォーカスを取得したことによってスクリプトが実行されることにより、属性値またはＣＳＳ特性値が変更される要素であることを特徴とする。
【００１９】
請求項５に記載の発明は、請求項４に記載の表示制御装置において、フォーカス取得可能要素とは、bml:onfocus 属性を有する要素であり、第１要素がフォーカスを取得した際に表示内容が変更される他の第２要素とは、第１要素のbml:onfocus 属性で指定されているスクリプトが実行されることにより、属性値またはＣＳＳ特性値が変更される要素であることを特徴とする。
【００２０】
請求項６に記載の発明は、請求項４乃至５に記載の表示制御装置において、属性値が変更されるとは、object要素のdata属性またはimg 要素のsrc 属性の値が変更されることであることを特徴とする。
【００２１】
請求項７に記載の発明は、請求項４乃至５に記載の表示制御装置において、ＣＳＳ特性値が変更されるとは、visibility特性の値が変更されることであることを特徴とする。
【００２２】
請求項８に記載の発明は、請求項１乃至７に記載の表示制御装置において、要素関連付け処理は、ロードされたコンテンツに対してスクリプトのグローバルコードが実施された後に実行されることを特徴とする。
【００２３】
請求項９に記載の発明は、請求項１乃至８に記載の表示制御装置において、上記関連付け要件を満たしている場合であっても、上記第１要素がユーザに視認可能に画面上に表示される場合には、上記関連付けを禁止させる第１禁止手段を備えていることを特徴とする。
【００２４】
請求項１０に記載の発明は、請求項１乃至９に記載の表示制御装置において、上記関連付け要件を満たしている場合であっても、上記第１要素がフォーカスを取得した際に、表示内容が変更される他の第２要素が複数存在する場合には、上記関連付けを禁止させる第２禁止手段を備えていることを特徴とする。
【００２５】
請求項１１に記載の発明は、請求項１乃至１０に記載の表示制御装置において、上記関連付け要件を満たしている場合であっても、上記第１要素以外のフォーカス取得可能要素であって、そのフォーカス取得可能要素がフォーカスを取得したときに上記第２要素の表示内容を変更させるようなフォーカス取得可能要素が存在する場合には、上記関連付けを禁止させる第３禁止手段を備えていることを特徴とする。
【００２６】
請求項１２に記載の発明は、請求項１１に記載の表示制御装置において、フォーカスを取得したときに上記第２要素の表示内容を変更するような複数のフォーカス取得可能要素が存在している場合であっても、それら複数のフォーカス取得可能要素のうち、visibility特性の値がvisible である要素が上記第１要素のみである場合には、上記第３禁止手段を無効にさせる手段を備えていることを特徴とする。
【００２７】
請求項１３に記載の発明は、マークアップ言語で記述されたコンテンツのフォーカス表示をポインティングデバイスを用いて制御する表示制御プログラムにおいて、コンテンツを表示させる前に、コンテンツ内の各要素毎に要素関連付け処理を行う機能を、コンピュータに実現させるためのプログラムであり、要素関連付け処理を行う機能は、処理対象要素である第１要素がフォーカス取得可能要素であり、かつ第１要素がフォーカスを取得した際に表示内容が変更される他の第２要素が存在することという関連付け要件を満たしているか否かを判別する機能、および関連付け要件を満たしているときには、上記第１要素を上記第２要素に関連付ける機能を備えていることを特徴とする。  
【発明の効果】
【００２８】
この発明によれば、見た目上フォーカスを持ちうる要素と実際にフォーカスを持ちうる要素の領域が一致していない場合でも、ユーザの意図通りにフォーカスを移動させることができるようになる。
【発明を実施するための最良の形態】
【００２９】
以下、図面を参照して、この発明を、地上デジタルテレビ放送を受信する機能を備えたＰＣに適用した場合の実施例について説明する。
【実施例１】
【００３０】
〔１〕ＰＣの構成
図４は、地上デジタルテレビ放送を受信する機能を備えたＰＣの構成を示している。ただし、本実施例の特徴は、地上デジタルテレビ放送によって送られてくるデータ放送の表示制御方法にあるので、図４では、地上デジタルテレビ放送を受信する機能を実現するための回路のみを示している。
【００３１】
アンテナ１で受信された放送波はチューナ２に送られて、高周波処理および復調が行なわれ、トランスポート・ストリームとして出力される。ＤＥＭＵＸ回路３は、チューナ２に受け取ったトランスポート・ストリームを解析し、ＡＶストリームと、番組情報と、ＢＭＬ文書などに分解する。ＡＶストリームは、ＡＶデコーダ４に送られ、番組情報とＢＭＬ文書などは、システム制御部２０に送られる。
【００３２】
ＡＶデコーダ４は、ＡＶストリームをデコードする。ＡＶデコーダ４によって得られた映像信号は、映像処理回路５、マルチプレクサ６および映像出力回路７を介してＬＣＤ（液晶表示器）８に送られる。ＡＶデコーダ４によって得られた音声信号は、音声処理回路９および音声出力回路１０を介してスピーカ１１に送られる。
【００３３】
システム制御部２０には、操作部２１が接続されている。この実施例では、操作部２１は、キーボードやマウス（ポインティングデバイス）を含んでいる。
【００３４】
システム制御部２０は、ＤＥＭＵＸ回路３によって分離されたＢＭＬ文書を解析し、その解析結果に応じた表示が行なわれるように、グラフィック表示回路２２を制御する。グラフィック表示回路２２によって生成されたグラフィック信号は、マルチプレクサ６に送られて映像信号に合成される。マルチプレクサ６によって得られた映像信号は、映像出力回路７を介してＬＣＤ８に送られる。
【００３５】
〔２〕本願発明の基本的な実施例
本願発明の基本的な実施例では、システム制御部２０は、実際にフォーカスを持ちうる要素（フォーカス取得可能要素）と見た目上フォーカスを持ちうる要素とを関連付け、ポインタが見た目上フォーカスを持ちうる要素の上に移動した際に、実際にフォーカスを持ちうる要素にフォーカスを取得させ、見た目上フォーカスを持ちうる要素があたかもフォーカスを持っているかのように表示させる。
【００３６】
実際にフォーカスを持ちうる要素とは別に、見た目上フォーカスを持ちうる要素が存在するためには、実際にフォーカスを持ちうる要素のbml:onfocus 属性に指定されているスクリプトを実施することにより、見た目上フォーカスを持ちうる要素の属性値またはＣＳＳ（Cascading Style Sheets) 特性値が変更される必要がある。
【００３７】
要素の属性値が変更されるとは、例えば、object要素のdata属性またはimg 要素のsrc 属性の値が変更されることをいう。object要素は、画像、音声、動画などのオブジェクトを表現するための要素である。object要素のdata属性は、オブジェクトデータの所在をＵＲＩ(Uniform Resource Identifier) で指定するために用いられる。img 要素は、指定した部分に画像を埋め込むための要素である。img 要素のsrc 属性は、画像ファイルの所在をＵＲＩで指定するために用いられる。
【００３８】
また、要素のＣＳＳ特性値が変更されるとは、例えば、visibility特性の値が変更されることをいう。visibility特性は、要素が生成するボックスの表示・非表示を指定するものである。visibility特性の値には、visible(要素が生成するボックスを可視にする) 、hidden( 要素が生成するボックスを不可視（透明）にする) 等がある。
【００３９】
そこで、本願発明の基本的な実施例では、bml:onfocus 属性で指定されているスクリプトを実行した場合に、属性値またはＣＳＳ特性値が変更される要素が存在する場合、当該bml:onfocus 属性を有する要素を実際にフォーカスを持ちうる要素（フォーカス取得可能要素）Ａとし、属性値またはＣＳＳ特性値が変更された要素を見た目上フォーカスを持ちうる要素Ｂとし、見た目上フォーカスを持ちうる要素Ｂに実際にフォーカスを持ちうる要素Ａを関連づける。
【００４０】
なお、「要素Ｂに要素Ａを関連づける」とは、見た目上フォーカスを持ちうる要素Ｂが情報として、実際にフォーカスを持ちうる要素Ａの情報を持つこと、すなわち要素Ｂから要素Ａの情報を参照可能とすることをいう。
【００４１】
このようにして、要素Ｂにフォーカス取得可能要素Ａが関連付けられた場合には、システム制御部２０は、要素Ｂ上にポインティングデバイス（この実施例ではマウス）のポインタが移動した際に、関連付けられたフォーカス取得可能要素Ａにフォーカスを取得させ、フォーカス取得可能要素Ａで指定されているbml:onfocus 属性によって指定されているスクリプトを実行させるとともに、要素Ｂ上から要素Ｂ外にポインタが移動した際に、関連付けられたフォーカス取得可能要素Ａで指定されているbml:onblur属性によって指定されているスクリプトを実行させるような制御を行う。
【００４２】
また、このような制御に加えてまたはこのような制御を行わないで、要素Ｂにフォーカス取得可能要素Ａが関連付けられた場合において、要素Ｂ上にポインティングデバイスのポインタが存在している状態で、ポインティングデバイスがクリックされた際には、システム制御部２０は、フォーカス取得可能要素Ａに決定キーによるキーダウンイベントを発行させるような制御を行うようにしてもよい。
【００４３】
図５は、要素関連付け処理の手順を示している。
この処理は、ロードされたＢＭＬ文書に対するスクリプトのグローバルコード実施後に、システム制御部２０によって行われる。
【００４４】
つまり、ＢＭＬ文書内から１つの要素を注目要素Ａとして選択する（ステップＳ１）。注目要素Ａにbml:onfocus 属性が指定されているか否かを判別する（ステップＳ２）。注目要素Ａにbml:onfocus 属性が指定されていない場合には、ステップＳ５に移行する。
【００４５】
ステップＳ２において、注目要素Ａにbml:onfocus 属性が指定されていると判別した場合には、当該bml:onfocus 属性によって指定されているスクリプトを実行したときに、属性値またはＣＳＳ特性値が変更される要素Ｂが存在するか否かを判別する（ステップＳ３）。上記bml:onfocus 属性によって指定されているスクリプトを実行したときに、属性値またはＣＳＳ特性値が変更される要素Ｂが存在しない場合には、ステップＳ５に移行する。
【００４６】
ステップＳ３において、上記bml:onfocus 属性によって指定されているスクリプトを実行したときに、属性値またはＣＳＳ特性値が変更される要素Ｂが存在すると判別した場合には、当該要素Ｂに注目要素Ａを関連付ける（ステップＳ４）。そして、ステップＳ５に進む。
【００４７】
ステップＳ５では、注目要素Ａとして選択されていない要素が残っているか否かを判別する。注目要素Ａとして選択されていない要素が残っている場合には、残っている要素から１つの要素を注目要素Ａとして選択した後（ステップＳ６）、ステップＳ２に戻る。
【００４８】
ステップＳ５において、注目要素Ａとして選択されていない要素が残っていないと判別した場合には、つまり、全ての要素に対してステップＳ２以降の処理が行われた場合には、今回の要素関連付け処理を終了する。
【００４９】
例えば、図２のＢＭＬ文書では、注目要素Ａが要素Ａ１である場合、要素Ａ１にbml:onfocus 属性が指定されているので、ステップＳ２でＹＥＳとなる。当該bml:onfocus 属性によって指定されているスクリプト"focus1()"を実行したときに、属性値（data属性の値) が変更される要素Ｂ１が存在するので、ステップＳ３でもＹＥＳとなる。このため、ステップＳ４において、要素Ｂ１に要素Ａ１が関連付けられる。
【００５０】
これにより、図６に示すように、見た目上フォーカスを持ちうる要素Ｂ１の領域をポインティングデバイスのポインタが指し示した際、要素Ｂ１に関連付けられた、実際にフォーカスを持ちうる要素Ａ１にフォーカスを取得させ、ユーザによるポインティングデバイスによる操作を直感的に行うことを可能とさせる。
【００５１】
また、見た目上フォーカスを持ちうる要素Ｂ１の領域をポインティングデバイスのポインタが指し示している状態において、ポインティングデバイスがクリックされた際には、要素Ｂ１に関連付けられた、実際にフォーカスを持ちうる要素Ａ１に決定キーによるキーダウンイベントを発行させる。
【００５２】
〔３〕本願発明の他の実施例
上記本願発明の基本的な実施例をそのまま適用すると、まれに、ユーザにとって意図しないフォーカス制御が実施される可能性がある。そこで、ユーザが意図しないフォーカス制御が実施されるのを回避するために、以下で示すような禁止条件を加えることが好ましい。
【００５３】
〔３−１〕禁止条件１
実際にフォーカスを持ちうるフォーカス取得可能要素Ａが、ユーザが視認できるように画面上に表示される場合には、当該フォーカス取得可能要素Ａを他の要素に関連付けしないようにする。つまり、「フォーカス取得可能要素Ａがユーザが視認できるように画面上に表示されること」が禁止条件１となる。
【００５４】
言い換えれば、「フォーカス取得可能要素Ａの領域全体の前面に別の要素が存在しており、その別の要素の背景色が透明でなくかつその別の要素のvisibility特性の値がvisible であること」という条件を満たしていない場合には、当該フォーカス取得可能要素Ａはユーザが視認できるように画面上に表示されるので、当該フォーカス取得可能要素Ａを他の要素に関連付けしないようにする。
【００５５】
例えば、図７に示すＢＭＬ文書のように、実際にフォーカスを持ちうるフォーカス取得可能要素Ａの領域（left,top,width,height)＝(40,30,1,1) に別の要素Ｘの領域（left,top,width,height)＝(40,30,160,20)が重なっており、当該フォーカス取得可能要素Ａがユーザに視認できるように画面上に表示されない場合にのみ、当該フォーカス取得可能要素Ａを他の要素に関連付けすることを許可する。図８は、このような要素Ａと要素Ｘの例を示している。
【００５６】
本実施例の手法は、実際にフォーカスを持ちうる要素に対して、見た目上フォーカスを持ちうる要素が存在し、かつそれらが異なる領域を持つ場合にこれらの２つの要素を関連付け、見た目上フォーカスを持ちうる要素に対してポインティングデバイスによる入力が行われた際に、実際にフォーカスを持ちうる要素にポインティングデバイスによる入力が行われたのと同様の動作をさせるものである。
【００５７】
コンテンツ制作者が実際にフォーカスを持ちうる要素と、見た目上フォーカスを持ちうる要素とを意図的に別々に設定する理由としては、ブラウザで自動的に行われる要素のフォーカス表示では通常はその要素の内縁に沿って破線が表示されるので、そのような破線を表示させたくないということが挙げられる。また、当然ながら、コンテンツ制作者の意図として実際にフォーカスを持ちうる要素をユーザに見せたくないということもある。このようなことから、本実施例の手法が効果を発揮するのは、実際にフォーカスを持ちうる要素がユーザに視認できるように画面内に表示されていない場合が多いと考えられる。
【００５８】
〔３−２〕禁止条件２
実際にフォーカスを持ちうるフォーカス取得可能要素Ａで指定されているbml:onfocus 属性によって指定されているスクリプトを実行した際、複数の要素の属性値あるいはＣＳＳ特性値が変更されるような場合には、当該フォーカス取得可能要素Ａに対する関連付けを行わないようにする。
【００５９】
つまり、「フォーカス取得可能要素Ａで指定されているbml:onfocus 属性によって指定されているスクリプトを実行した際、複数の要素の属性値あるいはＣＳＳ特性値が変更されること」が禁止条件２となる。
【００６０】
例えば、図９に示すＢＭＬ文書のように、フォーカス取得可能要素Ａ２がフォーカスを取得した際に実行されるスクリプト"focus＿b()"によって、２つの要素Ｂ１（"iobjx" ）およびＢ２（"iobjy" ）のdata属性の値が変更される場合には、フォーカス取得可能要素Ａ２に対する関連付けを行わないようにする。
【００６１】
図９に示すＢＭＬ文書によれば、例えば、図１０に示すように、フォーカス取得可能要素Ａ２がフォーカスを取得した際には、スクリプト"focus＿b()"が実行されることにより、まず要素Ｂ１の「ＹＥＳ」の画像が赤から白に変更せしめられ、その後、要素Ｂ２の「ＮＯ」の画像が白から赤に変更せしめられる。
【００６２】
このような場合、要素Ｂ２にフォーカス取得可能要素Ａ２を関連付けることが好ましいが、要素Ｂ１にフォーカス取得可能要素Ａ２を関連付けた場合にはユーザが意図しない制御が実行されてしまう。つまり、要素Ｂ２の領域をポインティングデバイスが指し示したときにフォーカス取得可能要素Ａ２にフォーカスを取得させることが好ましいが、要素Ｂ１の領域をポインティングデバイスが指し示したときにフォーカス取得可能要素Ａ２にフォーカスを取得させるとユーザが意図しない制御が実行されてしまう。そこで、このような場合には、フォーカス取得可能要素Ａ２に対する関連付けを行わないようにする。
【００６３】
〔３−３〕禁止条件３
bml:onfocus 属性が指定されている実際にフォーカスを持ちうるフォーカス取得可能要素Ａが複数存在し、複数のフォーカス取得可能要素Ａのbml:onfocus 属性で指定されているスクリプトを実行することにより、同じ要素Ｂの属性値またはＣＳＳ値が変更される場合には、その要素Ｂはどのフォーカス取得可能要素Ａとも関連付けを行わない。
【００６４】
つまり、「フォーカス取得可能要素Ａが複数存在し、複数のフォーカス取得可能要素Ａのbml:onfocus 属性で指定されているスクリプトを実行することにより、同じ要素Ｂの属性値またはＣＳＳ値が変更されること」が禁止条件３となる。
【００６５】
例えば、図１１に示すＢＭＬ文書のように、フォーカス取得可能要素Ａ１がフォーカスを取得した際に実行されるスクリプト"focus＿a()"と、フォーカス取得可能要素Ａ２がフォーカスを取得した際に実行されるスクリプト"focus＿b()"が、同一の要素Ｂのdata属性値を変更するようなスクリプトである場合には、要素Ｂをいずれのフォーカス取得可能要素Ａ１、Ａ２にも関連付けしないようにする。
【００６６】
図１１に示すＢＭＬ文書は、例えば、図１２に示すように、羊の画像を表示しているフォーカス取得可能要素Ａ１がフォーカスを取得している場合には要素Ｂはアンハッピーの画像となり、牛の画像を表示しているフォーカス取得可能要素Ａ２がフォーカスを取得している場合には要素Ｂはハッピーの画像となるような、星座により１日の運勢を占うようなコンテンツの一部である。
【００６７】
このよう場合、要素Ｂの領域をポインティングデバイスのポインタが指し示した際に、フォーカス取得可能要素Ａ１またはＡ２のいずれの要素がフォーカスが取得しても、ユーザの意図する動作とは異なる制御が行われてしまう。そこで、このような場合には、要素Ｂを他の要素に関連付けないようにする。ただし、次に説明するように、制限条件３には例外がある。
【００６８】
〔３−４〕禁止条件３の例外
bml:onfocus 属性が指定されている実際にフォーカスを持ちうるフォーカス取得可能要素Ａが複数存在し、複数のフォーカス取得可能要素Ａのbml:onfocus 属性で指定されているスクリプトを実行することにより、同じ要素Ｂの属性値またはＣＳＳ値が変更される場合であっても、複数のフォーカス取得可能要素Ａのうち、visibility特性の値がvisible である要素が唯一であれば、そのフォーカス取得可能要素Ａを属性値またはＣＳＳ値が変更される要素Ｂに関連付ける。
【００６９】
例えば、図１３に示すＢＭＬ文書では、フォーカス取得可能要素Ａ１がフォーカスを取得した際に実行されるスクリプト"focus＿a()"と、フォーカス取得可能要素Ａ２がフォーカスを取得した際に実行されるスクリプト"focus＿b()"は、同一の要素Ｂのdata属性値を変更するようなスクリプトである。しかしながら、グローバルコード実施後にvisibility特性の値がvisible になるのがフォーカス取得可能要素Ａ１またはＡ２のいずれか１つである場合には、visibility特性の値がvisible である方のみを要素Ｂに関連付ける。
【００７０】
図１３に示すＢＭＬ文書は、例えば、図１４に示すように、曜日ごとに、見た目上フォーカスを持ちうる要素を変更するようなコンテンツの一部である。図１３に示すＢＭＬ文書では、スクリプトのグローバルコード内で曜日が確認され、確認された曜日に基づいてvisibility特性の値をvisible にする要素が選択される。具体的には、曜日が日曜日であれば、ｉ＝０となり、フォーカス取得可能要素Ａ１のvisibility特性の値がvisible とされ、曜日が月曜日であれば、ｉ＝１となり、フォーカス取得可能要素Ａ２のvisibility特性の値がvisible とされる。
【００７１】
したがって、図１４の左側に示すように、曜日が日曜日である場合において、要素Ａ１がフォーカスを取得すると、要素Ｂとして「日曜日の運勢は？」という画像が表示される。また、図１４の右側に示すように、曜日が月曜日である場合において、要素Ａ２がフォーカスを取得すると、要素Ｂとして「月曜日の運勢は？」という画像が表示される。
【００７２】
禁止条件３の例外によれば、曜日が日曜日である場合には、フォーカス取得可能要素Ａ１が要素Ｂに関連付けられ、曜日が月曜日である場合には、フォーカス取得可能要素Ａ２が要素Ｂに関連付けられる。
【００７３】
〔３−５〕  要素関連付け処理
図１５は、禁止条件１〜３および禁止条件３の例外を考慮した場合の要素関連付け処理の手順を示している。
【００７４】
この処理は、ＢＭＬ文書がロードされ、ロードされたＢＭＬ文書の解析が行われ、スクリプトのグローバルコード実施後において、システム制御部２０によって行われる。
【００７５】
つまり、ＢＭＬ文書内から１つの要素を注目要素Ａとして選択する（ステップＳ１１）。注目要素Ａにbml:onfocus 属性が指定されているか否かを判別する（ステップＳ１２）。注目要素Ａにbml:onfocus 属性が指定されていない場合には、ステップＳ１９に移行する。
【００７６】
ステップＳ１２において、注目要素Ａにbml:onfocus 属性が指定されていると判別した場合には、当該bml:onfocus 属性によって指定されているスクリプトを実行したときに、属性値またはＣＳＳ特性値が変更される要素Ｂが存在するか否かを判別する（ステップＳ１３）。上記bml:onfocus 属性によって指定されているスクリプトを実行したときに、属性値またはＣＳＳ特性値が変更される要素Ｂが存在しない場合には、ステップＳ１９に移行する。
【００７７】
ステップＳ１３において、上記bml:onfocus 属性によって指定されているスクリプトを実行したときに、属性値またはＣＳＳ特性値が変更される要素Ｂが存在すると判別した場合には、禁止条件１を満たすか否かを判別する（ステップＳ１４）。つまり、「注目要素Ａがユーザが視認できるように画面上に表示されること」という禁止条件１を満たしているか否かを判別する。
【００７８】
具体的には、「注目要素Ａの領域全体の前面に別の要素が存在しており、その別の要素の背景色が透明でなくかつその別の要素のvisibility特性の値がvisible であること」という許可条件を満たしているか否かを判別する。この許可条件を満たしていない場合には、禁止条件１を満たしていると判断し、ステップＳ１９に移行する。
【００７９】
上記許可条件を満たしている場合には、禁止条件１を満たしていないと判断し、ステップＳ１５に移行する。ステップＳ１５では、禁止条件２を満たすか否かを判別する。つまり、「注目要素Ａで指定されているbml:onfocus 属性によって指定されているスクリプトを実行した際、複数の要素の属性値あるいはＣＳＳ特性値が変更されること」という禁止条件２を満たしているか否かを判別する。禁止条件２を満たしている場合には、ステップＳ１９に移行する。
【００８０】
禁止条件２を満たしていない場合には、禁止条件３を満たすか否かを判別する。つまり、「注目要素Ａ以外のフォーカス取得可能要素であって、そのフォーカス取得可能要素のbml:onfocus 属性で指定されているスクリプトを実行することにより、上記ステップＳ１３で特定された要素Ｂの属性値またはＣＳＳ値が変更されるようなフォーカス取得可能要素が存在すること」という禁止条件３を満たすか否かを判別する。禁止条件３を満たしていない場合には、ステップＳ１８に進み、禁止条件３を満たしている場合には、ステップＳ１７に進む。
【００８１】
ステップＳ１７では、禁止条件３の例外が適用されるか否かを判別する。つまり、上記ステップＳ１３で特定された要素Ｂの属性値またはＣＳＳ値を変更するようなスクリプトを指定するbml:onfocus 属性を有する複数のフォーカス取得可能要素のうち、visibility特性の値がvisible である要素が注目要素Ａのみである場合には、ステップＳ１８に進む。上記ステップＳ１３で特定された要素Ｂの属性値またはＣＳＳ値を変更するようなスクリプトを指定するbml:onfocus 属性を有する複数のフォーカス取得可能要素のうち、visibility特性の値がvisible である要素が注目要素Ａのみでない場合、つまり、visibility特性の値がvisible である要素が全く存在しないか若しくは複数存在する場合、またはvisibility特性の値がvisible である要素が唯一であってもその要素が注目要素Ａではない場合には、ステップＳ１９に進む。
【００８２】
ステップＳ１８では、ステップＳ１３で特定された要素Ｂに注目要素Ａを関連付ける。この後、ステップＳ１９に進む。
【００８３】
ステップＳ１９では、注目要素Ａとして選択されていない要素が残っているか否かを判別する。注目要素Ａとして選択されていない要素が残っている場合には、残っている要素から１つの要素を注目要素Ａとして選択した後（ステップＳ２０）、ステップＳ１２に戻る。
【００８４】
ステップＳ１９において、注目要素Ａとして選択されていない要素が残っていないと判別した場合には、つまり、全ての要素に対してステップＳ１２以降の処理が行われた場合には、今回の要素関連付け処理を終了する。
【００８５】
この発明は、地上デジタルテレビ放送を受信する機能を備えたＰＣの他、地上デジタルテレビ放送を受信する機能およびナビゲーション機能を備えた移動体端末にも適用することができる。この種の移動体端末では、ポインティングデバイスとしてタッチパネルが用いられていることが多い。
【００８６】
タッチパネルやスタイラスペン等のようにポインタが画面上に表示されないようなポインティングデバイスが用いられている端末では、画面内を指やペンでタッチした際に、「ポインティングデバイスがクリック」されたのではなく、タッチされた箇所に「ポインティングデバイスのポインタが移動した」と判断することを許容する。すなわち、画面上をタッチした際に、タッチされた箇所にポインタが移動した場合と同様の処理を実施する。そして、タッチされた箇所が見た目上フォーカスを持っている要素Ｂ上（要素Ｂに関連付けられたフォーカス取得可能要素Ａがフォーカス要素である）場合にのみ、「ポインティングデバイスがクリックされた」と見做し、フォーカス取得可能要素（フォーカス要素）Ａに決定キーによるキーダウンイベントを発行させるような制御を行ってもよい。
【００８７】
または、画面内をタッチした際に、タッチされた箇所に「ポインティングデバイスのポインタが移動した」と、「ポインティングデバイスがクリックされた」とを連続で発生させることも許容する。すなわち、画面上をタッチした際にタッチした箇所が見た目上フォーカスを持っている要素Ｂ上（要素Ｂに関連付けられたフォーカス取得可能要素Ａが存在する）であるならば、フォーカス取得可能要素Ａにフォーカスを取得させた後、フォーカス取得可能要素（フォーカス要素）Ａに決定キーによるキーダウンイベントを発行させるようにしてもよい。
【図面の簡単な説明】
【００８８】
【図１】マウスを用いたブラウザ操作を説明するための模式図である。
【図２】あるフォーカス取得可能要素がフォーカスを取得した際に別の要素の表示を変更するような内容を含んでいるＢＭＬ文書の例を示す模式図である。
【図３】図２のＢＭＬ文書に基づいた表示制御例を説明するための模式図である。
【図４】地上デジタルテレビ放送を受信する機能を備えたＰＣの構成を示すブロック図である。
【図５】要素関連付け処理の手順を示すフローチャートである。
【図６】図５の要素関連付け処理によって要素Ｂ１に要素Ａ１が関連付けられた場合の、表示制御例を示す模式図である。
【図７】フォーカス取得可能要素Ａの領域に別の要素Ｘの領域が重なっている内容を含むＢＭＬ文書の例を示す模式図である。
【図８】図７のＢＭＬ文書内の要素Ａと要素Ｘの表示画面上での位置を示す模式図である。
【図９】フォーカス取得可能要素Ａ２がフォーカスを取得した際に実行されるスクリプト"focus＿b()"によって、２つの要素Ｂ１（"iobjx" ）およびＢ２（"iobjy" ）のdata属性の値が変更される内容を含むＢＭＬ文書の例を示す模式図である。
【図１０】図９のＢＭＬ文書にしたがった、要素Ａ２、Ｂ１、Ｂ２の表示制御例を示す模式図である。
【図１１】複数のフォーカス取得可能要素Ａ１、Ａ２のbml:onfocus 属性で指定されているスクリプトを実行することにより、同じ要素Ｂの属性値またはＣＳＳ値が変更される内容を含むＢＭＬ文書の例を示す模式図である。
【図１２】図１１のＢＭＬ文書にしたがった、要素Ａ１、Ａ２、Ｂの表示制御例を示す模式図である。
【図１３】複数のフォーカス取得可能要素Ａ１、Ａ２のbml:onfocus 属性で指定されているスクリプトを実行することにより、同じ要素Ｂの属性値またはＣＳＳ値が変更される場合であっても、複数のフォーカス取得可能要素Ａ１、Ａ２のうち、visibility特性の値がvisible である要素が唯一であるような内容を含むＢＭＬ文書の例を示す模式図である。
【図１４】図１３のＢＭＬ文書にしたがった、要素Ａ１、Ａ２、Ｂの表示制御例を示す模式図である。
【図１５】禁止要件１〜３および禁止条件３の例外を考慮した場合の要素関連付け処理の手順を示すフローチャートである。
【符号の説明】
【００８９】
１  アンテナ
２  チューナ
３  ＤＥＭＵＸ回路
４  ＡＶデコーダ
５  映像処理回路
６  マルチプレクサ
７  映像出力回路
８  ＬＣＤ（液晶表示器）
９  音声処理回路
１０  音声出力回路
１１  スピーカ
２０  システム制御部
２１  操作部
２２  グラフィック表示回路
【図１】
2009223655.tif 000003
【図２】
2009223655.tif 000004
【図３】
2009223655.tif 000005
【図４】
2009223655.tif 000006
【図５】
2009223655.tif 000007
【図６】
2009223655.tif 000008
【図７】
2009223655.tif 000009
【図８】
2009223655.tif 000010
【図９】
2009223655.tif 000011
【図１０】
2009223655.tif 000012
【図１１】
2009223655.tif 000013
【図１２】
2009223655.tif 000014
【図１３】
2009223655.tif 000015
【図１４】
2009223655.tif 000016
【図１５】
2009223655.tif 000017