(57)【要約】【課題】  属性値の変更に伴って発生したイベントを高速に処理することができるようにすることを目的とする。【解決手段】  ＸＭＬ文書を解析し、ＤＯＭツリーに変換する情報処理装置であって、ユーザによる操作指示があった場合に（ステップＳ３１２）、該指示が、前記属性の値の変更を伴う指示であるか否かを判定し（ステップＳ３１３）、前記属性の値の変更を伴う指示であると判定された場合に、該属性値の型情報を取得し、該型情報と前記指示内容とを記述したイベントを生成するイベント生成し（ステップＳ３１５〜３１８）、イベントハンドラが、該型情報に従って前記指示内容を処理する（ステップＳ３２２）ことを特徴とする。【選択図】  図３
2007293548.tif 000002
【特許請求の範囲】
【請求項１】
ＸＭＬ文書をアプリケーションにて処理するにあたり、該ＸＭＬ文書を解析し、要素と属性とを備えるツリー構造のデータに変換する情報処理装置であって、
前記アプリケーションを介してユーザからの指示が入力された場合に、該指示が、前記属性の値の変更を伴う指示であるか否かを判定する判定手段と、
前記属性の値の変更を伴う指示でないと判定された場合には、該指示内容が記述された第１のイベントを生成し、前記属性の値の変更を伴う指示であると判定された場合には、該属性の値の型情報を取得し、該型情報と該指示内容とが記述された第２のイベントを生成するイベント生成手段と、
前記イベント生成手段において生成された第１または第２のイベントを受け取り、該イベントに基づく処理を行うイベント処理手段と、を備え、
前記イベント処理手段は、
前記第１のイベントを受け取った場合には、前記指示内容を文字列として処理し、前記第２のイベントを受け取った場合には、前記型情報に従って前記指示内容を処理することを特徴とする情報処理装置。
【請求項２】
前記ＸＭＬ文書は、ＤＯＭを用いて前記ツリー構造のデータに変換されることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記予め定められたイベントは、ＤＯＭ  Ｅｖｅｎｔｓであり、前記型情報と前記指示内容とが記述されたイベントは、該ＤＯＭ  ＥｖｅｎｔｓのＭｕｔａｔｉｏｎＥｖｅｎｔを継承したイベントであることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記属性の値は数値情報であり、前記型情報は浮動小数点であることを示す情報であることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
ＸＭＬ文書をアプリケーションにて処理するにあたり、該ＸＭＬ文書を解析し、要素と属性とを備えるツリー構造のデータに変換する情報処理装置における情報処理方法であって、
前記アプリケーションを介してユーザからの指示が入力された場合に、該指示が、前記属性の値の変更を伴う指示であるか否かを判定する判定工程と、
前記属性の値の変更を伴う指示でないと判定された場合には、該指示内容が記述された第１のイベントを生成し、前記属性の値の変更を伴う指示であると判定された場合には、該属性の値の型情報を取得し、該型情報と該指示内容とが記述された第２のイベントを生成するイベント生成工程と、
前記イベント生成工程において生成された第１または第２のイベントを受け取り、該イベントに基づく処理を行うイベント処理工程と、を備え、
前記イベント処理工程は、
前記第１のイベントを受け取った場合には、前記指示内容を文字列として処理し、前記第２のイベントを受け取った場合には、前記型情報に従って前記指示内容を処理することを特徴とする情報処理方法。
【請求項６】
請求項５に記載の情報処理方法をコンピュータによって実現させるための制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＸＭＬ文書を処理する情報処理技術に関する。特に、ＸＭＬ文書をツリー構造データとして処理する場合の情報処理技術に関するものである。
【背景技術】
【０００２】
ＸＭＬパーサの標準ＡＰＩとして、ＳＡＸとＤＯＭが一般的に知られている（例えば、非特許文献１及び非特許文献２参照）。
【０００３】
ＳＡＸの場合、ＸＭＬ文書を先頭から順番に読み込んでいき、そこで発生したイベントを経由して情報をアプリケーションプログラムに伝達する。つまり、ＸＭＬ文書の解析中にわかったことから順次情報を伝達し、構文解析の終了を待たずに処理を開始する。このため、ＳＡＸの場合、ＸＭＬ文書を処理を高速に行うことができる。
【０００４】
一方、ＤＯＭはＸＭＬ文書をツリー構造データ（ＤＯＭツリー）として扱う。このため、ＸＭＬパーサがＸＭＬ文書全体を読み込んだ後でなければ、ＸＭＬ文書内のデータにアクセスすることができない。したがって、ＳＡＸに比べて処理が遅い一方、ＤＯＭの場合には、ＸＭＬ文書内のデータの順番に関係なくアクセスできるという利点がある。
【非特許文献１】“Ａｂｏｕｔ  ｓａｘ”、［ｏｎｌｉｎｅ]、［平成１８年４月２４日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｓａｘｐｒｏｊｅｃｔ．ｏｒｇ／＞
【非特許文献２】“Ｄｏｃｕｍｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ（ＤＯＭ）”、［ｏｎｌｉｎｅ］、［平成１８年４月２４日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｗ３．ｏｒｇ／ＤＯＭ／＞
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ここで、ＤＯＭツリーとしてツリー構造データ化された属性は、スキーマによって、型が定義されている場合がある（例えば、ｘ＝“５”の“５”は整数の５である、等）。そしてＤＯＭツリーでは属性（ｘ）の型がスキーマによって文字列以外に定義されていた場合であっても、当該属性値（“５”）は文字列として保持されるという特徴がある。
【０００６】
また、ＤＯＭツリーの属性値の変更などに応じて発生するイベント（ＤＯＭ  Ｅｖｅｎｔｓ）が有する変更前後の属性値も、スキーマの定義に関わらず文字列として保持される。
【０００７】
しかしながら、一般にＸＭＬ文書に基づいて生成されたＤＯＭツリーを利用してアプリケーションが処理を行う場合、属性値はスキーマの型に変更して利用されることが多い（例えばｘ座標を表すｘ属性の属性値は整数や浮動小数点数に変換して処理される）。
【０００８】
このため、属性値の変更に伴うイベントが発生した場合、該イベントを処理するイベントハンドラ側では、当該イベントが保持する変更後の属性値を、文字列からスキーマの指定する型へと変換するという冗長な処理が必要となる。そして、ＤＯＭの場合、このような変換処理を行わなければならないことも、処理の高速化を妨げる原因となっている。
【０００９】
一方、ＳＶＧ  Ｍｉｃｒｏ  ＤＯＭ（ｈｔｔｐ：／／ｗｗｗ．ｗ３．ｏｒｇ／ＴＲ／ＳＶＧＭｏｂｉｌｅ１２／ｓｖｇｕｄｏｍ．ｈｔｍｌ）のように、属性値を文字列ではなく始めからスキーマの指定する型で持つことが想定されている特殊なＤＯＭもある。
【００１０】
しかしながら、かかる特殊なＤＯＭを用いた場合でも、属性値の変更に際して発生するイベントとして、標準化されたイベントを用いた場合には、同様の変換処理が必要となる。具体的には、スキーマの指定する型を文字列に変更してイベントにセットし、イベントハンドラ側で文字列をスキーマの指定する型に変換するという冗長な処理が必要となる。
【００１１】
本発明は、上記課題に鑑みてなされたものであり、属性値の変更に伴って発生したイベントを高速に処理することができるようにすることを目的とする。
【課題を解決するための手段】
【００１２】
上記の目的を達成するために本発明に係る情報処理装置は以下のような構成を備える。即ち、
ＸＭＬ文書をアプリケーションにて処理するにあたり、該ＸＭＬ文書を解析し、要素と属性とを備えるツリー構造のデータに変換する情報処理装置であって、
前記アプリケーションを介してユーザからの指示が入力された場合に、該指示が、前記属性の値の変更を伴う指示であるか否かを判定する判定手段と、
前記属性の値の変更を伴う指示でないと判定された場合には、該指示内容が記述された第１のイベントを生成し、前記属性の値の変更を伴う指示であると判定された場合には、該属性の値の型情報を取得し、該型情報と該指示内容とが記述された第２のイベントを生成するイベント生成手段と、
前記イベント生成手段において生成された第１または第２のイベントを受け取り、該イベントに基づく処理を行うイベント処理手段と、を備え、
前記イベント処理手段は、
前記第１のイベントを受け取った場合には、前記指示内容を文字列として処理し、前記第２のイベントを受け取った場合には、前記型情報に従って前記指示内容を処理することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、属性値の変更に伴って発生したイベントを高速に処理することができるようになる。
【発明を実施するための最良の形態】
【００１４】
以下、必要に応じて添付図面を参照しながら本発明の一実施形態を詳細に説明する。なお、以下の実施形態では、本発明の一実施形態にかかる情報処理装置が、テレビジョン受像機に組み込まれた場合を例に説明する。
【００１５】
１．テレビジョンシステムの構成
図１は本発明の一実施形態に係る情報処理装置１０００が組み込まれたテレビジョン受像機１０１と、該テレビジョン受像機１０１と通信可能に接続されたカラープリンタ１０２とを備えるテレビジョンシステム（１００）の構成を示す図である。
【００１６】
当該テレビジョンシステム１００によれば、受信した映像をテレビジョン受像機１０１に表示したり、該テレビジョン受像機１０１に表示した映像をカラープリンタ１０２に出力したりすることができる。なお、テレビジョン受像機１０１への操作指示は、テレビジョン受像機１０１が備える不図示の操作スイッチを介して、あるいはリモコン操作を介して行われる。
【００１７】
２．組み込まれた情報処理装置のハードウェア構成
図１０は、テレビジョン受像機１０１に組み込まれる情報処理装置１０００のハードウェア構成を示す図である。
【００１８】
図１０において、１００１は制御メモリ（ＲＯＭ）、１００２はＣＰＵ、１００３はメモリ（ＲＡＭ）である。１００４は後述するリモコン受光部において受光した信号を入力する入力装置、１００５は情報処理装置１０００での処理結果を後述するブラウン管に出力する出力装置である。また、１００６は外部記憶装置、１００７はバスである。
【００１９】
本実施形態にかかる情報処理機能を実現するための制御プログラムやその制御プログラムで用いるデータ、ならびにＯＳは、外部記憶装置１００６に記憶される。これらの制御プログラムやデータ、ＯＳは、ＣＰＵ１００２の制御のもと、バス１００７を通じて適宜メモリ１００３に取り込まれ、ＣＰＵ１００２によって実行される。
【００２０】
３．テレビジョン受像機の機能構成
図２は、テレビジョン受像機１０１の機能構成図である。なお、図２は、テレビジョン受像機１０１が有する各機能のうち、リモコン操作による操作指示に基づいて、テレビジョン受像機１０１の設定内容を変更する場合の処理に関連する機能のみを図示しており、テレビジョン受像機が有する他の機能は省略している。また、２００は、テレビジョン受像機１０１に組み込まれた情報処理装置１０００の機能を示している。なお、情報処理機能２００は、テレビジョン受像機以外の機器にも組み込み可能であり、例えば、カラープリンタ、スキャナ、ビデオ、ビデオカメラ等の機器に組み込まれてもよい。また、本実施形態のように図２に示す各機能をソフトウェア等で実現する場合には、図２の情報処理機能２００は必ずしも機器内において実現されていなくても良い。
【００２１】
以下では、テレビジョン受像機１０１における設定内容の変更の一例として、音声出力設定を変更する場合について説明する。
【００２２】
２１０はリモコン受光部であり、リモコンからのテレビジョン受像機１０１の音声出力設定変更操作を受け取る。
【００２３】
２０５はＤＯＭ処理部であり、ＸＭＬ文書解析部２０１に対して、音声出力設定変更操作に対応するＸＭＬ文書の解析指示を行うとともに、ＸＭＬ文書解析部２０１によるＸＭＬ文書の解析結果に基づいて、ＤＯＭツリーを生成する。また、生成されたＤＯＭツリーに基づいて、音声出力操作画面をブラウン管２０８に表示するよう、表示制御部２０７に表示指示を出力する。さらに、イベント管理部２０６において生成されたイベントを受け取り、表示制御部２０７に表示変更指示を出力する。
【００２４】
なお、ＤＯＭツリーとは、ＸＭＬ文書に含まれるすべての要素や属性を、ツリー構造データ化したものであり、ツリー構造データ化された各要素や属性を総称してノードと称す。
【００２５】
２０１はＸＭＬ文書解析部であり、ＸＭＬ文書記憶部２０２に保存されたＸＭＬ文書を解析し、ＸＭＬ文書に含まれる各要素及び属性を認識する。
【００２６】
２０２はＸＭＬ文書記憶部であり、ＸＭＬ文書を記憶している。本実施形態では、ブラウン管２０８に表示する図形をＸＭＬ文書として保存している。図４は、ＸＭＬ文書記憶部２０２に保存されるＸＭＬ文書の一例を示す図である。
【００２７】
２０３はスキーマ解析部であり、ＸＭＬ文書解析部２０１において解析された結果に基づいて、当該ＸＭＬ文書がスキーマに沿った文書であるか否かを解析する。２０４は、スキーマ記憶部であり、ＸＭＬ文書の取り得る構造を記述したスキーマが記憶されている。なお、属性の型情報はスキーマに定義されている。
【００２８】
４．イベント管理部において発生するイベントの構成
本実施形態にかかる情報処理装置のイベント管理部２０６において発生する２種類のイベントについて説明する。
【００２９】
４．１  通常のイベント
図７はＤＯＭ  Ｅｖｅｎｔｓで定義されるＭｕｔａｔｉｏｎＥｖｅｎｔのＩＤＬ記述の一例を示す図である。ＤＯＭ  Ｅｖｅｎｔｓはユーザによる操作指示が入力された際に発生する。そして図７に示すＭｕｔａｔｉｏｎＥｖｅｎｔは、ユーザによる操作指示が入力された場合であって、属性値の変更を伴わない場合に発生するイベントである。
【００３０】
４．２  属性値の変更を伴う場合のイベント
図８はＭｕｔａｔｉｏｎＥｖｅｎｔを継承して型情報を表すメンバ、ｔｙｐｅＮａｍｅを追加したＴｙｐｅｄＭｕｔａｉｏｎＥｖｅｎｔのＩＤＬ記述の一例を示す図である。
【００３１】
図９はＴｙｐｅｄＭｕｔａｔｉｏｎＥｖｅｎｔのメンバがｔｙｐｅＮａｍｅ＝“ｆｌｏａｔ”の場合に使用されるＦｌｏａｔＭｕｔａｔｉｏｎＥｖｅｎｔのＩＤＬ記述である。
【００３２】
後述するように、図８及び図９に示すイベントは、ユーザによる操作指示が入力された場合であって、かつ、当該操作指示が属性値の変更を伴うものである場合に発生する。
【００３３】
本実施形態にかかる情報処理装置１０００では、スキーマで型情報が浮動小数点数と定義されている属性値を、例えば１０．０から２０．０に変更すると、ＴｙｐｅｄＭｕｔａｔｉｏｎＥｖｅｎｔ及びＦｌｏａｔＭｕｔａｔｉｏｎＥｖｅｎｔが発生する。この場合、ＴｙｐｅｄＭｕｔａｔｉｏｎＥｖｅｎｔのメンバはｔｙｐｅＮａｍｅ＝“ｆｌｏａｔ”と設定される。また、ＦｌｏａｔＭｕｔａｔｉｏｎＥｖｅｎｔのメンバはｐｒｅＦｌｏａｔＴｒａｉｔ＝“１０．０”、ｎｅｗＦｌｏａｔＴｒａｉｔ＝“２０．０”と設定される。これにより、イベントを受け取るＤＯＭ処理部２０５では、イベントに記載された情報が、（文字列を表すものではなく）浮動小数点数であり、更に１０．０から２０．０に変更されたことを認識することができる。
【００３４】
なお、ここでは、スキーマで型情報が浮動小数点数と定義されている属性値を変更する場合について説明したが、本発明は特にこれに限られない。スキーマでその他の型情報が定義されている属性値を変更する場合には、図８と同様に、型に応じたイベントが生成され、図９と同様に、当該型で記述された変更前後の属性値が記述されたイベントが生成される。
【００３５】
５．テレビジョン受像機における情報処理装置の処理の流れ
次に、テレビジョン受像機１０１における情報処理装置１０００の、音声出力設定変更に伴うＸＭＬ文書表示処理およびイベント処理の流れについて説明する。図３は、テレビジョン受像機１０１における情報処理装置１０００の、音声出力設定変更に伴うＸＭＬ文書表示処置およびイベント処理の流れを示すフローチャートである。
【００３６】
ステップＳ３０１では、リモコン受光部２１０が、リモコンから、テレビジョン受像機１０１の音声出力操作情報を受け取る。リモコン受光部２１０にて受け取られた音声出力操作情報は、ＤＯＭ処理部２０５を介してＸＭＬ文書解析部２０１に送られる。ＸＭＬ文書解析部２０１では、当該音声出力操作情報に対応するＸＭＬ文書（ここでは、図４に示すＸＭＬ文書）をＸＭＬ文書記憶部２０２より読み出し、解析する。
【００３７】
ステップＳ３０２では、ＸＭＬ文書解析部２０１における解析結果に基づいて、スキーマ解析部２０３が、ＸＭＬ文書に含まれる各要素、属性のスキーマが指定されているか否かを判定する。ステップＳ３０２においてスキーマが指定されていないと判定された場合には、ステップＳ３０３に進み、属性値の型はすべて文字列として扱う。
【００３８】
一方、ステップＳ３０２においてスキーマが指定されていると判定された場合には、ステップＳ３０４に進み、当該ＸＭＬ文書に指定されているスキーマをスキーマ記憶部２０４より読み込む。
【００３９】
ステップＳ３０５では、ＤＯＭ処理部２０５が、音声出力操作情報に基づいてＸＭＬ文書表示処理されるべきＸＭＬ文書（ここでは図４のＸＭＬ文書）を全て処理したか（ＤＯＭツリーの生成を完了したか）否かを判定する。ＸＭＬ文書を全て処理したと判定された場合には、ステップＳ３２６に進む。一方、ＸＭＬ文書を全て処理していないと判定された場合には、ステップＳ３０６に進み、ＤＯＭツリーの生成を継続する。
【００４０】
ステップＳ３０６では、ＤＯＭ処理部２０５が、ＸＭＬ文書解析部２０１において解析され、スキーマ解析部２０３にてスキーマの指定の有無が判定されたＸＭＬ文書の各要素、属性についてノードを生成する。
【００４１】
ステップＳ３０７では、ステップＳ３０６にて生成されたノードが属性ノードであるか否かを判定する。生成されたノードが属性ノードでないと判定された場合には、ステップＳ３１１に進み、当該ノードをＤＯＭツリーに追加する。一方、生成されたノードが属性ノードであると判定された場合には、スキーマ解析部２０３にて当該ノードの属性値が型に合っているかを判定する（ステップＳ３０８）。型にあっていれば、当該ノードに型情報を追加したうえで（ステップＳ３１０）、当該ノードをＤＯＭツリーに追加する。なお、ステップＳ３０８において、属性値が型に合っていないと判定された場合には、処理を終了する。
【００４２】
一方、ステップＳ３０５において、ＸＭＬ文書を全て処理した（ＤＯＭツリーの生成が完了した）と判定された場合には、ステップＳ３２６に進む。
【００４３】
ステップＳ３２６では、表示制御部２０７がブラウン管２０８にＸＭＬ文書を処理した結果を表示する。図５は、図４に示すＸＭＬ文書を処理することにより表示された表示結果を示す図である。
【００４４】
ＸＭＬ文書の表示が完了すると、ステップＳ３１２では、イベント管理部２０６においてイベントが発生されるような、ユーザのリモコン操作を待つ。ユーザによる所定のリモコン操作があるまでは待機状態を維持し、ユーザによる所定のリモコン操作があると、イベントが発生されると判断し、ステップＳ３１３に進む。
【００４５】
ユーザによる所定のリモコン操作とは、例えば、リモコンで音量を上げる操作等をいい、ここでは、図４のｉｄ＝“ｒａｎｇｅ”となっている＜ｒｅｃｔ＞要素のｗｉｄｔｈ属性を３００から４５０に変更する場合を一例として説明する。当該変更はＤＯＭ処理部２０５を介してイベント管理部２０６に通知される。
【００４６】
当該通知を受けたイベント管理部２０６では、ステップＳ３１３にて、当該変更が属性変更であるか否かを判定する。ステップＳ３１３において、イベントが属性変更のイベントであると判定された場合には、ステップＳ３１４に進む。
【００４７】
ステップＳ３１４では、変更された属性ノードから型情報を取得し、ステップＳ３１５では、該取得した型情報を記述するイベントおよび変更前後の属性値を当該型情報に基づいて記述するイベントを生成する。また、ステップＳ３１６では、変更前後の属性値を当該型情報に基づいて記述するイベントのメンバに変更前後の属性値を設定する。更にステップＳ３１７では、型情報を記述するイベントのメンバに型情報を設定する。
【００４８】
本実施形態の場合、ＴｙｐｅｄＭｕｔａｔｉｏｎＥｖｅｎｔ（図８）を継承したＦｌｏａｔＭｕｌｔａｔｉｏｎＥｖｅｎｔ（図９）が生成される。継承によって拡張が可能である。ｗｉｄｔｈ属性はスキーマで型情報が浮動小数点数と定義されているため、ｔｙｐｅＮａｍｅには、“ｆｌｏａｔ”が設定される。また、ｐｒｅＦｌｏａｔＴｒａｉｔには３００が、ｎｅｗＦｌｏａｔＴｒａｉｔには４５０がそれぞれ設定される。
【００４９】
ステップＳ３１８では、ＴｙｐｅｄＭｕｔａｔｉｏｎＥｖｅｎｔおよびＦｌｏａｔＭｕｔａｔｉｏｎＥｖｅｎｔがイベント管理部２０６によってＤＯＭ処理部２０５に通知される。これにより、ＤＯＭ処理部２０５では、型情報が記述されたイベントおよび該型情報に基づいて変更前後の属性値が記述されたイベントの発生を認識する。
【００５０】
一方、ステップＳ３１３において、当該変更が属性変更でないと判定された場合には、ステップＳ３１９に進み、イベント管理部２０６が通常のイベント（型情報が記述されていないイベント（図７））をＤＯＭ処理部２０５に通知する。これにより、ＤＯＭ処理部２０５では、通常のイベントの発生を認識する。
【００５１】
ステップＳ３２０では、ＤＯＭ処理部２０５が、発生したイベントのノードから親ノードをたどり、発生したイベントのハンドラ（イベントごとに処理内容が定義されたもの）を探索する。イベントハンドラを見つけると、当該イベントを渡して、イベントハンドラを呼び出す。
【００５２】
ステップＳ３２１では、発生したイベントが型情報が記述されたイベントであるか否かを判定する。ステップＳ３２１において型情報が記述されたイベント（図９）であると判定された場合には、ステップＳ３２２に進み、該型情報に基づいて変更前後の属性値を読み込んで処理を行う。本実施形態の場合、変更前の属性値＝３００、変更後の属性値４５０が浮動小数点数として取り扱われる。
【００５３】
一方、型情報が記述されたイベントでないと判定された場合には、ステップＳ３２４に進み、Ｍｕｔａｔｉｏｎ  Ｅｖｅｎｔｓ（図７）として処理を行う（属性値は全ての文字列として取り扱われる）。
【００５４】
このように、本実施形態の場合、音声出力設定変更に伴ってＴｙｐｅｄＭｕｔａｔｉｏｎＥｖｅｎｔ及びＦｌｏａｔＭｕｔａｔｉｏｎＥｖｅｎｔが発生する。このため、イベントハンドラは変更後の値を処理するにあたり、従来のようにＭｕｔａｔｉｏｎＥｖｅｎｔのｎｅｗＶａｌｕｅを文字列から浮動小数点数に変更する処理を行う必要がない。つまり、ＦｌｏａｔＭｕｔａｔｉｏｎＥｖｅｎｔのｎｅｗＦｌｏａｔＴｒａｉｔをそのまま浮動小数点の数値情報として利用することができる。
【００５５】
本実施形態では図４のｉｄ＝“ｆｒａｍｅ”となる＜ｒｅｃｔ＞要素のｗｉｄｔｈ属性の値が図５、図６の音量表示バーの最大幅、ｉｄ＝“ｒａｎｇｅ”となる＜ｒｅｃｔ＞要素のｗｉｄｔｈ属性の値が現在の音量表示バーの幅（図５，６で塗りつぶされている幅）を表している。図４の場合、音量表示バーの最大幅は６００、現在の音量表示バーの幅は３００である。また、図４では＜ｅｖ：ｌｉｓｔｅｎｅｒ＞要素によって、ｉｄ＝“ｒａｎｇｅ”となる＜ｒｅｃｔ＞要素にＦｌｏａｔＭｕｔａｔｉｏｎＥｖｅｎｔに対応するイベントハンドラが関連付けられている。例として、イベントハンドラを“ＭｙＥｖｅｎｔＬｉｓｔｅｎｅｒ”と記述している。ＭｙＥｖｅｎｔＬｉｓｔｅｎｅｒでは、ｉｄ＝“ｆｒａｍｅ”となる＜ｒｅｃｔ＞要素のｗｉｄｔｈ属性の値とｉｄ＝“ｒａｎｇｅ”となる＜ｒｅｃｔ＞要素のｗｉｄｔｈ属性の値とから音量を計算し、ｉｄ＝“ｖｏｌ”となる＜ｔｅｘｔ＞要素の内容を計算された音量に応じて書き換えることがＪａｖａ（登録商標）などのプログラムで記述されている。このイベントハンドラにより、ｉｄ＝“ｒａｎｇｅ”となる＜ｒｅｃｔ＞要素でＦｌｏａｔＭｕｔａｔｉｏｎＥｖｅｎｔが発生すると、イベントハンドラ“ＭｙＥｖｅｎｔＬｉｓｔｅｎｅｒ”はｉｄ＝“ｖｏｌ”となる＜ｔｅｘｔ＞要素の内容を現在の音量に応じて書き換える。音量表示バーの幅が３００から４５０に変更されれば、最大幅の６００で割って４５０／６００＝７５％であるので、＜ｔｅｘｔ＞タグで囲まれた要素がＶｏｌｕｍｅ：７５と書き換えられ、図６のように“Ｖｏｌｕｍｅ：７５”とブラウン管２０８に表示される。
【００５６】
ステップＳ３２５では、処理を終了する旨の指示があったか否かを判定し、終了指示がない場合には、ステップＳ３２６に戻り、ユーザによるリモコン操作指示を待つ。一方、終了指示があった場合には、処理を終了する。
【００５７】
以上説明したように、本実施形態にかかる情報処理装置では、ＸＭＬ文書を解析してＤＯＭツリーを生成し、イベント管理部を使ってＤＯＭツリーの属性値変更処理を行うにあたり、発生するイベントを一律に文字列として取り扱わない点に特徴がある。代わりに、型情報を有するイベントおよび当該型情報に基づいて変更前後の属性値が記述されたイベントを発生することで、イベントを受け取って処理を行うイベントハンドラでは、文字列から型情報に従う属性値への変換処理を省くことが可能となる。この結果、ＤＯＭツリーの属性値の変更があった場合でも、変更処理を効率的に行うことができるようになる。
【００５８】
６．他の実施形態
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【００５９】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給するよう構成することによっても達成されることはいうまでもない。この場合、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することにより、上記機能が実現されることとなる。なお、この場合、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００６０】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピ（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【００６１】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現される場合に限られない。例えば、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００６２】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、前述した実施形態の機能が実現される場合も含まれる。つまり、プログラムコードがメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって実現される場合も含まれる。
【図面の簡単な説明】
【００６３】
【図１】本発明の一実施形態に係る情報処理装置が組み込まれたテレビジョン受像機と、該テレビジョン受像機と通信可能に接続されたカラープリンタとを備えるテレビジョンシステムの構成を示す図である。
【図２】テレビジョン受像機の機能構成図である。
【図３】テレビジョン受像機における情報処理装置の、音声出力設定変更に伴うＸＭＬ文書表示処置およびイベント処理の流れを示すフローチャートである。
【図４】ＸＭＬ文書の一例を示す図である。
【図５】図４に示すＸＭＬ文書を処理することにより表示された表示結果を示す図である。
【図６】属性値変更後のＸＭＬ文書を処理することにより表示された表示結果を示す図である。
【図７】ＤＯＭ  Ｅｖｅｎｔｓで定義されるＭｕｔａｔｉｏｎＥｖｅｎｔのＩＤＬ記述の一例を示す図である。
【図８】ＭｕｔａｔｉｏｎＥｖｅｎｔを継承して型情報を表すメンバ、ｔｙｐｅＮａｍｅを追加したＴｙｐｅｄＭｕｔａｉｏｎＥｖｅｎｔのＩＤＬ記述の一例を示す図である。
【図９】ｔｙｐｅＮａｍｅ＝“ｆｌｏａｔ”の場合に使用されるＦｌｏａｔＭｕｔａｔｉｏｎＥｖｅｎｔのＩＤＬ記述の一例を示す図である。
【図１０】テレビジョン受像機に組み込まれる情報処理装置のハードウェア構成を示す図である。
【図１】
2007293548.tif 000003
【図２】
2007293548.tif 000004
【図３】
2007293548.tif 000005
【図４】
2007293548.tif 000006
【図５】
2007293548.tif 000007
【図６】
2007293548.tif 000008
【図７】
2007293548.tif 000009
【図８】
2007293548.tif 000010
【図９】
2007293548.tif 000011
【図１０】
2007293548.tif 000012