(57)【要約】    【課題】  ルールの分割、修正などの編集作業を、ウィンドウを切り替えることなく、簡単に行うことができる音声認識文法作成装置を提供する。    【解決手段】  音声認識文法作成装置においては、ＧＵＩ（グラフィカルユーザインタフェース）を用いて、ルール定義の左辺であるルール名と、ルール定義の右辺における単語およびルール参照とがノードとして表示され、左辺のノードと右辺のノードとの間をリンクで接続される。これにより、ルールの編集が行われる。ここで、同一グラマ上にある各ルールは同一画面上に表示され、各ルール間でのノードおよびリンクの入れ替えが同一画面上で行うことが可能である。【選択図】      図４
2005351980.tif 000002
【特許請求の範囲】
【請求項１】
グラフィカルユーザインタフェースを用いて、ルール定義の左辺であるルール名と、ルール定義の右辺における単語およびルール参照とをノードとして表示し、左辺のノードと右辺のノードとの間をリンクで接続することにより、ルールの編集を行う編集手段を備える音声認識文法作成装置において、
前記編集手段は、同一グラマ上にある各ルールを同一画面上に表示し、各ルール間でのノードおよびリンクの入れ替えを同一画面上で行うことが可能であることを特徴とする音声認識文法作成装置。
【請求項２】
前記編集手段による編集結果を、音声認識に必要な文法情報のみのものとして保存する第１の保存形態と、前記編集手段による編集結果を、音声認識に必要な文法情報とノード、リンクのそれぞれの位置および形状の情報とを含むものとして保存する第２の保存形態とのそれぞれの形態で読み出し可能に保存することが可能な保存手段を備えることを特徴とする請求項１記載の音声認識文法作成装置。
【請求項３】
グラマ内のルール名や単語を管理する管理手段を備え、
前記管理手段は、ルール定義の右辺中にルール参照ノードが作成されると、ルール定義の左辺に、前記作成されたルール参照ノードに対応するルール名ノードを自動的に生成することを特徴とする請求項１記載の音声認識文法作成装置。
【請求項４】
前記管理手段は、ルール定義の右辺中のルール参照ノードが新たに作成された際に、ルール定義の左辺に、前記作成されたルール参照ノードに対応するルール名ノードが既に存在する場合、該ルール名ノードを新たに生成することを禁止することを特徴とする請求項３記載の音声認識文法作成装置。
【請求項５】
前記管理手段は、ルール定義の右辺中のルール参照ノードのルール参照名が変更されると、ルール定義の左辺に、前記ルール参照名が変更されたルール参照ノードに対応するルール名ノードを自動的に生成することを特徴とする請求項３または４記載の音声認識文法作成装置。
【請求項６】
前記管理手段は、ルール定義の左辺のルール名ノードの名称が変更されると、該ルールを参照している全てのルール参照ノードのルール参照名を変更することを特徴とする請求項３記載の音声認識文法作成装置。
【請求項７】
複数のノードおよびリンクを複製し、該複製したものを貼り付ける貼り付け手段を備え、
前記貼り付け手段は、貼り付け対象となるルール定義の左辺のルール名ノードが同一グラマ上に既にあると、貼り付け不可とすることを特徴とする請求項３記載の音声認識文法作成装置。
【請求項８】
グラフィカルユーザインタフェースを用いて、ルール定義の左辺であるルール名と、ルール定義の右辺における単語およびルール参照とをノードとして表示し、左辺のノードと右辺のノードとの間をリンクで接続することにより、ルールの編集を行う音声認識文法作成方法において、
同一グラマ上にある各ルールを同一画面上に表示し、各ルール間でのノードおよびリンクの入れ替えを同一画面上で行うことが可能であることを特徴とする音声認識文法作成方法。
【請求項９】
音声認識文法作成方法をコンピュータにより実施可能にするためのプログラムであって、
グラフィカルユーザインタフェースを用いて、ルール定義の左辺であるルール名と、ルール定義の右辺における単語およびルール参照とをノードとして表示し、左辺のノードと右辺のノードとの間をリンクで接続することにより、ルールの編集を行う編集モジュールを有し、
前記編集モジュールは、同一グラマ上にある各ルールを同一画面上に表示し、各ルール間でのノードおよびリンクの入れ替えを同一画面上で行うことが可能であることを特徴とするプログラム。
【請求項１０】
請求項９記載のプログラムをコンピュータ読み取り可能に格納したことを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声認識可能な語や文を記述して文法として作成する音声認識文法作成装置、音声認識文法作成方法、プログラムおよび記憶媒体に関する。
【背景技術】
【０００２】
従来、音声認識装置においては、予め認識可能な内容を文法として記述する場合、文法を拡張ＢＮＦ形式などで記述することが一般的に行われている。また、グラフィカルユーザインタフェースを用いて、記述する文法を表示、編集するツールがある。このようなツールとしては、例えば、ルール内の枝が並列にある部分を表形式で表示するものがある（例えば特許文献１を参照）。但し、このツールは、木構造やネットワークでの表示を行うものではない。また、このツールは、文法をルール単位で表示、編集するものであって、複数のルールを同一画面上で編集することができず、ルールの分割や統合を行う場合の編集には、画面の切り替えなどが必要である。また、このツールは、文法としての整合性を重視しており、木構造やネットワーク構造上の、枝を展開する形での編集方法（幹から枝を伸ばしたり、縮めたりするもので、浮遊する枝を持つことはできない）であるため、編集の自由度が低い。
【０００３】
さらに、知識ベースの知識の記述を木構造で編集する方法がある（例えば特許文献２を参照）。この木構造の編集方法は、木のルートに接続していない枝を扱うことができないので、この方法を音声認識の文法に適用する場合、どのルールにも属していない単語やルール参照などは扱うことができないことになる。また、上記木構造の編集方法は、グラマを拡張ＢＮＦの記述方式で記述することができないので、編集結果の保存を拡張ＢＮＦの記述方式で行うことができない。
【特許文献１】特開平０８−０４４３８４号公報
【特許文献２】特開平０８−１４７１６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上述した方法を用いて、音声認識可能な語や文を記述して文法として作成する場合、ユーザは、ルールを作成している最中に、その一部分を別のルールとして定義し、また別のルールにマージするなどの操作を行うことがある。その場合、画面を切り替えて編集を行う必要があるので、操作が煩雑になり、見落としなどが発生する可能性がある。
【０００５】
また、ルールの整理中に、一時的にルールに属していないものを記述する必要が生じる場合がある。特に日本語のように、語の表記と発音が一つに決定されないものに対して、属するルールがまだ決定されていない状態でその語の表記と発音をあるルールから除外するために削除すると、属するルールが決定された段階で新たに表記と発音の対を入力しなおす必要があり、余分な手間が掛かる。
【０００６】
本発明の目的は、ルールの分割、修正などの編集作業を、ウィンドウを切り替えることなく、簡単に行うことができる音声認識文法作成装置、音声認識文法作成方法、プログラムおよび記憶媒体を提供することにある。
【課題を解決するための手段】
【０００７】
本発明は、上記目的を達成するため、グラフィカルユーザインタフェースを用いて、ルール定義の左辺であるルール名と、ルール定義の右辺における単語およびルール参照とをノードとして表示し、左辺のノードと右辺のノードとの間をリンクで接続することにより、ルールの編集を行う編集手段を備える音声認識文法作成装置において、前記編集手段は、同一グラマ上にある各ルールを同一画面上に表示し、各ルール間でのノードおよびリンクの入れ替えを同一画面上で行うことが可能であることを特徴とする音声認識文法作成装置を提供する。
【０００８】
本発明は、上記目的を達成するため、グラフィカルユーザインタフェースを用いて、ルール定義の左辺であるルール名と、ルール定義の右辺における単語およびルール参照とをノードとして表示し、左辺のノードと右辺のノードとの間をリンクで接続することにより、ルールの編集を行う音声認識文法作成方法において、同一グラマ上にある各ルールを同一画面上に表示し、各ルール間でのノードおよびリンクの入れ替えを同一画面上で行うことが可能であることを特徴とする音声認識文法作成方法を提供する。
【０００９】
本発明は、上記目的を達成するため、音声認識文法作成方法をコンピュータにより実施可能にするためのプログラムであって、グラフィカルユーザインタフェースを用いて、ルール定義の左辺であるルール名と、ルール定義の右辺における単語およびルール参照とをノードとして表示し、左辺のノードと右辺のノードとの間をリンクで接続することにより、ルールの編集を行う編集モジュールを有し、前記編集モジュールは、同一グラマ上にある各ルールを同一画面上に表示し、各ルール間でのノードおよびリンクの入れ替えを同一画面上で行うことが可能であることを特徴とするプログラムを提供する。
【００１０】
本発明は、上記目的を達成するため、上記プログラムをコンピュータ読み取り可能に格納したことを特徴とする記憶媒体を提供する。
【発明の効果】
【００１１】
本発明によれば、ルールの分割、修正などの編集作業を、ウィンドウを切り替えることなく、簡単に行うことができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態について図面を参照しながら説明する。
【００１３】
図１は本発明の一実施の形態に係る音声認識文法作成装置の構成を示すブロック図である。
【００１４】
音声認識文法作成装置は、図１に示すように、文字・操作入力部１０１、画像表示部１０２、画像編集管理部１０３、グラマ内部表現管理部１０４、テキストグラマ変換部１０５、およびファイル入出力部１０６を備える。
【００１５】
文字・操作入力部１０１は、キーボードやマウスなどからなる。画像表示部１０２は、編集中のグラマをグラフィカルに表示するための液晶表示装置などからなる。画像編集管理部１０３は、ユーザによる文字・操作入力部１０１を用いた編集操作を入力し、入力された編集操作に応じて編集中の画像データの編集、管理などを行う。グラマ内部表現管理部１０４は、グラフィカルに表示される文法を、グラマの内部表現に変換し、管理する。テキストグラマ変換部１０５は、グラマの内部表現からテキストグラマへの変換、またはその逆の変換を行う。ファイル入出力部１０６は、編集したグラフィカルに表示されている画像データやテキストグラマに変換されたグラマをファイルとして入出力する。
【００１６】
次に、ユーザが右辺のルール参照のノードを作成したときの処理について図２および図３を参照しながら説明する。図２はユーザが右辺のルール参照ノードを作成したときの処理の手順を示すフローチャート、図３は図２の処理に従って遷移する編集画面例を示す図である。
【００１７】
ここでは、最初に、画像表示部１０２に、図３（ａ）に示すような、ユーザがグラマを新規作成したときの状態の画面３０１が表示されているとする。この画面３０１上には、デフォルトのスタートルールとして、自動的に作成された四隅が丸い長方形のアイコンの「Ｓｔａｒｔ」が表示されている。そして、画面３０１上で、ユーザは、「Ｓｔａｒｔ」の右辺のノードを生成し、リンク付けすることにより、ルールを記述する。
【００１８】
上記画面３０１上では、図２に示すように、まず、右辺のルール参照が作成され、このルール参照に「駅名」というルール参照名が入力される（ステップＳ２０１）。このルール参照名が入力された状態は、図３（ｂ）に示す画面３０２で表される。次いで、左辺のルール名ノードが登録されているか否かのチェックが行われる（ステップＳ２０２）。ここで、左辺のルール名ノードが登録されていないと判定された場合は、ルール名ノードが作成される（ステップＳ２０３）。この場合の状態は、図３（ｃ）に示す画面３０３で表される。この画面３０３においては、四隅が丸い長方形のアイコンでルール名ノードとしての「駅名」ノードが左下に表示される。そして、本処理は終了する。
【００１９】
上記ステップＳ２０２において左辺のルール名ノードが登録されていると判定された場合は、本処理は終了する。
【００２０】
次に、既に登録されているルール名ノードのルール参照ノードの名称が変更された場合について図４を参照しながら説明する。図４（ａ）は既に登録されているルール名ノードのルール参照ノードが表示されている画面例を示す図、図４（ｂ）はユーザにより３つ目のルール参照ノードの「駅名」を「空港」という名称に変更した場合の画面例を示す図、図４（ｃ）は図４（ｂ）の３つ目のルール参照ノードの名称の変更に伴い新たなルール名ノードが作成された画面例を示す図である。
【００２１】
例えば図４（ａ）に示す画面４０１の場合のように、３つ目のルール参照ノードとして「駅名」が作成された場合、そのルール参照ノードに対するルール名ノードの「駅名」は、既に登録されているので、３つ目のルール参照ノードの「駅名」に対しては、そのルール名ノードは作成されない。すなわち、同じ名称のルール名ノードは作成されない。
【００２２】
上記画面４０１に対して、図４（ｂ）に示す画面４０２のように、３つ目のルール参照ノードの「駅名」がユーザにより「空港」という名称に変更される場合、「空港」というルール名ノードがないので、図４（ｃ）に示す画面４０３のように、「空港」というルール名ノードが作成され、「駅名」のルール名ノードの下に追加される。
【００２３】
次に、ルール名ノードの名称（ルール名）を変更した場合の処理について図５および図６を参照しながら説明する。図５はルール名ノードの名称を変更した場合の処理の手順を示すフローチャート、図６（ａ）は「空港」というルール名ノードに対してその名称を「空港名」と変更した場合の画面例を示す図、図６（ｂ）は図６（ａ）のルール名ノードの名称の変更に伴いルール参照ノードの名称が変更された画面例を示す図である。
【００２４】
ルール名ノードの名称が変更された場合、そのルールを参照している右辺のルール参照ノードの名称を一括して変換する処理が行われる。具体的には、図５に示すように、まず、ルール名ノードに対する名称（ルール名）変更が受け入れられる（ステップＳ５０１）。この場合は、例えば図６（ａ）に示す画面６０１のように、「空港」というルール名ノード上で、その名称が「空港名」に変更される場合である。
【００２５】
次いで、同一グラマ上のルールの右辺のノードが１つ取り出され（ステップＳ５０２）、右辺ノードの取出しが全ての左辺のノードに対して終了したか否かの判定が行われる（ステップＳ５０３）。ここで、右辺のノードの取出しが全ての左辺のノードに対して終了していない場合、取り出された右辺のノードに対して、その名称の参照先であるルール名ノードの名称（ルール名）が変更されたか否かの判定が行われる（ステップＳ５０４）。ここで、取り出された右辺のノードの名称の参照先であるルール名ノードの名称（ルール名）が変更されている場合、取り出された右辺のノードの名称が変更後のルール名ノードの名称（ルール名）に変更される（ステップＳ５０５）。例えば図６（ａ）の画面６０１のように「空港」というルール名ノードの名称が「空港名」に変更された場合、図６（ｂ）に示す画面６０２のように、２つの「空港」というルール参照ノードの名称が「空港名」に自動的に修正される。そして、上記ステップＳ５０２へ戻る。
【００２６】
上記ステップＳ５０４において取り出された右辺のノードの名称の参照先であるルール名ノードの名称（ルール名）が変更されていないと判定された場合は、上記ステップＳ５０２へ戻る。また、上記ステップＳ５０３において右辺のノードの取出しが全ての左辺のノードに対して終了している場合、本処理は終了する。
【００２７】
次に、編集結果を保存する処理について図７〜図１０を参照しながら説明する。図７は編集結果を保存する処理の手順を示すフローチャート、図８（ａ）は編集中のデータを内部表現により管理するテーブルの一例を示す図、図８（ｂ）は単語の表記および読みを管理するテーブルの一例を示す図、図８（ｃ）は編集結果をテキストグラマで保存した結果の一例を示す図、図９はテキストグラマで保存することができない編集中のデータの画面例を示す図、図１０（ａ）はテキストグラマで保存することができる編集中のデータの画面例を示す図、図１０（ｂ）は図１０（ａ）の編集中のデータをＧＵＩデータで保存した結果の一例を示す図である。
【００２８】
編集結果を保存する場合、ユーザにより編集結果に対する保存形態が指定される。ここで、指定可能な保存形態としては、編集結果をテキストグラマデータに変換して保存する形態と、編集結果をＧＵＩ（Graphical User Interface）データとして保存する形態とがある。
【００２９】
ユーザにより保存形態が指定されると、図７に示すように、まず、指定された保存形態が編集結果をテキストグラマで保存する形態であるか否かの判定が行われる（ステップＳ７０１）。ここで、指定された保存形態がテキストグラマでの保存形態である場合、編集中の画像データに基づいて内部表現が作成される（ステップＳ７０２）。編集中のデータに関しては、ルール名や単語の発音、表記が内部表現として管理されるが、ルールの定義内容については管理されない。例えば図８（ａ）に示すテーブル８０１のように、ルール名は登録、管理されているが、ルールの定義内容は空欄とされている。単語に関しては、図８（ｂ）に示すテーブル８０２のように、表記と読みが管理される。そして、編集結果をテキストグラマとして保存する際に、ルール定義内容は内部表現に変換されて再構成される。
【００３０】
次いで、内部表現への変換が成功したか否かの判定が行われる（ステップＳ７０３）。例えば図９に示す画面９０１のように、定義内容（右辺の枝）がないルール名ノードや、どこからも使用されていない単語ノードがある場合には、これらを正しいテキストグラマへ変換することができない。このように内部表現への変換が失敗した場合は、編集結果を保存することができない旨を示すエラーメッセージが画像表示部１０２に表示され（ステップＳ７０４）、本処理は終了する。
【００３１】
これに対し、上記ステップＳ７０３において内部表現への変換が成功したと判定された場合、編集結果がテキストグラマの文字列へ変換され（ステップＳ７０５）、テキストグラマデータがファイル入出力部１０６へ出力される（ステップＳ７０６）。そして、本処理は終了する。例えば図１０（ａ）に示す画面１００１上に表示されている編集中のデータの場合は、図８（ｃ）に示すテーブル８０３のように、内部表現によるルール定義内容を作成することができる。
【００３２】
上記ステップＳ７０１において保存形態がテキストグラマでない、すなわち編集結果をＧＵＩ（Graphical User Interface）データとして保存する形態であるとされた場合は、編集中のデータがＧＵＩデータとしてファイル入出力部１０６へ出力される（ステップＳ７０７）。そして、本処理は終了する。例えば図１０（ａ）に示す画面１００１上に表示されている編集中のデータをＧＵＩデータとして保存する場合、編集中のデータに対する保存結果として図１０（ｂ）に示すような保存結果１００２が得られる。ＧＵＩデータによる保存の場合、ファイルとしてはバイナリデータとなる。また、個々のグラフィック部品の位置情報は指定されて保存されるので、ユーザが指定した配置情報も保存することができる。また、この場合、内部表現への変換は行われないので、図９に示すような編集中のデータもＧＵＩデータとして保存することが可能である。
【００３３】
次に、ファイル入出力部１０６から保存されている編集結果を入力する処理について図１１および図１２を参照しながら説明する。図１１はファイル入出力部１０６から保存されている編集結果を入力する処理の手順を示すフローチャート、図１２はテキストグラマで保存されている編集結果を自動整形して表示した画面例を示す図である。
【００３４】
ファイル入出力部１０６から保存された編集結果を入力する場合、図１１に示すように、まず、ファイル入出力部１０６から入力される編集結果の保存形態がテキストグラマでの保存形態であるか否かの判定が行われる（ステップＳ１１０１）。入力される編集結果の保存形態がテキストグラマでの保存形態である場合、入力された編集結果が内部表現へ変換され（ステップＳ１１０２）、この変換が成功したか否かの判定が行われる（ステップＳ１１０３）。例えば編集結果にテキストグラマとしての不整合がある場合は、内部表現への変換を行うことができず、この変換は失敗することになる。このように、内部表現への変換が失敗した場合、その旨を示すエラーメッセージが画像表示部１０２に表示され（ステップＳ１１０４）、本処理は終了する。この場合、編集結果の入力は行われない。
【００３５】
上記ステップＳ１１０３において上記変換が成功したと判定された場合は、編集結果を示すデータはＧＵＩデータへ変換され（ステップＳ１１０５）、そのＧＵＩデータが画像表示部１０２に表示される（ステップＳ１１０６）。ここで、入力されるデータは、テキストグラマとしてのデータであるので、ノードの位置などの情報は、自動で整形される。例えば図１２に示す画面１２０１のように、テキストグラマデータが自動整形されて画像表示部１０２に表示される。
【００３６】
上記ステップＳ１１０１において保存形態がテキストグラマでないと判定された場合は、編集結果がＧＵＩデータとして入力されるので、ルール名や単語情報の内部表現への変換が行われる（ステップＳ１１０７）。次いで、保存されたデータからＧＵＩデータの復元が行われ（ステップＳ１１０８）、そのＧＵＩデータが画像表示部１０２に表示される（ステップＳ１１０６）。この場合、図１０（ａ）の画面１００１のように、ユーザが配置したノードの位置情報なども再現される。
【００３７】
次に、複数のノードやリンクをまとめて選択して複製し、複製されたものを貼り付ける処理について図１３および図１４を参照しながら説明する。図１３は複数のノードやリンクをまとめて選択して複製し、複製されたものを貼り付ける処理の手順を示すフローチャート、図１４は複数のノードやリンクをまとめて選択して複製し、複製されたものを貼り付ける際に、ルール名ノードの重複が発生する場合における貼り付け不可を回避するための方法を実現するための操作画面例を示す図である。
【００３８】
ユーザにより文字・操作入力部１０１を介して、まとめて選択されて複製された複数のノードやリンクを貼り付ける指示があると、図１３に示すように、まず、複製されているノードを順に取り出すための順次取り出しが行われる（ステップＳ１３０１）。そして、複製されている全てのノードの取り出しが終了したか否かの判定が行われる（ステップＳ１３０２）。ここで、複製されている全てのノードの取り出しが終了した場合、複製されているノードやリンクの貼り付けが行われ（ステップＳ１３０６）、本処理は終了する。なお、複製されたノードやリンクが１つもない場合には、上記ステップＳ１３０６は自動的にスキップされて、本処理は終了する。
【００３９】
上記ステップＳ１３０２において複製されている全てのノードの取り出しが終了していないと判定された場合、取り出されたノードがルール定義ノードであるか否かの判定が行われる（ステップＳ１３０３）。ここで、取り出されたノードがルール定義ノードでない場合、上記ステップＳ１３０１からの処理が繰り返される。これに対し、取り出されたノードがルール定義ノードである場合、貼り付けるグラマ上で取り出されたルールが定義されているか否かの判定が行われる（ステップＳ１３０４）。ここで、上記ルールが定義されていない場合、上記ステップＳ１３０１からの処理が繰り返される。これに対し、取り出されたルールが定義されている場合、その時点で、貼り付け不可を示すエラーメッセージが画像表示部１０２に表示され、本処理は終了する。すなわち、ルール定義ノードを含むノードやリンクの貼り付けは、それを複製したグラマ上では不可となり、別のグラマ上での複製は可となる。
【００４０】
ルール定義ノードを含むノードやリンクの貼り付けが、それを複製したグラマ上では不可となる場合は、一旦、別のグラマウィンドウを作成し、ルール全体を複製し、その複製を別のグラマウィンドウに貼り付け、別のグラマウィンドウ上でルール名を変更して、変更したルールを、ルール定義を含む状態で再び元のグラマ上に貼り付けるという手順を踏めば、ルール定義ノードを含むノードやリンクの貼り付けを実現することができる。例えば図１４に示すように、元のグラマウィンドウ１４０１に対して、別にグラマウィンドウ１４０２が作成される。次いで、グラマウィンドウ１４０１上の「空港名」のルールが、その右辺を含む状態で複製され、その複製が別のグラマウィンドウ１４０２上に貼り付けられる。そして、ルール名が変更され、変更されたルールは、ルール定義を含む状態で再び元のグラマ１４０１上に貼り付けられる。
【００４１】
以上より、本実施の形態によれば、ルールの分割、修正などの編集作業を、ウィンドウを切り替えることなく、簡単に行うことができる。
【００４２】
また、指定可能な保存形態として、編集結果をテキストグラマデータに変換して保存する形態と、編集結果をＧＵＩ（Graphical User Interface）データとして保存する形態とがあるので、拡張ＢＮＦ形式などで記述することができない編集過程のデータも、保存可能となり、再利用することができる。
【００４３】
本実施の形態においては、ルール定義の左辺であるルール名ノードを右辺のノードと区別するために、ルール名ノードを、四隅が丸い矩形のアイコンで表示するが、枠線や背景の色を変えるなどの方法で、左辺と右辺のノードを区別するようにしてもよい。また、左辺と右辺との間に境界線を設けて、左辺のノードと右辺のノードとを区別するようにしてもよい。
【００４４】
また、本実施の形態においては、テキストグラマ形式への変換を１種類としているが、複数の種類のテキストグラマへの変換をサポートしてもよい。この場合、内部表現から、テキストグラマへの変換パスとして複数の変換パスを用意することになる。
【００４５】
また、本実施の形態においては、ＧＵＩへの保存形式の他にテキストグラマへの変換としているが、編集結果を、音声認識エンジンのサポートするグラマのバイナリ形式として出力するようにしてもよい。
【００４６】
また、本実施の形態においては、定義内容がないルールやルールの右辺のノードに使用されていない単語がある場合には、内部表現の作成に失敗するものとして、それらをテキストグラマに出力しないようにしているが、不十分なテキストグラマの状態でも、出力可能な部分を出力するようにしてもよい。
【００４７】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることはいうまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００４８】
また、プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。または、プログラムコードを、ネットワークを介してダウンロードしてもよい。
【００４９】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００５０】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【図面の簡単な説明】
【００５１】
【図１】本発明の一実施の形態に係る音声認識文法作成装置の構成を示すブロック図である。
【図２】ユーザが右辺のルール参照ノードを作成したときの処理の手順を示すフローチャートである。
【図３】図２の処理に従って遷移する編集画面例を示す図である。
【図４】（ａ）は既に登録されているルール名ノードのルール参照ノードが表示されている画面例を示す図、（ｂ）はユーザにより３つ目のルール参照ノードの「駅名」を「空港」という名称に変更した場合の画面例を示す図、（ｃ）は図４（ｂ）の３つ目のルール参照ノードの名称の変更に伴い新たなルール名ノードが作成された画面例を示す図である。
【図５】ルール名ノードの名称を変更した場合の処理の手順を示すフローチャートである。
【図６】（ａ）は「空港」というルール名ノードに対してその名称を「空港名」と変更した場合の画面例を示す図、（ｂ）は図６（ａ）のルール名ノードの名称の変更に伴いルール参照ノードの名称が変更された画面例を示す図である。
【図７】編集結果を保存する処理の手順を示すフローチャートである。
【図８】（ａ）は編集中のデータを内部表現により管理するテーブルの一例を示す図、（ｂ）は単語の表記および読みを管理するテーブルの一例を示す図、（ｃ）は編集結果をテキストグラマで保存した結果の一例を示す図である。
【図９】テキストグラマで保存することができない編集中のデータの画面例を示す図である。
【図１０】（ａ）はテキストグラマで保存することができる編集中のデータの画面例を示す図、（ｂ）は図１０（ａ）の編集中のデータをＧＵＩデータで保存した結果の一例を示す図である。
【図１１】ファイル入出力部１０６から保存されている編集結果を入力する処理の手順を示すフローチャートである。
【図１２】テキストグラマで保存されている編集結果を自動整形して表示した画面例を示す図である。
【図１３】複数のノードやリンクをまとめて選択して複製し、複製されたものを貼り付ける処理の手順を示すフローチャートである。
【図１４】複数のノードやリンクをまとめて選択して複製し、複製されたものを貼り付ける際に、ルール名ノードの重複が発生する場合における貼り付け不可を回避するための方法を実現するための操作画面例を示す図である。
【符号の説明】
【００５２】
１０１  文字・操作入力部
１０２  画像表示部
１０３  画像編集管理部
１０４  グラマ内部表現管理部
１０５  テキストグラマ変換部
１０６  ファイル入出力部
【図１】
2005351980.tif 000003
【図２】
2005351980.tif 000004
【図３】
2005351980.tif 000005
【図４】
2005351980.tif 000006
【図５】
2005351980.tif 000007
【図６】
2005351980.tif 000008
【図７】
2005351980.tif 000009
【図８】
2005351980.tif 000010
【図９】
2005351980.tif 000011
【図１０】
2005351980.tif 000012
【図１１】
2005351980.tif 000013
【図１２】
2005351980.tif 000014
【図１３】
2005351980.tif 000015
【図１４】
2005351980.tif 000016