(57)【要約】【課題】既存のＨＴＭＬデータを利用して、ＶＸＭＬデータを簡単に作成する情報端末を提供すること。【解決手段】ＣＰＵ１は、ＨＴＭＬ要素とＶＸＭＬ要素との対応関係が定義されている一次変換テーブル参照して、ＨＴＭＬデータを中間コードに変換する。ＣＰＵ１は、一次変換テーブルでは特定できないＶＸＭＬ要素の特別アトリビュート値を二次変換テーブルを参照して、変換前のＨＴＭＬデータから取得する。ＣＰＵ１は、取得した特別アトリビュート値を中間コードに挿入して、最終的なＶＸＭＬデータを完成する。【選択図】　図１
2004030395.tif 000002
【特許請求の範囲】
【請求項１】
ＨＴＭＬデータを利用する情報端末であって、
所望のＨＴＭＬデータを取得する取得手段と、
前記取得手段が取得したＨＴＭＬデータをＶｏｉｃｅＸＭＬデータに変換する変換手段と、
前記変換手段によって得られるＶｏｉｃｅＸＭＬデータを構文解釈して実行する実行手段とを備える、情報端末。
【請求項２】
前記ＨＴＭＬデータは、複数のＨＴＭＬ要素から成り立っており、前記ＶｏｉｃｅＸＭＬデータは、複数のＶｏｉｃｅＸＭＬ要素から成り立っており、
前記変換手段は、
ＨＴＭＬ要素とＶｏｉｃｅＸＭＬ要素との対応関係が定義されている一次変換テーブルを記憶する一次変換テーブル記憶部と、
前記一次変換テーブルでは特定できないＶｏｉｃｅＸＭＬ要素上の属性値を、当該ＶｏｉｃｅＸＭＬ要素に対応しない他のＨＴＭＬ要素から取得するために、変換前のＨＴＭＬデータ上でのその取得先を定義した二次変換テーブルを記憶する二次変換テーブル記憶部と、
前記一次変換テーブルを参照して、前記ＨＴＭＬデータをＶｏｉｃｅＸＭＬ要素が集まった中間コードに変換する一次変換手段と、
前記二次変換テーブルを参照して、前記一次変換手段では特定できなかったＶｏｉｃｅＸＭＬ要素上の属性値を、前記ＨＴＭＬデータに含まれる他のＨＴＭＬ要素から取得して、前記中間コードを最終的なＶｏｉｃｅＸＭＬデータに変換する二次変換手段とを含む、請求項１に記載の情報端末。
【請求項３】
前記一次変換テーブルには、ユーザの操作慣れ度合いに応じてＨＴＭＬ要素とＶｏｉｃｅＸＭＬ要素との対応関係が定義されており、
前記一次変換手段は、ユーザの操作慣れ度合いに応じて前記中間コードを作成する、請求項１に記載の情報端末。
【請求項４】
さらに、前記操作慣れ度合いが登録されている慣れ度合い登録部と、
ユーザの操作履歴に基づいて、前記慣れ度合い登録部に登録されている操作慣れ度合いを自動的に変更する慣れ度合い変更手段とを備える、請求項３に記載の情報端末。
【請求項５】
前記実行手段は、前記変換手段によって得られるＶｏｉｃｅＸＭＬデータの実行中にＨＴＭＬデータの取得指示が与えられた場合、前記取得手段に必要なＨＴＭＬデータを取得させ、当該ＨＴＭＬデータを前記変換手段に変換させる、請求項１に記載の情報端末。
【請求項６】
前記実行手段は、ＶｏｉｃｅＸＭＬデータによる初期案内を実行する、請求項１に記載の情報端末。
【請求項７】
文字表示するための表示部をさらに備え、
前記実行手段は、音声出力を行う場合、出力音声に対応する文字を前記表示部に表示させる、請求項１に記載の情報端末。
【請求項８】
文字表示するための表示部をさらに備え、
前記実行手段は、音声が入力された場合、入力音声に対応する文字を前記表示部に表示させる、請求項１に記載の情報端末。
【請求項９】
ＨＴＭＬデータを利用するコンピュータ装置で実行されるプログラムであって、
所望のＨＴＭＬデータを取得するステップと、
取得したＨＴＭＬデータをＶｏｉｃｅＸＭＬデータに変換するステップと、
変換によって得られるＶｏｉｃｅＸＭＬデータを構文解釈して実行するステップとを備える、プログラム。
【請求項１０】
前記ＨＴＭＬデータは、複数のＨＴＭＬ要素から成り立っており、前記ＶｏｉｃｅＸＭＬデータは、複数のＶｏｉｃｅＸＭＬ要素から成り立っており、
前記ＶｏｉｃｅＸＭＬデータに変換ステップでは、
ＨＴＭＬ要素とＶｏｉｃｅＸＭＬ要素との対応関係が定義されている一次変換テーブルを参照して、前記ＨＴＭＬデータをＶｏｉｃｅＸＭＬ要素が集まった中間コードに変換し、
前記一次変換テーブルでは特定できないＶｏｉｃｅＸＭＬ要素上の属性値を、当該ＶｏｉｃｅＸＭＬ要素に対応しない他のＨＴＭＬ要素から取得するために、変換前のＨＴＭＬデータ上でのその取得先を定義した二次変換テーブルを参照して、当該ＶｏｉｃｅＸＭＬ要素上の属性値を取得して、前記中間コードを最終的なＶｏｉｃｅＸＭＬデータに変換する、請求項９に記載のプログラム。
【請求項１１】
前記ＶｏｉｃｅＸＭＬデータを構文解釈して実行するステップでは、
変換後のＶｏｉｃｅＸＭＬデータの実行中にＨＴＭＬデータの取得指示が与えられた場合、必要なＨＴＭＬデータを取得して、当該ＨＴＭＬデータをＶｏｉｃｅＸＭＬデータに変換する、請求項９に記載のプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＳＧＭＬ系言語で記述されたデータを利用する情報端末に関し、より特定的には、ＨＴＭＬおよびＶｏｉｃｅＸＭＬで記述されたデータを利用する情報端末に関する。
【０００２】
【従来の技術】
近年、通信技術の発展に伴い、パーソナルコンピュータや携帯電話、ＰＤＡ（Ｐｅｒｓｏｎａｌ　Ｄｉｇｉｔａｌ　Ａｓｓｉｓｔａｎｔｓ）、カーナビゲーション装置等を用い、インターネットを介してＷＷＷサーバに接続し、必要な情報を容易に取得することが可能となってきた。
【０００３】
その一方で、通信ネットワークの大規模化に伴い、ユーザが所望の情報にアクセスするための操作手順が複雑化する傾向にある。操作手順の複雑化は、コンピュータの操作に不慣れな初心者ユーザがネットワークを利用する際の障壁の一つとなっている。また、カーナビゲーションシステム等では、運転中の操作を容易にするために、音声指示に基づいて、所望の情報を取得することが要求される。
【０００４】
上記のような状況の下、所望の情報を容易に取得するためのソフトウェアが盛んに開発されている。特に、音声指示に基づいて情報を入手したいというニーズが非常に高い。
【０００５】
このようなニーズに対応すべく、最近、ＶｏｉｃｅＸＭＬ（Ｖｏｉｃｅ　Ｅｘｔｅｎｓｉｂｌｅ　Ｍａｒｋｕｐ　Ｌａｎｇｕａｇｅ、以下、ＶＸＭＬと略記する）を用いてインターネットコンテンツを作成し、音声指示に基づいて情報を入手するためのソフトウエアが提案されている。このソフトウエアを用いると、電話等からＶＸＭＬサーバに音声指示を与えることによって、所望の情報を音声で取得することが可能となる。
【０００６】
ＶＸＭＬは、音声対応型のＷｅｂ記述言語であり、ユーザの問いかけに対して、どのように答えるか等の「対話フロー（シナリオ）」を記述するための言語である。たとえば、ＶＸＭＬを利用したシステムでは、ユーザに対して利用案内（ガイダンス）を読み上げたり、ユーザが音声で指定できる選択肢を読み上げたり、ユーザの音声内容に応じて別のシナリオを起動したりする。
【０００７】
「日経ＢＰ社、日経コミュニケーション、２００１／１２／１７号、１４０頁〜１４５頁」には、ＶＸＭＬについての記述がある。図１５は、ＶＸＭＬを利用した従来のシステムの構造を示す図である。図１５において、従来のシステムは、電話機９００と、電話網９０１と、ＶＸＭＬサーバ９０２と、ＶＸＭＬデータサーバ９０３と、音声認識サーバ９０４とを備える。
【０００８】
ＶＸＭＬサーバ９０２は、電話網を９０１を介して、電話機９００からの音声を受け付ける。音声認識サーバ９０４は、ＶＸＭＬサーバ９０２が受け付けた音声を分析し、予め登録されている辞書と照合して音声を文字データに変換する。音声認識サーバ９０４は、変換後の文字データをＶＸＭＬサーバ９０２に返す。ＶＸＭＬサーバ９０２は、音声認識サーバ９０４からの文字データに基づいて、必要なＶＸＭＬ文書をＶＸＭＬデータサーバ９０３から読み出し、合成音声に変換して出力する。電話機９００は、ＶＸＭＬサーバ９０２が出力した合成音声をスピーカから出力して、音声情報をユーザに提供する。このように、ユーザは、音声による指示を与えるだけで、所望の情報を音声で入手することができる。
【０００９】
【発明が解決しようとする課題】
しかし、ＶＸＭＬを利用したシステムは試験的な段階であり、ＶＸＭＬによる本格的なコンテンツが存在しないのが現状である。したがって、ＶＸＭＬによるコンテンツの数は、ＨＴＭＬによるコンテンツと比べて非常に少ない。現在豊富に存在するＨＴＭＬによるインターネットコンテンツのように、ＶＸＭＬによるインターネットコンテンツが普及するためには、新たにＶＸＭＬによるコンテンツを作成する必要がある。ところが、新たにＶＸＭＬによるコンテンツを作成するのは、非常に手間がかかる。
【００１０】
それゆえ、本発明の目的は、既存のＨＴＭＬデータを利用して、ＶＸＭＬデータを簡単に作成して利用することができる情報端末を提供することである。
【００１１】
【課題を解決するための手段】
第１の発明は、ＨＴＭＬデータを利用する情報端末であって、
所望のＨＴＭＬデータを取得する取得手段と、
取得手段が取得したＨＴＭＬデータをＶｏｉｃｅＸＭＬデータに変換する変換手段と、
変換手段によって得られるＶｏｉｃｅＸＭＬデータを構文解釈して実行する実行手段とを備える。
【００１２】
上記第１の発明により、ＨＴＭＬデータがＶｏｉｃｅＸＭＬデータに変換されることとなる。
【００１３】
第２の発明は、第１の発明に従属する発明であって、ＨＴＭＬデータは、複数のＨＴＭＬ要素から成り立っており、ＶｏｉｃｅＸＭＬデータは、複数のＶｏｉｃｅＸＭＬ要素から成り立っており、
変換手段は、
ＨＴＭＬ要素とＶｏｉｃｅＸＭＬ要素との対応関係が定義されている一次変換テーブルを記憶する一次変換テーブル記憶部と、
一次変換テーブルでは特定できないＶｏｉｃｅＸＭＬ要素上の属性値を、当該ＶｏｉｃｅＸＭＬ要素に対応しない他のＨＴＭＬ要素から取得するために、変換前のＨＴＭＬデータ上でのその取得先を定義した二次変換テーブルを記憶する二次変換テーブル記憶部と、
一次変換テーブルを参照して、ＨＴＭＬデータをＶｏｉｃｅＸＭＬ要素が集まった中間コードに変換する一次変換手段と、
二次変換テーブルを参照して、一次変換手段では特定できなかったＶｏｉｃｅＸＭＬ要素上の属性値を、ＨＴＭＬデータに含まれる他のＨＴＭＬ要素から取得して、中間コードを最終的なＶｏｉｃｅＸＭＬデータに変換する二次変換手段とを含む。
【００１４】
上記第２の発明により、二段階の単純なテーブル変換によって、ＨＴＭＬデータがＶｏｉｃｅＸＭＬデータに変換されることとなる。
【００１５】
第３の発明は、第１の発明に従属する発明であって、一次変換テーブルには、ユーザの操作慣れ度合いに応じてＨＴＭＬ要素とＶｏｉｃｅＸＭＬ要素との対応関係が定義されており、
一次変換手段は、ユーザの操作慣れ度合いに応じて中間コードを作成する。
【００１６】
上記第３の発明により、ユーザの慣れ度合いに応じたＶｏｉｃｅＸＭＬデータが作成されることとなる。
【００１７】
第４の発明は、第３の発明に従属する発明であって、さらに、操作慣れ度合いが登録されている慣れ度合い登録部と、
ユーザの操作履歴に基づいて、慣れ度合い登録部に登録されている操作慣れ度合いを自動的に変更する慣れ度合い変更手段とを備える。
【００１８】
上記第４の発明により、慣れ度合いが自動的に変更されることとなる。
【００１９】
第５の発明は、第１の発明に従属する発明であって、実行手段は、変換手段によって得られるＶｏｉｃｅＸＭＬデータの実行中にＨＴＭＬデータの取得指示が与えられた場合、取得手段に必要なＨＴＭＬデータを取得させ、当該ＨＴＭＬデータを変換手段に変換させる。
【００２０】
上記第５の発明により、ＶｏｉｃｅＸＭＬデータにＨＴＭＬデータのリンクが貼られていたとしても、そのＨＴＭＬデータを取得することが可能となる。
【００２１】
第６の発明は、第１の発明に従属する発明であって、実行手段は、ＶｏｉｃｅＸＭＬデータによる初期案内を実行する。
【００２２】
上記第６の発明により、音声操作による初期操作が可能となる。
【００２３】
第７の発明は、第１の発明に従属する発明であって、文字表示するための表示部をさらに備え、
実行手段は、音声出力を行う場合、出力音声に対応する文字を表示部に表示させる。
【００２４】
上記第７の発明により、出力音声に対応する文字が表示されることとなる。
【００２５】
第８の発明は、第１の発明に従属する発明であって、文字表示するための表示部をさらに備え、
実行手段は、音声が入力された場合、入力音声に対応する文字を表示部に表示させる。
【００２６】
上記第８の発明により、入力音声に対応する文字が表示されることとなる。
【００２７】
第９の発明は、ＨＴＭＬデータを利用するコンピュータ装置で実行されるプログラムであって、
所望のＨＴＭＬデータを取得するステップと、
取得したＨＴＭＬデータをＶｏｉｃｅＸＭＬデータに変換するステップと、
変換によって得られるＶｏｉｃｅＸＭＬデータを構文解釈して実行するステップとを備える。
【００２８】
第１０の発明は、第９の発明に従属する発明であって、ＨＴＭＬデータは、複数のＨＴＭＬ要素から成り立っており、ＶｏｉｃｅＸＭＬデータは、複数のＶｏｉｃｅＸＭＬ要素から成り立っており、
ＶｏｉｃｅＸＭＬデータに変換ステップでは、
ＨＴＭＬ要素とＶｏｉｃｅＸＭＬ要素との対応関係が定義されている一次変換テーブルを参照して、ＨＴＭＬデータをＶｏｉｃｅＸＭＬ要素が集まった中間コードに変換し、
一次変換テーブルでは特定できないＶｏｉｃｅＸＭＬ要素上の属性値を、当該ＶｏｉｃｅＸＭＬ要素に対応しない他のＨＴＭＬ要素から取得するために、変換前のＨＴＭＬデータ上でのその取得先を定義した二次変換テーブルを参照して、当該ＶｏｉｃｅＸＭＬ要素上の属性値を取得して、中間コードを最終的なＶｏｉｃｅＸＭＬデータに変換する。
【００２９】
第１１の発明は、第９の発明に従属する発明であって、ＶｏｉｃｅＸＭＬデータを構文解釈して実行するステップでは、
変換後のＶｏｉｃｅＸＭＬデータの実行中にＨＴＭＬデータの取得指示が与えられた場合、必要なＨＴＭＬデータを取得して、当該ＨＴＭＬデータをＶｏｉｃｅＸＭＬデータに変換する。
【００３０】
【発明の実施の形態】
（第１の実施形態）
図１は、本発明の第１の実施形態に係る情報端末１０の構成を示す図である。図１において、情報端末１０は、ＣＰＵ１と、ＲＡＭ２と、操作装置３と、通信装置４と、表示装置５と、音声出力装置６と、音声認識装置７と、記憶装置８とを備える。
【００３１】
記憶装置８は、ハードディスクや半導体メモリ等であって、一次変換テーブル、二次変換テーブル、ＨＴＭＬデータ、ＶＸＭＬデータ、変換プログラムおよびＶＸＭＬプログラムを格納している。ＨＴＭＬデータは、ＨＴＭＬで記述されたデータである。ＶＸＭＬデータは、ＶＸＭＬで記述されたデータである。変換プログラムは、ＨＴＭＬデータをＶＸＭＬデータに変換するためのプログラムである。ＶＸＭＬプログラムは、ＶＸＭＬデータを構文解釈して実行するプログラムである。
【００３２】
ＨＴＭＬやＶＸＭＬ等のＳＧＭＬ系言語では、論理構造を表現するためにタグと呼ばれる記号を用いる。タグには、開始タグと終了タグとが存在する。ＳＧＭＬ系言語では、開始タグと終了タグとの間に内容を記述する。開始タグ、内容および終了タグをあわせて、要素と呼ぶ。ＨＴＭＬデータおよびＶＸＭＬデータは、複数の要素で構成される。開始タグは、要素名、属性名（アトリビュート名ともいう）および属性値で構成される。要素名は、要素の大まかな役割を示す。属性名は、要素のより詳細な役割を示す。属性値は、要素名および属性名で指定されている役割を実行するための値である。
【００３３】
具体的には、ＳＧＭＬ形言語の要素は、
＜要素名　属性名＝”属性値”＞内容＜／要素名＞
といった構造となる。ここで、「＜要素名　属性名＝”属性値”＞」が開始タグ、「＜／要素名＞」が終了タグである。以下の説明では、要素と言った場合、開始タグ、内容および終了タグの全体を意味する他、開始タグのみ、終了タグのみも意味するものとする。
【００３４】
たとえば、ＨＴＭＬにおける「＜ａ　ｈｒｅｆ＝”ｆｉｌｅ．ｈｔｍｌ”＞ファイル名＜／ａ＞」では、「ａ」が要素名であり、「ｈｒｅｆ」が属性名であり、「ｆｉｌｅ．ｈｔｍｌ」が属性値であり、「ファイル名」が内容である。
【００３５】
一次変換テーブルには、原則として、ＨＴＭＬ上の要素（以下、ＨＴＭＬ要素という）に一対一に対応するＶＸＭＬ上の要素（以下、ＶＸＭＬ要素という）が定義されている。例外的に、文字サイズを示すタグなど、いずれのＶＸＭＬ要素にも対応しないＨＴＭＬ要素が存在するので、そのようなＨＴＭＬ要素については、無視すべきタグであるとして、一次変換テーブル上で定義されている。
【００３６】
あるＶＸＭＬ要素のある特別な属性値については、当該ＶＸＭＬ要素に対応しない他のＨＴＭＬ要素から取得する必要がある。このような特別な属性値をもつ属性名を特別アトリビュートと呼ぶことにする。二次変換テーブルには、変換前のＨＴＭＬデータ上において、特別アトリビュート値（特別アトリビュートの属性値のこと）の取得先が定義されている。
【００３７】
図２は、一次変換テーブルの一例を示す図である。図２において、ＨＴＭＬ要素上での「＊＊＊」（または「＃＃＃」）は、属性値または内容を示す。ＶＸＭＬ要素上での「＊＊＊」（または「＃＃＃」）は、一対一対応するＨＴＭＬ要素上での「＊＊＊」（または「＃＃＃」）と同一である。
【００３８】
例えば、ＨＴＭＬ要素「＜ＩＮＰＵＴ　ｔｙｐｅ＝”ｔｅｘｔ”　ｎａｍｅ＝”＊＊＊”＞」に対応するＶＸＭＬ要素は、「＜ｆｉｅｌｄ　ｎａｍｅ＝”＊＊＊”＞＜ｐｒｏｍｐｔ＞データ入力を行って下さい＜／ｐｒｏｍｐｔ＞＜／ｆｉｅｌｄ＞」である。この例のように、ＨＴＭＬ要素が開始タグのみであったとしても、対応するＶＸＭＬ要素では、ＨＴＭＬ要素での役割を音声で説明するために、内容を含めた形の要素となる場合がある。
【００３９】
また、例えば、ＨＴＭＬ要素「＜ＦＯＲＭ　ａｃｔｉｏｎ＝”＊＊＊”＞」に対応するＶＸＭＬ要素は、「＜ｆｏｒｍ＞」である。この例のように、ＨＴＭＬの開始タグとＶＸＭＬの開始タグとが一対一対応する場合もある。
【００４０】
さらに、文字サイズに関するＨＴＭＬ要素「＜Ｈ１＞」は、無視タグとして定義されている。
【００４１】
図２では、特別アトリビュート値が「￥￥￥」（または「？？？」）で示されている。例えば、ＶＸＭＬ要素「＜ｓｕｂｍｉｔ　ｎｅｘｔ＝”￥￥￥”　ｎａｍｅｌｉｓｔ＝”＊＊＊”＞」では、要素名「ｓｕｂｍｉｔ」の属性名「ｎｅｘｔ」が特別アトリビュートとなている。特別アトリビュート値は、二次変換テーブルでの定義に従い、一次変換テーブルにおいて一対一対応していない他のＨＴＭＬ要素から取得する必要がある。
【００４２】
図３は、二次変換テーブルの一例を示す図である。図３に示すように、二次変換テーブルには、特別アトリビュートの属性値を取得する先のＨＴＭＬ要素が定義されている。例えば、特別アトリビュート「ｓｕｂｍｉｔ　ｎｅｘｔ」の属性値は、ＨＴＭＬ要素「直近の＜ＦＯＲＭ　ａｃｔｉｏｎ＝”￥￥￥”＞」から取得すればよいことが定義されている。ここで「直近の＜ＦＯＲＭ　ａｃｔｉｏｎ＝”￥￥￥”＞」は、認識したＨＴＭＬタグが存在する行から最も近い若い行に存在するＨＴＭＬ要素「＜ＦＯＲＭ　ａｃｔｉｏｎ＝”￥￥￥”＞」から特別アトリビュート値を取得することを意味する。なお、これ以外に、特別アトリビュート値の取得先の指定方法としては、特定のタグ内に存在する属性値を取得先として指定する方法などがある。
【００４３】
ＣＰＵ１は、中央処理装置であって、記憶装置８に格納されている変換プログラム若しくはＶＸＭＬプログラムを実行することによって通信装置４、表示装置５、音声出力装置６、音声認識装置７および記憶装置８の動作を制御する。ＲＡＭ２は、ＣＰＵ１が読み出し／書き込みできる記憶装置である。
【００４４】
音声認識装置７は、ユーザが発する音声を認識し、文字データとしてＣＰＵ１に送る。音声出力装置６は、ＣＰＵ１からの命令に従い、合成音声を出力する。表示装置５は、ＣＰＵ１からの命令に従い、文字や画像等を表示する。操作装置３は、キーボードやマウス、ボタンスイッチ等であって、ユーザの操作に応じて、ＣＰＵ１の動作を制御するための信号を出力する。通信装置４は、ＣＰＵ１からの命令に従い、インターネットを介してＨＴＭＬデータやＶＸＭＬデータをダウンロードする。ダウンロードされたデータは、記憶装置８に格納される。
【００４５】
図４は、変換プログラムを実行したときのＣＰＵ１の動作を示すフローチャートである。以下、図４を参照しながら、変換プログラムを実行したときのＣＰＵ１の動作について説明する。
【００４６】
まず、ＣＰＵ１は、タグ単位毎にＨＴＭＬデータを先頭から順に認識する（ステップＳ１０１）。次に、ＣＰＵ１は、一次変換テーブルを参照する（ステップＳ１０２）。次に、ＣＰＵ１は、一次変換テーブルの参照結果に基づいて、対応するＶＸＭＬ要素を認識して、認識したＶＸＭＬ要素を中間コードとして、ＲＡＭ２上に順番に格納していく（ステップＳ１０３）。
【００４７】
図５は、上記ステップＳ１０３における中間コード格納処理の詳細を示すフローチャートである。以下、図５を参照しながら、中間コード格納処理について説明する。まず、ＣＰＵ１は、認識したＨＴＭＬタグが一次変換テーブル上でどのように対応付けられているか否かを判断する（ステップＳ１０３１）。
【００４８】
一次変換テーブル上でのＨＴＭＬタグの対応付けは、３種類のパターンに分類される。第１のパターンは、ＨＴＭＬタグ単体がＶＸＭＬ要素と対応付けられている場合である。図２の例では、たとえば、ＨＴＭＬタグ「＜ＦＯＲＭ　ａｃｔｉｏｎ＝”＊＊＊”＞」が第１のパターンによって対応付けられている。第２のパターンは、ＨＴＭＬタグが開始タグであるとき、当該開始タグから終了タグまでをまとめた形で、ＨＴＭＬタグがＶＸＭＬ要素と対応付けられている場合である。図２の例では、たとえば、ＨＴＭＬタグ「＜ａ　ｈｒｅｆ＝”＊＊＊”＞」が第２のパターンによって対応付けられている。第３のパターンは、ＨＴＭＬタグに対応付けられるＶＸＭＬ要素が存在しない場合である。図２の例では、たとえば、ＨＴＭＬタグ＜Ｈ１＞が第３のパターンによって対応付けられている。
【００４９】
上記ステップＳ１０３の判断において、認識したＨＴＭＬタグが第１のパターンによって対応付けられていると判断した場合、ＣＰＵ１は、ＨＴＭＬ要素から属性値を取得して、対応するＶＸＭＬ要素にその属性値を入力して中間コードを作成し（ステップＳ１０３２）、ステップＳ１０３５の動作に進む。
【００５０】
上記ステップＳ１０３１の判断において、認識したＨＴＭＬタグが第２のパターンによって対応付けられていると判断した場合、ＣＰＵ１は、ＨＴＭＬ要素から属性値および／または内容を取得して、対応するＶＸＭＬ要素にその属性値および／または内容を入力して中間コードを作成する（ステップＳ１０３３）。次に、ＣＰＵ１は、上記ステップＳ１０１でＨＴＭＬタグを認識する際、次の開始タグまで飛ばして認識するようにＲＡＭ２上に登録しておき（ステップＳ１０３４）、ステップＳ１０３５の動作に進む。ステップＳ１０３５の動作において、ＣＰＵ１は、作成した中間コードをＲＡＭ２上に順番に格納して処理を終了する。
【００５１】
上記ステップＳ１０３１の判断において、認識したＨＴＭＬタグが第３のパターンによって対応付けられていると判断した場合、ＣＰＵ１は、そのまま処理を終了する。
【００５２】
再び、図４に戻って説明を続ける。中間コードを作成したＣＰＵ１は、作成した中間コードに特別アトリビュートが存在するか否かを判断する（ステップＳ１０４）。存在しない場合、ＣＰＵ１は、ＨＴＭＬデータを全部変換し終えたか否か判断する（ステップＳ１０５）。全部変換し終えた場合、ＣＰＵ１は、ＲＡＭ２上の中間コードをＶＸＭＬデータとして記憶媒体８に格納し（ステップＳ１１０）、処理を終了する。一方、全部変換し終えていない場合、ＣＰＵ１は、ステップＳ１０１の動作に戻り、次のＨＴＭＬタグを認識する。この際、ＲＡＭ２上で次の開始タグまで飛ばしてタグ認識するように指定されている場合、ＣＰＵ１は、そこまで飛ばしてタグ認識を行う。
【００５３】
上記ステップＳ１０４の判断において、作成した中間コードに特別アトリビュートが存在すると判断した場合、ＣＰＵ１は、二次変換テーブルを参照する（ステップＳ１０６）。次に、ＣＰＵ１は、ＨＴＭＬデータ上において、二次変換テーブルで指定されている取得先から特別アトリビュート値を取得する（ステップＳ１０７）。次に、ＣＰＵ１は、取得した特別アトリビュート値をＲＡＭ２上に格納してある中間コードに挿入する（ステップＳ１０８）。
【００５４】
次に、ＣＰＵ１は、ＨＴＭＬデータを全部変換し終えたか否か判断する（ステップＳ１０９）。全部変換し終えた場合、ＣＰＵ１は、ＲＡＭ２上の中間コードをＶＸＭＬデータとして記憶媒体８に格納し（ステップＳ１１０）、処理を終了する。一方、全部変換し終えていない場合、ＣＰＵ１は、ステップＳ１０１の動作に戻り、次のＨＴＭＬタグを認識する。この際、ＲＡＭ２上で次の開始タグまで飛ばしてタグ認識するように指定されている場合、ＣＰＵ１は、そこまで飛ばしてタグ認識を行う。
【００５５】
図６は、変換前のＨＴＭＬデータおよび一次変換テーブルによって作成される中間コードの一例を示す図である。図７は、二次変換テーブルによって完成するＶＸＭＬデータの一例を示す図である。以下、図６および図７を参照しながら、変換プログラムを実行するＣＰＵ１の動作を具体的に説明する。
【００５６】
ＣＰＵ１は、変換前のＨＴＭＬデータを先頭のタグから順に読む。まず最初に、ＣＰＵ１は、ＨＴＭＬタグ「＜ＨＴＭＬ＞」を読み出す。ＣＰＵ１は、一次変換テーブルを参照して、これをＶＸＭＬ要素「＜ｖｘｍｌ＞」に変換する。次に、ＣＰＵ１は、ＨＴＭＬタグ「＜ＨＥＡＤ＞」を読み出す。一次変換テーブル上において、「＜ＨＥＡＤ＞＃＃＃＜／ＨＥＡＤ＞」は無視タグとして定義されているので、ＣＰＵ１は、中間コードを作成せずに次のタグを読む。ＨＴＭＬタグ「＜ＢＯＤＹ＞」についても、ＣＰＵ１は、無視して次のタグに進む。
【００５７】
次に、ＣＰＵ１は、ＨＴＭＬタグ「＜ＦＯＲＭ　ａｃｔｉｏｎ＝”送信ＵＲＬ”＞」を読み出す。これに対し、ＣＰＵ１は、一次変換テーブルを参照して、これをＶＸＭＬ要素「＜ｆｏｒｍ＞」に変換する。次に、ＣＰＵ１は、ＨＴＭＬタグ「＜ＩＮＰＵＴ　ｔｙｐｅ＝”ｔｅｘｔ”　ｎａｍｅ＝”ＩｎｐｕｔＤａｔａ”＞」を読み出す。これに対し、ＣＰＵ１は、これをＶＸＭＬ要素「＜ｆｉｅｌｄ　ｎａｍｅ＝”ＩｎｐｕｔＤａｔａ＞＜ｐｒｏｍｐｔ＞データ入力を行って下さい＜／ｐｒｏｍｐｔ＞」に変換する。
【００５８】
次に、ＣＰＵ１は、ＨＴＭＬタグ「＜ＩＮＰＵＴ　ｔｙｐｅ＝”ｓｕｂｍｉｔ”　ｎａｍｅ＝”指定”＞」を読み出す。これに対し、ＣＰＵ１は、これをＶＸＭＬ要素「＜ｓｕｂｍｉｔ　ｎｅｘｔ＝”￥￥￥”　ｎａｍｅｌｉｓｔ＝”指定”＞」に変換し、中間コードを作成する。ここで、属性「ｓｕｂｍｉｔ　ｎｅｘｔ」は、特別アトリビュートであるので、その属性値Ｓａ１は「￥￥￥」となっている。特別アトリビュートが含まれている場合、ＣＰＵ１は、二次変換テーブルを参照して、特別アトリビュート値の取得先を認識する。特別アトリビュート「ｓｕｂｍｉｔ　ｎｅｘｔ」の取得先は、先ほど認識したＨＴＭＬタグの直近に存在するＨＴＭＬ要素「＜ＦＯＲＭ　ａｃｔｉｏｎ＝”￥￥￥”＞」である。したがって、ＣＰＵ１は、ＨＴＭＬタグ「＜ＩＮＰＵＴ　ｔｙｐｅ＝”ｓｕｂｍｉｔ”　ｎａｍｅ＝”指定”＞」の２行上に存在するＨＴＭＬ要素「＜ＦＯＲＭ　ａｃｔｉｏｎ＝”￥￥￥”＞」から特別アトリビュート値Ｓｂ１として「送信ＵＲＬ」を取得する。ＣＰＵ１は、取得した特別アトリビュート値「送信ＵＲＬ」を中間コード「＜ｓｕｂｍｉｔ　ｎｅｘｔ＝”￥￥￥”　ｎａｍｅｌｉｓｔ＝”指定”＞」の「￥￥￥」に挿入する。挿入後のコードが図７に示すＶＸＭＬデータの６行目に示されている。
【００５９】
以下、同様にして、ＣＰＵ１は、順番にＨＴＭＬタグを読み込んでいき、ＶＸＭＬ中間コードを作成する。作成した中間コードに特別アトリビュートが含まれる場合、ＣＰＵ１は、適時、二次変換テーブルを参照して、特別アトリビュート値をＨＴＭＬデータから取得する。図６の例では、属性値Ｓａ２，Ｓａ３が特別アトリビュートの属性値となっている。ＨＴＭＬデータ上、属性値Ｓａ２，Ｓａ３には、特別アトリビュート値Ｓｂ２，Ｓｂ３が対応する。図７に示すように、ＣＰＵ１は、特別アトリビュート値も全て挿入して、最終的なＶＸＭＬデータを完成する。
【００６０】
図８は、ＶＸＭＬプログラムを実行したときのＣＰＵ１の動作を示すフローチャートである。以下、図８を参照しながら、ＶＸＭＬプログラムを実行したときのＣＰＵ１の動作について説明する。まず、ＣＰＵ１は、記憶装置８から初期案内用のＶＸＭＬデータを読み出す（ステップＳ６０１）。
【００６１】
次に、ＣＰＵ１は、読み出したＶＸＭＬデータを順次構文解釈して実行する（ステップＳ６０２）。次に、ＣＰＵ１は、構文を実行したことによって、インターネットを介してデータを取得するための音声指示がユーザから与えられたか否かを判断する（ステップＳ６０３）。インターネットからデータを取得するための指示が与えられていない場合、ＣＰＵ１は、ステップＳ６０２の動作に戻り、ＶＸＭＬデータの構文解釈実行を続ける。一方、インターネットからデータを取得するための指示が与えられた場合、ＣＰＵ１は、取得すべきデータの種類を判断する（ステップＳ６０４）。
【００６２】
取得すべきデータの種類がＨＴＭＬデータである場合、ＣＰＵ１は、通信装置４に取得元のＵＲＬを送信し、ＨＴＭＬデータをダウンロードするように指示を与える（ステップＳ６０５）。次に、ＣＰＵ１は、通信装置４が受信したＨＴＭＬデータを取得する（ステップＳ６０６）。次に、ＣＰＵ１は、変換プログラムを実行して、取得したＨＴＭＬデータをＶＸＭＬデータに変換し（ステップＳ６０７）、ステップＳ６０２の動作に戻って、変換後のＶＸＭＬデータを構文解釈して実行する。
【００６３】
一方、ステップＳ６０４の動作において、取得すべきデータの種類がＶＸＭＬデータであると判断した場合、ＣＰＵ１は、通信装置４に取得元のＵＲＬを送信し、ＶＸＭＬデータをダウンロードするように指示を与える（ステップＳ６０８）。次に、ＣＰＵ１は、通信装置４が受信したＶＸＭＬデータを取得する（ステップＳ６０９）。次に、ＣＰＵ１は、ステップＳ６０２の動作に戻って、取得したＶＸＭＬデータを構文解釈して実行する。なお、ステップＳ６０３の判断において、ＣＰＵ１は、データの取得先が記憶装置８であるか否かを判断して、ステップＳ６０６またはＳ６０９において、記憶装置８からデータを取得するようにしてもよい。
【００６４】
このように、第１の実施形態では、ＨＴＭＬ要素とＶＸＭＬ要素との対応関係が定義されている一次変換テーブルを参照して、まず、ＨＴＭＬデータを大まかな中間コードに変換する。その後、二次変換テーブルを参照して、一次変換テーブルでは特定できない特別アトリビュート値を変換前のＨＴＭＬデータ上から取得して、最終的にＶＸＭＬデータを完成する。これにより、二段階のテーブル変換という単純な処理によって、複雑なＨＴＭＬデータをＶＸＭＬデータに簡単に変換することが可能となる。したがって、既存のＨＴＭＬデータを利用して、ＶＸＭＬデータを簡単に作成して利用することができる情報端末を提供することが可能となる。
【００６５】
また、変換後のＶＸＭＬデータにＨＴＭＬデータのリンクが貼られていたとしても、通信装置を介してＨＴＭＬデータを動的に取得し、ＶＸＭＬデータに変換することが可能となるので、全てをＶＸＭＬデータによって処理することが可能となる。これは、カーナビゲーション装置や携帯電話を用いて情報を取得する場合など、全てを音声による指示で操作することが可能となる。また、初心者にとっても、容易に操作を行うことができる情報端末が提供される。
【００６６】
なお、変換プログラムでは、ＨＴＭＬデータを一括でＶＸＭＬ上の中間コードに変換した後、特別アトリビュート値を一括で挿入するようにしてもよい。
【００６７】
なお、市販のＨＴＭＬデータ作成ソフトを利用してＨＴＭＬデータを作成した後、変換プログラムを用いてＶＸＭＬデータを作成するといった使い方も有効である。これにより、独自のＶＸＭＬデータを容易に作成することが可能となる。
【００６８】
（第２の実施形態）
図９は、第２の実施形態に係る一次変換テーブルの一例を示す図である。第２の実施形態に係る一次変換テーブルは、操作の慣れ度合い（以下、レベルという）に応じてＨＴＭＬ要素に対応するＶＸＭＬ要素を定義する。レベルは、記憶装置８に登録されている。
【００６９】
たとえば、初級レベルでは、ユーザが入力した音声を再確認することができるＶＸＭＬ要素が定義されている。確認作業を要する場合、別途、入力された音声を文字データに変換するための文法ファイルが必要な場合がある。したがって、一次変換テーブルでは、ＶＸＭＬ要素に対応する文法ファイルも併せて定義されている。なお、レベルに関係なくＶＸＭＬ要素が同一の場合も存在する。
【００７０】
たとえば、図９に示すように、ＨＴＭＬ要素「＜ＩＮＰＵＴ　ｔｙｐｅ＝”ｓｕｂｍｉｔ”　ｎａｍｅ＝”＊＊＊”＞」には、初級レベルとして、入力された音声「＊＊＊」で良いか否かを確認するためのＶＸＭＬ要素が対応付けられている。このＶＸＭＬ要素を実行するためには文法ファイルが必要であるので、一次変換テーブルでは、対応する文法ファイルも同時に定義されている。上級レベルなど、文法ファイルの定義が不要な場合は、対応する文法ファイルの定義は存在しない。
【００７１】
図１０は、第２の実施形態に係る変換プログラムを実行する際のＣＰＵ１の動作を示すフローチャートである。以下、図１０を参照しながら、第２の実施形態に係る変換プログラムを実行する際のＣＰＵ１の動作について説明する。なお、第１の実施形態に係る変換プログラムと同様の動作を行うステップについては、同一のステップ番号を付し、説明を簡単にする。
【００７２】
まず、ＣＰＵ１は、タグ単位毎にＨＴＭＬデータを先頭から順に認識する（ステップＳ１０１）。次に、ＣＰＵ１は、記憶装置８に登録されているレベルを認識に、レベルに応じて一次変換テーブルを参照する（ステップＳ３０２）。次に、ＣＰＵ１は、認識したレベルに対応するＶＸＭＬ要素を取得して中間コードを作成する（ステップＳ３０３）。このとき、必要であれば、ＣＰＵ１は、一次変換テーブルに定義されている文法ファイルを取得して、ＲＡＭ２に格納しておく。
【００７３】
次に、ＣＰＵ１は、作成した中間コードに特別アトリビュート値を挿入して中間コードを完成させる（ステップＳ１０４〜Ｓ１０９）。その後、ＣＰＵ１は、完成した中間コードをＶＸＭＬデータとし、ＲＡＭ２に格納されている文法ファイルと共に記憶媒体８に格納し（ステップＳ３１０）、処理を終了する。
【００７４】
このように、第２の実施形態では、操作の慣れ度合いに応じて、ＨＴＭＬデータをＶＸＭＬデータに変換することができるので、初心者から上級者まで、幅広くＶＸＭＬデータを利用することができる情報端末を提供することが可能となる。慣れ度合いが低いユーザに対しては、より詳細な入力サポートや入力確認を提供することができる。慣れ度合いが高いユーザに対しては、入力サポートや入力確認を簡素化することができる。
【００７５】
（第３の実施形態）
第３の実施形態では、ＶＸＭＬプログラム上での構文解釈実行処理（図８、ステップＳ６０２参照）に特徴がある。図１１は、第３の実施形態に係る構文解釈実行処理を行ったときのＣＰＵ１の動作を示すフローチャートである。以下、図１１を参照しながら、構文解釈実行処理を行ったときのＣＰＵ１の動作について説明する。まず、ＣＰＵ１は、ＶＸＭＬデータの構文を解釈する（ステップＳ２０１）。次に、ＣＰＵ１は、解釈した構文を順序に従って実行する（ステップＳ２０２）。
【００７６】
次に、ＣＰＵ１は、構文を実行した際、音声を出力したか否かを判断する（ステップＳ２０３）。音声出力した場合、ＣＰＵ１は、出力音声に対応する文字を表示装置５に表示させ（ステップＳ２０４）、処理を終了する。一方、音声を出力していない場合、ＣＰＵ１は、ステップＳ２０５の動作に進む。
【００７７】
ステップＳ２０５の動作において、ＣＰＵ１は、構文を実行した際、音声が入力されたか否かを判断する。音声が入力されている場合、ＣＰＵ１は、入力音声を文字にして表示部５に表示させ（ステップＳ２０６）、処理を終了する。一方、音声が入力されていない場合、ＣＰＵ１は、そのまま処理を終了する。
【００７８】
このように、第３の実施形態では、サポート表示として、出力音声および入力音声が文字としても同時に表示されるので、音声と同時に文字も見ながらＶＸＭＬデータに基づく操作を行うことができる。したがって、初心者等のＶＸＭＬデータに基づく操作が不慣れなユーザでも、操作が容易となる。
【００７９】
また、ユーザ側での聞き逃しや聞き間違いを回避することができる。
【００８０】
（第４の実施形態）
上記第２の実施形態では、ユーザレベルに応じて、丁寧に音声案内を行うことを目的とした。しかし、ユーザは、操作に慣れてくれば、丁寧な音声案内が煩わしく感じる。第４の実施形態では、操作の慣れ度合いに応じて、レベルを自動的に変更する。ＣＰＵ１は、ＶＸＭＬプログラムの実行に先立ち、レベル変更プログラムを実行して、必要ならばユーザのレベルを変更する。
【００８１】
第４の実施形態では、記憶装置８にユーザの使用履歴を管理するための履歴管理テーブルが格納されている。図１２は、記憶装置８に格納されている履歴管理テーブルの一例を示す図である。図１２に示すように、履歴管理テーブルには、ユーザ名に対応して、レベル、利用履歴、および繰り返し確認履歴が登録されている。利用履歴は、ＶＸＭＬデータを利用した履歴を示す。繰り返し確認履歴は、音声入力に失敗したために、ユーザが再度の音声入力を行った履歴を示す。
【００８２】
ＣＰＵ１は、ＶＸＭＬプログラムにおける構文解釈実行処理中に履歴管理テーブルを作成していく。図１３は、第４の実施形態に係る構文解釈実行処理（図８、ステップＳ６０２参照）を行うときのＣＰＵ１の動作を示すフローチャートである。以下、図１３を参照しながら、構文解釈実行処理を行うときのＣＰＵ１の動作について説明する。
【００８３】
まず、ＣＰＵ１は、ＶＸＭＬデータを読み出した日時を利用履歴として履歴管理テーブルに登録する（ステップＳ４０１）。次に、ＣＰＵ１は、ＶＸＭＬデータの構文を解釈する（ステップＳ４０２）。次に、ＣＰＵ１は、解釈した構文を実行する（ステップＳ４０３）。次に、ＣＰＵ１は、音声の再入力処理を実行したか否かを判断する（ステップＳ４０４）。再入力処理があった場合、ＣＰＵ１は、現在の時刻を繰り返し確認履歴として履歴管理テーブルに登録し（ステップＳ４０５）、処理を終了する。再入力処理がなかった場合、ＣＰＵ１は、そのまま処理を終了する。
【００８４】
図１４は、レベル変更プログラムを実行したときのＣＰＵ１の動作を示すフローチャートである。以下、図１４を参照しながら、レベル変更プログラムを実行したときのＣＰＵ１の動作について説明する。
【００８５】
まず、ＣＰＵ１は、履歴管理テーブルを参照する（ステップＳ５０１）。次に、ＣＰＵ１は、履歴管理テーブルにおける利用履歴を参照して利用回数を算出し、繰り返し確認履歴を参照して音声再入力の回数を算出し、利用回数から音声再入力回数を差し引いた数が基準値より大きいか否かを判断する（ステップＳ５０２）。基準値より大きい場合、音声の再入力頻度が少なくなっていることを意味するので、ＣＰＵ１は、履歴管理テーブルに登録されているレベルをアップし（ステップＳ５０３）、処理を終了する。一方、基準値以下である場合、音声の再入力頻度が多く、操作に不慣れであることを意味するので、ＣＰＵ１は、ユーザレベルを下げて（ステップＳ５０４）、処理を終了する。上記ステップＳ５０３において、最高レベルまで達している場合は、ＣＰＵ１は、レベルの変更を行わないものとする。また、上記ステップＳ５０４において、最低レベルまで達している場合は、ＣＰＵ１は、レベルの変更を行わないものとする。
【００８６】
このように、第４の実施形態では、操作の慣れ度合いに応じてレベルを自動的に変更するので、操作の慣れ度合いに応じて、ＶＸＭＬデータを自動的に変換する情報端末を提供することが可能となる。
【００８７】
【発明の効果】
以上のように本発明は、ＨＴＭＬデータをＶＸＭＬデータに変更することができるので、対話形式の音声操作が可能なＶＸＭＬデータを簡単に作成して利用することが可能となる。
【００８８】
また、ＨＴＭＬ要素とＶＸＭＬ要素との対応関係が定義されている一次変換テーブルを参照して、まず、ＨＴＭＬデータを大まかな中間コードに変換する。その後、二次変換テーブルを参照して、一次変換テーブルでは特定できない属性値値を変換前のＨＴＭＬデータ上から取得して、最終的にＶＸＭＬデータを完成する。これにより、二段階のテーブル変換という単純な処理によって、複雑なＨＴＭＬデータをＶＸＭＬデータに簡単に変換することが可能となる。したがって、既存のＨＴＭＬデータを利用して、ＶＸＭＬデータを簡単に作成して利用することができる情報端末を提供することが可能となる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係る情報端末１０の構成を示す図である。
【図２】第１の実施形態に係る一次変換テーブルの一例を示す図である。
【図３】第１の実施形態に係る二次変換テーブルの一例を示す図である。
【図４】第１の実施形態に係る変換プログラムを実行したときのＣＰＵ１の動作を示すフローチャートである。
【図５】ステップＳ１０３における中間コード格納処理の詳細を示すフローチャートである。
【図６】変換前のＨＴＭＬデータおよび一次変換テーブルによって作成される中間コードの一例を示す図である。
【図７】二次変換テーブルによって完成するＶＸＭＬデータの一例を示す図である。
【図８】第１の実施形態に係るＶＸＭＬプログラムを実行したときのＣＰＵ１の動作を示すフローチャートである。
【図９】第２の実施形態に係る一次変換テーブルの一例を示す図である。
【図１０】第２の実施形態に係る変換プログラムを実行する際のＣＰＵ１の動作を示すフローチャートである。
【図１１】第３の実施形態に係る構文解釈実行処理を行ったときのＣＰＵ１の動作を示すフローチャートである。
【図１２】記憶装置８に格納されている履歴管理テーブルの一例を示す図である。
【図１３】第４の実施形態に係る構文解釈実行処理（図８、ステップＳ６０２参照）を行うときのＣＰＵ１の動作を示すフローチャートである。
【図１４】レベル変更プログラムを実行したときのＣＰＵ１の動作を示すフローチャートである。
【図１５】ＶＸＭＬを利用した従来のシステムの構造を示す図である。
【符号の説明】
１０　情報端末
１　ＣＰＵ
２　ＲＡＭ
３　操作装置
４　通信装置
５　表示装置
６　音声出力装置
７　音声認識装置
８　記憶装置
【図１】
2004030395.tif 000003
【図２】
2004030395.tif 000004
【図３】
2004030395.tif 000005
【図４】
2004030395.tif 000006
【図５】
2004030395.tif 000007
【図６】
2004030395.tif 000008
【図７】
2004030395.tif 000009
【図８】
2004030395.tif 000010
【図９】
2004030395.tif 000011
【図１０】
2004030395.tif 000012
【図１１】
2004030395.tif 000013
【図１２】
2004030395.tif 000014
【図１３】
2004030395.tif 000015
【図１４】
2004030395.tif 000016
【図１５】
2004030395.tif 000017