(57)【要約】【課題】  一連の処理を逐次実行する際に、各処理において用いられるデータを含んでいる処理対象データのデータ構造を実行される処理毎に改変し効率良くデータ処理を行わせる。【解決手段】  各々の処理を特定する処理内容指示データが実行順に複数配列されている第１のデータブロックと該各処理にて用いられるパラメータが各処理毎に配列されている第２のデータブロックとを含んでいる処理内容データと各処理の処理対象となるデータを表す処理対象データとを情報処理装置３０に取得させ記憶させる。この情報処理装置３０は、上記処理内容指示データが特定する処理を、上記処理内容指示データの配列順に処理し、実行した処理の直後に実行すべき処理に対応するパラメータが他のパラメータより先に位置するように並び順を変更する。【選択図】        図５
2005141310.tif 000002
【特許請求の範囲】
【請求項１】
各々の処理を特定する処理内容指示データが実行順に複数配列されている第１のデータブロックと前記各処理にて用いられるパラメータが各処理毎に配列されている第２のデータブロックとを含んでいる処理内容データと前記各処理を施すべきデータを表す処理対象データとを取得して記憶する取得手段と、
前記取得手段に記憶されている前記処理内容データの前記第２のデータブロックに書き込まれている各パラメータを用いて、前記処理内容データの前記第１のデータブロックに書き込まれている各処理内容指示データにより特定される処理を前記処理対象データの表すデータへ施す実行手段であって、前記処理内容指示データの配列順に処理を実行する実行手段と、
前記実行手段により実行された処理の直後に実行されるべき処理にて用いられるパラメータが他のパラメータより先に位置するように、前記取得手段に記憶されている前記処理内容データの前記第２のデータブロックを変更する変更手段と
を有する情報処理装置。
【請求項２】
前記変更手段は、前記実行手段により実行された処理にのみ用いられるパラメータが前記処理内容データに含まれている場合には、該パラメータを削除する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記処理内容データは、予め定められた記述言語で記述された構造化文書データであり、
前記取得手段は、前記処理内容データの前記第１のデータブロックに書き込まれている処理内容指示データの配列順と前記第２のデータブロックに書き込まれているパラメータの配列順とをコンピュータ装置が認識可能な内部表現形式データに変換して記憶し、
前記変更手段は、前記実行手段により実行された処理の直後に実行するべき処理にて用いられるパラメータが他のパラメータより先に位置するように、前記内部表現形式データを変更し、
前記変更手段により変更された前記内部表現形式データに対応する構造化文書データを生成し記憶する生成手段を更に備える
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
コンピュータ装置に、
各々の処理を特定する処理内容指示データが実行順に複数配列されている第１のデータブロックと前記各処理にて用いられるパラメータが各処理毎に配列されている第２のデータブロックとを含んでいる処理内容データと前記各処理を施すべきデータを表す処理対象データとを取得して記憶する取得機能と、
前記取得機能により該コンピュータ装置に記憶された前記処理内容データの前記第２のデータブロックに書き込まれている各パラメータを用いて、該処理内容データの前記第１のデータブロックに書き込まれている各処理内容指示データにより特定される処理を前記処理対象データの表すデータへ施す実行機能であって、前記処理内容指示データの配列順に処理を実行する実行機能と、
前記実行機能により実行された処理の直後に実行されるべき処理にて用いられるパラメータが他のパラメータより先に位置するように、該コンピュータ装置に記憶されている前記処理内容データの前記第２のデータブロックを変更する変更機能と
を実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
データのデータ構造を改変しそのデータを取り扱う際の効率を向上させる技術に関する。
【背景技術】
【０００２】
コンピュータ装置間でのデータ授受に構造化文書データを利用することが行われている。構造化文書データとは、所定の記述言語を用いてデータおよびデータ構造が記述された文書データである。構造化文書データを記述するための記述言語の一例としては、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）が挙げられる。なお、以下では、ＸＭＬで記述された構造化文書データを「ＸＭＬデータ」と呼ぶ。
【０００３】
上述したＸＭＬデータは、ＤＯＭ（Ｄｏｃｕｍｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ）と呼ばれる内部表現形式データに変換されコンピュータ装置に利用される。ここで、内部表現形式データとは、ＣＰＵ（Ｃｅｎｔａｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などのプロセッサが認識可能なデータ形式のことである。以下では、ＸＭＬデータをＤＯＭへ変換する処理のことを「パース」と称し、逆に、ＤＯＭをＸＭＬデータへ変換する処理を「シリアライズ」と称する。上記パースにより生成されるＤＯＭには、対応するＸＭＬデータに書き込まれているデータのデータ構造を表す付加データ（例えば、各データの階層構造を表すポインタ）が含まれているため、そのデータサイズは、一般に、ＸＭＬデータのデータサイズよりも大きくなってしまう。このため、小容量の記憶装置しか有していない組み込み機器などにＸＭＬデータを利用させるようにすることは困難であるという問題点があった。このような問題点を解決するための技術としては、特許文献１や特許文献２に開示された技術が挙げられる。
【０００４】
特許文献１には、構造化文書データを解析し、その構造化文書データに含まれている複数の要素を所定の規則にしたがって合成し１つの要素にする。これにより、構造化文書データに含まれている各要素間の階層構造を表す付加データを削減し、その構造化文書データに対応する内部表現形式データのデータサイズを削減する技術が開示されている。
【０００５】
特許文献２には、構造化文書データに記述されているデータ構造の階層を浅くすることにより、その構造化文書データを取り扱う際に要する記憶容量を削減させるとともに、その構造化文書データに含まれている各種データにアクセスする際のデータアクセス効率を向上させる技術が開示されている。具体的には、特許文献２に開示された構造化文書変換装置によれば、まず、構造化文書データが解析され、その構造化文書データから予め定められた要素名の開始タグと終了タグとに挟まれた部分領域に記載されたデータが取得される。そして、上記データを１層構造のデータに変換した後に、その部分領域を変換した構造化文書で書き換えられる。このように、１層構造のデータへ変換するため、データ構造を表すために要する付加データの数が減少し、その構造化文書データに対応するＤＯＭのデータサイズが減少する。
【０００６】
【特許文献１】特開２００２−１０８８５０号公報
【特許文献２】特開２００２−２９７５６９号公報
【０００７】
ところで、複数のコンピュータ装置が含まれているコンピュータシステムにおいて、各コンピュータ装置間のデータ授受に構造化文書データが用いられる場合には、その構造化文書データを用いて複数の処理が逐次行われる場合がある。例えば、あるコンピュータ装置によって生成された構造化文書データがデータベースサーバ装置へ送信され、その構造化文書データを用いてデータベースの更新処理が行われた後に、その構造化文書データがプリンタなどの印刷装置へ送信され、その構造化文書データを用いて印刷処理が為される場合などである。このような場合には、実行される処理毎に構造化文書データをその処理に好適な態様に改変できたならば、その構造化文書データを用いて処理を行う際の効率を向上させることができ便利である。
【０００８】
しかしながら、特許文献１や特許文献２に記載された技術では、構造化文書データの全体を解析した後に、その構造化文書データを改変するようになっている。このため、各コンピュータ装置において実際に改変される部分だけを解析してその構造化文書データを改変することが可能な場合であっても、常に、構造化文書データの全体が解析されることになってしまう。これは無駄である。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明は、以上に説明した背景の下に為されたものであり、一連の処理を逐次実行する際に、各処理において用いられるデータを含んでいる処理対象データのデータ構造を実行される処理毎に改変する技術を提供することを目的としている。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本発明は、各々の処理を特定する処理内容指示データが実行順に複数配列されている第１のデータブロックと前記各処理にて用いられるパラメータが各処理毎に配列されている第２のデータブロックとを含んでいる処理内容データと前記各処理を施すべきデータを表す処理対象データとを取得して記憶する取得手段と、前記取得手段に記憶されている前記処理内容データの前記第２のデータブロックに書き込まれている各パラメータを用いて、該処理内容データの前記第１のデータブロックに書き込まれている各処理内容指示データにより特定される処理を前記処理対象データの表すデータへ施す実行手段であって、前記処理内容指示データの配列順に処理を実行する実行手段と、前記実行手段により実行された処理の直後に実行されるべき処理にて用いられるパラメータの位置が他のパラメータより先に位置するように、前記取得手段に記憶されている前記処理内容データの前記第２のデータブロックを変更する変更手段とを有する情報処理装置を提供する。
また、上記課題を解決するために、本発明は、コンピュータ装置に、各々の処理を特定する処理内容指示データが実行順に複数配列されている第１のデータブロックと前記各処理にて用いられるパラメータが各処理毎に配列されている第２のデータブロックとを含んでいる処理内容データと前記各処理を施すべきデータを表す処理対象データとを取得して記憶する取得機能と、前記取得機能により該コンピュータ装置に記憶された前記処理内容データの前記第２のデータブロックに書き込まれている各パラメータを用いて、該処理内容データの前記第１のデータブロックに書き込まれている各処理内容指示データにより特定される処理を前記処理対象データの表すデータへ施す実行機能であって、前記処理内容指示データの配列順に処理を実行する実行機能と、前記実行機能により実行された処理の直後に実行されるべき処理にて用いられるパラメータの位置が他のパラメータより先に位置するように、該コンピュータ装置に記憶されている前記処理内容データの前記第２のデータブロックを変更する変更機能とを実現させるプログラムを提供する。
【００１１】
このような情報処理装置およびプログラムによれば、上記処理内容データの表す一連の処理を逐次実行する度に、実行した処理に後続して実行すべき後続処理にて用いられるデータが他のデータよりも先に出現する位置に配置されるように上記処理対象データの有するデータブロックが並び替えられる。
【発明の効果】
【００１２】
本発明によれば、一連の処理を逐次実行する度に、その処理に後続して実行するべき後続処理にて用いられるパラメータが他のパラメータよりも先に出現する位置に配置されるように上記処理内容データが変更される。このため、後続処理において、処理内容データの全体を解析しなくても、その処理の実行に用いるパラメータを特定することができるといった効果を奏する。
【発明を実施するための最良の形態】
【００１３】
以下、本発明を実施するための最良の形態について図面を参照しつつ説明する。
［Ａ：構成］
（１：全体構成）
図１は、本発明の一実施形態に係る情報処理装置を有する情報システムの一例を示す図である。図１の端末装置１０は、例えばパーソナルコンピュータ（以下、「ＰＣ」）であり、例えばＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などの通信網２０に接続されている。この端末装置１０は、ユーザの指示に応じてＸＭＬデータを生成し通信網２０を介して他の電子機器へ宛てて送信する機能を備えている。なお、本実施形態では、通信網２０がＬＡＮである場合について説明するが、この通信網２０はＬＡＮに限定されるものではなく、例えばインターネットであっても良いことは言うまでもない。
【００１４】
情報処理装置３０は、通信網２０に接続されているコンピュータ装置であり、画像読み取り機能と画像形成機能と画像記憶機能とを備えた複合機である。この情報処理装置３０は、画像読み取り機能によって読み取った画像に対応する画像データを加工し記憶したり、その画像データに対応する画像を印刷用紙やＯＨＰ（Ｏｖｅｒ  Ｈｅａｄ  Ｐｒｏｊｅｃｔｏｒ）シートなどの記録材へ転写し出力することなどができる。加えて、この情報処理装置３０は、ＸＭＬデータ解析機能を有しており、その解析結果に応じた処理を行う機能を有している。
【００１５】
図１に示す情報システムにおいては、図２に示すようなＸＭＬデータが端末装置１０で生成され通信網２０を介して情報処理装置３０へ送信されてくる。図２に示されるように、このＸＭＬデータには、ｐｒｏｃｅｓｓ＿ｉｎｆｏタグで特定されるデータとｐｒｏｃｅｓｓｅｄ＿ｄａｔａタグで特定されるデータとの２種類のデータが書き込まれている。以下では、前者を「処理内容データ」と称し、後者を「処理対象データ」と称する。詳細については後述するが、処理内容データとは、情報処理装置３０に行わせる各種処理の実行順およびその実行状況を表すデータと各処理の実行の際に用いられるパラメータを表すデータとが含まれている。一方、処理対象データとは、情報処理装置３０にて実行される各種処理の対象となるデータを特定するデータである。処理対象データの一例としては、例えば、画像データや、他のＸＭＬデータ、ＰＤＬ、或いは、これらのデータの格納場所を表すデータ（例えば、ＵＲＬ）などが挙げられる。以下では、図２に示されるＸＭＬデータに書き込まれている処理内容データについて詳細に説明する。
【００１６】
図２に示されているように、本実施形態に係る処理内容データには、ｊｏｂ＿ｉｎｆｏタグ、ｓｃａｎ＿ｐａｒａｍタグ、ｐｒｉｎｔ＿ｐａｒａｍタグおよびｓｔｏｒｅ＿ｐａｒａｍタグで特定される４つのデータブロックが含まれている。図２に示されているように、ｊｏｂ＿ｉｎｆｏタグで特定されるデータブロックには、要素名がｓｃａｎ、ｐｒｉｎｔおよびｓｔｏｒｅである３つのデータが含まれている。本実施形態では、要素名がｓｃａｎであるデータは、処理対象データとなる画像データを上記画像読み取り機能を用いて読み取る画像読み取り処理を表している。また、要素名がｐｒｉｎｔであるデータは、処理対象データである画像データに応じた画像を記録材へ転写し出力する印刷処理を表している。そして、要素名がｓｔｏｒｅであるデータは、処理対象データである画像データを記憶し蓄積するデータ蓄積処理を表している。このように、ｊｏｂ＿ｉｎｆｏタグで特定されるデータブロックには、情報処理装置３０に実行させるべき各処理を表すデータが書き込まれている。加えて、本実施形態に係る情報処理装置３０は、ｊｏｂ＿ｉｎｆｏタグで特定されるデータブロックに書き込まれている各データで表される処理を各データが書き込まれている順に実行するようになっている。つまり、ｊｏｂ＿ｉｎｆｏタグで特定されるデータは、画像読み取り処理と印刷処理とデータ蓄積処理とを、この順序で行うべきことを表している。以下では、上記３つの要素名（ｓｃａｎ、ｐｒｉｎｔおよびｓｔｏｒｅ）のように、情報処理装置３０に実行させる個々の処理を示すデータを「処理内容指示データ」と呼ぶ。そして、これら３つの要素名で表されるデータには、ｄｏｎｅ属性と呼ばれる属性が割り当てられており、属性値として“Ｙｅｓ”または“Ｎｏ”の何れか一方の値を有している。このｄｏｎｅ属性は、各要素名で表される処理が実行済みであるか否かを表すものであり、属性値が“Ｙｅｓ”である場合には、その処理が実行済みであることを表し、逆に、属性値が“Ｎｏ”である場合には、その処理が未実行であることを表している。
【００１７】
一方、図２に示すＸＭＬデータにおいて、ｓｃａｎ＿ｐａｒａｍ、ｐｒｉｎｔ＿ｐａｒａｍおよびｓｔｏｒｅ＿ｐａｒａｍの各タグで特定されるデータは、夫々、対応する処理にて用いられるパラメータである。例えば、ｓｃａｎ＿ｐａｒａｍタグで特定されるデータは、画像読み取り処理にて用いられるパラメータ（例えば、読み取る原稿の用紙サイズや、読み取り範囲など）であり、ｐｒｉｎｔ＿ｐａｒａｍタグで特定されるデータは印刷処理にて用いられるパラメータ（印刷する印刷用紙の用紙サイズや、印刷部数など）である。
【００１８】
図１に示す情報処理装置３０は、基本的に、端末装置１０から受け取ったＸＭＬデータに書き込まれている処理内容データの表す各処理を実行する度に、そのＸＭＬデータをパースしてＤＯＭを作成し、作成したＤＯＭにしたがって処理を行った後に、そのＤＯＭをシリアライズして再度ＸＭＬデータを出力するようになっている。つまり、本実施形態では、上記画像読み取り処理、印刷処理およびデータ蓄積処理の各処理が行われる度に、上記パースおよびシリアライズが行われる。このように、各処理毎にパースおよびシリアライズが行われるため、本実施形態に係る情報処理装置においては、各処理毎に実行する日時を変えることが可能になっている。以下では、上記３つの処理が各々異なる日時に実行される場合について説明する。そして、本実施形態に係る情報処理装置３０は、上記シリアライズを行う際に、本発明に係る情報処理装置に特有な態様でシリアライズを行う。具体的には、情報処理装置３０は、後続して実行するべき処理にて用いられるパラメータが他のパラメータよりも先に出現する位置に配置されるように並び替えてシリアライズを行うようになっている。これは、後続する処理を行うためにＸＭＬデータをパースしてＤＯＭを生成する際に、ＸＭＬデータの全体を解析することなく、その処理に必要となるパラメータのみを読み込んでパースすることが可能になるようにするためである。
【００１９】
なお、本実施形態では、情報処理装置３０が解釈可能な構造化文書データの一例として、ＸＭＬデータを用いる場合について説明するが、係る構造化文書データはＸＭＬデータに限定されるものではなく、例えばＳＧＭＬ（Ｓｔａｎｄａｒｄ  Ｇｅｎｅｒａｌｉｚｅｄ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）で記述された構造化文書データであっても良いことは言うまでもない。また、図１に示す情報システムに含まれている端末装置１０は、一般的なＰＣと同一のハードウェア構成および機能を有しているため、詳細な説明は省略し、情報処理装置３０を中心に説明する。
【００２０】
（２：情報処理装置３０の構成）
まず、情報処理装置３０の構成について図面を参照しつつ説明する。図３は、情報処理装置３０のハードウェア構成の一例を示す図である。図３に示されているように、情報処理装置３０は、制御部１００と、通信インターフェイス（以下、「ＩＦ」）部１１０と、画像読み取り部１２０と、印刷部１３０と、記憶部１４０と、これら各構成要素間のデータ授受を仲介するバス１５０とを有している。
【００２１】
制御部１００は、例えばＣＰＵであり、記憶部１４０に格納されているソフトウェアを実行することにより情報処理装置３０の各部を制御することができる。この制御部１００は、記憶部１４０に格納されているソフトウェアにしたがって作動することにより、図３に示されているように、データ取得手段１０１、パース手段１０２、処理内容決定手段１０３、データ処理実行手段１０４およびシリアライズ手段１０５の５つのソフトウェアモジュールを実現する。これら５つのソフトウェアモジュールが担っている機能については、後述する。
【００２２】
通信ＩＦ部１１０は、通信網２０に接続されており、通信網２０を介して送信されてくるデータを受信し、受信したデータを制御部１００へ引渡すとともに、制御部１００から引渡されたデータを通信網２０へ送出することができる。画像読み取り部１２０は、例えばスキャナとオートドキュメントフィーダ（Ａｕｔｏ Ｄｏｃｕｍｅｎｔ Ｆｅｅｄｅｒ：以下、「ＡＤＦ」という）などの自動給紙機構とを備えており、このＡＤＦに載置された原稿を上記スキャナによって読み取り、読み取った原稿の画像に対応する画像データを制御部１００へ引渡すことができる。印刷部１３０は、例えば電子写真技術により形成される画像を印刷用紙へ転写し出力する機能を備えており、制御部１００から引渡された画像データに対応する画像を印刷用紙へ転写し出力するためのものである。なお、本実施形態では、情報処理装置３０が画像読み取り部１２０と印刷部１３０とを備えている場合について説明したが、情報処理装置３０とは別体の画像読み取り装置に読み取らせた画像データを制御部１００に引渡すようにするとしても良く、また、情報処理装置３０とは別体の印刷機に画像を出力させるとしても良いことは勿論である。
【００２３】
記憶部１４０は、揮発性記憶部１４０ａと不揮発性記憶部１４０ｂと二次記憶部１４０ｃとを含んでいる。揮発性記憶部１４０ａは、例えばＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）であり、ソフトウェアを実行中の制御部１００によってワークエリアとして利用される。一方、不揮発性記憶部１４０ｂは、例えばＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）であり、オペレーティングシステム（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ：以下、「ＯＳ」）を制御部１００に実現させるためのＯＳソフトウェアや、上記５つのソフトウェアモジュールを制御部１００に実現させるための制御ソフトウェアなどが書き込まれている。なお、本実施形態では、不揮発性記憶部１４０ｂをＲＯＭを用いて構成する場合について説明するが、例えばＥＥＰＲＯＭ（Ｅｌｅｃｔｒｏｎｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）などデータを書換え可能に記憶する記憶素子を用いて構成するとしても良いことは勿論である。二次記憶部１４０ｃは、例えばハードディスクであり、上記ワークエリアが保持しているデータの退避領域や、情報処理装置３０の電源が切られた場合でも保持するデータの格納領域として用いられる。以下では、これらソフトウェアを実行することによって、制御部１００に付与される機能について説明する。
【００２４】
情報処理装置３０の電源（図示省略）が投入されると、制御部１００は、まず、不揮発性記憶部１４０ｂからＯＳソフトウェアを読み出し実行する。ＯＳソフトウェアにしたがって作動している状態の制御部１００には、情報処理装置３０の各部を制御する機能や他のソフトウェアを不揮発性記憶部１４０ｂから読み出し実行する機能などが付与される。なお、以下では、ＯＳソフトウェアの実行を完了しＯＳを実現している状態の制御部１００は、即座に、上記制御ソフトウェアを読み出し実行するものとする。この制御ソフトウェアにしたがって作動している制御部１００は、図３に示されている５つのソフトウェアモジュールを実現し、これら５つのソフトウェアモジュールを図４に示されているフローチャートにしたがって連携動作させることにより、本発明に係る情報処理装置に特有な機能を実現している。以下、制御部１００が実現する５つのソフトウェアモジュールについて説明する。
【００２５】
データ取得手段１０１は、上述した処理対象データと処理内容データとを取得し二次記憶部１４０ｃへ書き込む機能を担っている。本実施形態においては、通信網２０を介して送信されてくるＸＭＬデータに上記処理対象データと上記処理内容データとが含まれており、データ取得手段１０１は、通信網２０を介して送信されてくるＸＭＬデータを通信ＩＦ部１１０を介して受信することによって、上記処理対象データと上記処理内容データとを取得する。このように、本実施形態では、処理対象データと処理内容データとが同一のＸＭＬデータに含まれている場合について説明するが、処理対象データとは別個に通信網２０を介して端末装置１０から処理内容データが送信されてくるとしても良く、また、情報処理装置３０の図示せぬ操作部に備えられている操作子（テンキーやカーソルキーなど）を操作することによって入力されるとしても勿論良い。
【００２６】
パース手段１０２は、データ取得手段１０１によって取得され二次記憶部１４０ｃへ書き込まれたＸＭＬデータをパースし、そのＸＭＬデータに対応するＤＯＭを生成し揮発性記憶部１４０ａへ書き込む機能を担っている。本実施形態では、データ取得手段１０１によって取得されたＸＭＬデータには、処理対象データと処理内容データとが含まれているので、このパース手段１０２によって揮発性記憶部１４０ａに書き込まれるＤＯＭには、処理内容データと処理対象データとが含まれることになる。前述したように、ＤＯＭは、ＸＭＬデータのデータ構造を反映した木構造を有するデータである。
【００２７】
処理内容決定手段１０３は、上記パース手段１０２によって生成されたＤＯＭに内包されている処理内容データに基づいて、情報処理装置３０が実行するべき処理とその処理を実行する際に用いるべきパラメータとを決定する機能を担っている。
【００２８】
データ処理実行手段１０４は、処理内容決定手段１０３によって決定された処理を実行する機能を担っている。本実施形態では、上述したように、データ処理実行手段１０４は、処理内容決定手段１０３によって決定された処理を実行する際に、その処理に用いられるパラメータをＤＯＭから読み出し、そのパラメータを用いてＤＯＭに内包されている処理対象データで表されるデータに対して当該処理を実行する。
【００２９】
シリアライズ手段１０５は、ある処理をデータ処理実行手段１０４によって実行した後に、その処理に後続して実行するべき後続処理にて用いられるパラメータが他のパラメータよりも先に出現する位置に配置されるように、上記ＤＯＭを図５に示すフローチャートにしたがって改変し、その改変結果に応じたＸＭＬデータを生成する機能を担っている。より詳細に説明すると、シリアライズ手段１０５は、まず、データ処理実行手段１０４によって実行された処理に後続して実行するべき後続処理をＤＯＭに格納されている処理内容データに基づいて特定する。そして、シリアライズ手段１０５は、その特定結果と図６に示す関連度管理テーブルの格納内容とに基づいて、その後続処理に対して高い関連度を有するタグを特定する。図６に示されているように、この関連度テーブルには、ＸＭＬデータに内包されているタグ毎に、そのタグで特定されるデータに高い関連度を有する処理を表すデータが格納されている。例えば、図６に例示されている関連度テーブルの格納内容は、ｊｏｂ＿ｉｎｆｏタグについては全ての処理と、ｓｃａｎ＿ｐａｒａｍタグについては画像読み取り処理と、ｐｒｉｎｔ＿ｐａｒａｍについては印刷処理と、ｓｔｏｒｅ＿ｐａｒａｍについてはデータ蓄積処理と、ぞれぞれ関連度が高いことを表している。そして、シリアライズ手段１０５は、このようにして特定されたタグが先頭から近い位置に配置されるように、各タグの配列を並び替えてＤＯＭを改変し、その改変結果に応じたＸＭＬデータを生成する。なお、本実施形態では、ＸＭＬデータに内包されているタグ毎に、そのタグで特定されるデータに高い関連度を有する処理を表すデータを対応付けて関連度管理テーブルに格納させておく場合について説明したが、更に、その関連の強さを表すデータを対応付けて格納しておくとしても勿論良い。
【００３０】
以上に説明したように、本実施形態に係る情報処理装置３０のハードウェア構成は一般的なコンピュータ装置のハードウェア構成と同一であり、記憶部１４０に格納されている各種ソフトウェアを制御部１００に実行させることにより、その制御部１００に本発明に係る情報処理装置に特有な機能が付与される。また、本実施形態では、制御ソフトウェアを制御部１００に実行させることにより、本発明に係る情報処理装置に特有な５つの機能の各々を担っているソフトウェアモジュールを制御部１００に実現させる場合について説明した。しかしながら、これら５つのソフトウェアモジュールの各々と同一の機能を有するハードウェアモジュールを用いて情報処理装置を構成するとしても良いことは勿論である。
【００３１】
［Ｂ：動作］
以下、本実施形態に係る情報処理装置３０の特徴を顕著に示す動作について図面を参照しつつ説明する。以下に説明する動作例では、図２に示すＸＭＬデータが端末装置１０から情報処理装置３０へ送られ、上記データ取得手段１０１によって二次記憶部１４０ｃに格納されているものとする。前述したように、このＸＭＬデータには、画像読み取り処理、印刷処理およびデータ蓄積処理の３つの処理を図７に示されているフローチャートにしたがって行うべきことを表す処理内容データと、上記各処理を施すべきデータを表す処理対象データとが含まれている。加えて、以下に説明する動作例では、情報処理装置３０の制御部１００は、上述した制御ソフトウェアにしたがって作動しており、上述した５つのソフトウェアモジュールを実現しているものとする。
【００３２】
（１：データ処理動作）
まず、図２に示すＸＭＬデータにしたがって、情報処理装置３０の制御部１００が行うデータ処理動作の流れの概略を図４を参照しつつ説明する。制御部１００により実現されているパース手段１０２は、二次記憶部１４０ｃに格納されているＸＭＬデータを読み出し、このＸＭＬデータをパースして、対応するＤＯＭを生成し揮発性記憶部１４０ａに書き込む（ステップＳＡ１）。より詳細に説明すると、パース手段１０２は、上記ＸＭＬデータに書き込まれているタグの階層構造を解析しつつ、その階層構造に対応したＤＯＭを生成し揮発性記憶部１４０ａに書き込む。
【００３３】
次いで、ステップＳＡ１にて、揮発性記憶部１４０ａに展開したＤＯＭを、制御部１００によって実現されている処理内容決定手段１０３により解析し、実行するべき処理とその処理に用いるべきパラメータとを決定する（ステップＳＡ２）。具体的には、処理内容決定手段１０３は、上記ＤＯＭに含まれている処理内容指示データをその配列順に読み出し、その属性値が“Ｎｏ”である処理内容指示データのうち、最初に見つかったものを実行するべき処理を表す処理内容指示データとして決定するとともに、その処理内容指示データに対応したパラメータをＤＯＭから読み出す。例えば、図２に示すＸＭＬデータに対応したＤＯＭに対しては、処理内容決定手段１０３は、画像読み取り処理を実行するべき処理として決定し、その画像読み取り処理にて用いるパラメータ（すなわち、ｓｃａｎ＿ｐａｒａｍタグで特定されるパラメータ）を決定する。
【００３４】
処理内容決定手段１０３によって実行するべき処理が決定されると、図４に示されているように、制御部１００によって実現されているデータ処理実行手段１０４が上記処理内容決定手段１０３によって決定された処理を実行する（ステップＳＡ３）。本動作例では、データ処理実行手段１０４は、画像読み取り処理を実行し、画像読み取り部１２０にセットされている原稿を読み取り、読み取った画像に対応する画像データを処理対象データとしてＤＯＭへ書き込む。そして、データ処理実行手段１０４は、画像読み取り処理が完了したことを表すように処理内容データを更新する。具体的には、データ処理実行手段１０４は、画像読み取り処理を示す処理内容指示データのｄｏｎｅ属性の属性値を"Ｙｅｓ"に書き換える。
【００３５】
ステップＳＡ２にて決定された処理の実行が完了すると、図４に示されているように、制御部１００により実現されているシリアライズ手段１０５により、揮発性記憶部１４０ａに格納されているＤＯＭがシリアライズされる（ステップＳＡ４）。以下、シリアライズ手段１０５が行う動作について、図５を参照しつつ詳細に説明する。
【００３６】
（２：シリアライズ動作）
図５は、シリアライズ手段１０５が実行するシリアライズ動作の流れを示すフローチャートである。図５に示されているように、シリアライズ手段１０５は、まず、上記ステップＳＡ３にて実行した処理に後続して実行するべき後続処理をＤＯＭに含まれている処理内容データに基づいて特定する（ステップＳＢ１）。具体的には、シリアライズ手段１０５は、ＤＯＭの処理内容データに配列されている処理内容指示データをその配列順に読み出し、ｄｏｎｅ属性の属性値が“Ｎｏ”であるもののうち、最初に見つかったものを後続処理を表す処理内容データとして特定する。前述したように、揮発性記憶部１４０ａに格納されているＤＯＭには、画像読み取り処理に後続して印刷処理を行うべきことを示す処理内容データが書き込まれているので、シリアライズ手段１０５は、印刷処理を後続処理として特定する。
【００３７】
次いで、シリアライズ手段１０５は、上述した関連度管理テーブル（図６参照）の格納内容とステップＳＢ１にて特定した後続処理とに基づいて、各タグ毎にステップＳＢ１にて特定した後続処理との関連度を算出する（ステップＳＢ２）。本実施形態では、ステップＳＢ１において、印刷処理が特定されているので、シリアライズ手段１０５は、印刷処理を表すデータに対応付けて関連度管理テーブルに格納されているタグには、その印刷処理との関連度が高いことを表すデータを割り当てる。すなわち、ｊｏｂ＿ｉｎｆｏタグとｐｒｉｎｔ＿ｐａｒａｍタグについては、印刷処理との関連度が高いことを示すデータ（本動作例では、"１"）を割り当て、ｓｃａｎ＿ｐａｒａｍタグとｓｔｏｒｅ＿ｐａｒａｍタグについては、印刷処理との関連度が低いことを示すデータ（本動作例では、"０"）を割り当てる。
【００３８】
次いで、シリアライズ手段１０５は、ステップＳＢ２にて算出した関連度が高いタグに対応するパラメータほど先頭から近い位置に配置されるように、ＤＯＭの木構造を変更する（ステップＳＢ３）。上述したように、本動作例では、後続処理として特定された印刷処理との関連度が高いタグは、ｊｏｂ＿ｉｎｆｏタグとｐｒｉｎｔ＿ｐａｒａｍタグとであるから、ｊｏｂ＿ｉｎｆｏタグとｐｒｉｎｔ＿ｐａｒａｍタグとが先頭から近い位置に配置されるように、ＤＯＭの木構造が変更される。例えば、以上に説明した動作が完了した後に、揮発性記憶部１４０ａに格納されているＤＯＭは、図８に示すＸＭＬデータに対応したものになっている。
【００３９】
以上に説明した並べ替え動作が完了すると、シリアライズ手段１０５は、揮発性記憶部１４０ａに格納されているＤＯＭをシリアライズして、このＤＯＭに対応したＸＭＬデータを生成し、このＸＭＬデータで二次記憶部１４０ｃに格納されているＸＭＬデータを更新する（ステップＳＢ４）。その結果、二次記憶部１４０ｃに格納されているＸＭＬデータは、図８に示す状態になる。そして、上記画像読み取り処理が完了した後に、日を改めて上記画像読み取り処理に後続して実行するべき処理を情報処理装置３０に実行させる場合には、情報処理装置３０の二次記憶部１４０ｃに格納されているＸＭＬデータに基づいて、再度、上述したステップＳＡ１〜ステップＳＡ４の処理を実行することになる。このとき、不揮発性記憶部１４０ｂに格納されているＸＭＬデータは、図８に示す状態であり、印刷処理に用いられるパラメータが他の処理に用いられるパラメータよりも先に出現する位置に配置されている。このため、上記パース手段１０２を用いてパースを行う際に、ＸＭＬデータの全体を解析することなく、ＤＯＭを生成することができる。具体的には、各処理内容指示データと当該印刷処理に用いられるパラメータを示すタグとを読み込んだ時点で、その処理の実行に用いられるパラメータを特定することが可能になる。以降、印刷処理が完了すると、印刷処理に後続して実行すべき後続処理は、データ蓄積処理であるから、データ蓄積処理に関連度が高いタグで特定されるデータがＸＭＬデータの先頭から近い位置に配置されるようにＤＯＭが変更されシリアライズされる。データ蓄積処理に関連度が高いタグは、ｊｏｂ＿ｉｎｆｏタグとｓｔｏｒｅ＿ｐａｒａｍタグとであるから、印刷処理が完了した後には、図９に示すＸＭＬデータが二次記憶部１４０ｃに書き込まれることになる。
【００４０】
［Ｃ：変形例］
以上、本発明の一実施形態について説明したが、係る実施形態に以下に説明するような種々の変形を加えても良いことは勿論である。
【００４１】
（１：変形例１）
上述した実施形態では、データ処理実行手段１０４により実行された処理に後続して実行するべき後続処理にて用いられるパラメータが他のパラメータよりも先に出現する位置に配置されるように内部表現形式データを変更してからシリアライズする場合について説明した。しかしながら、内部表現形式データに加える変更の態様は係る並べ替えに限定されるものではない。例えば、データ処理実行手段１０４にて実行された処理に後続して実行するべき後続処理にて用いられないパラメータが内部表現形式データに含まれている場合には、そのパラメータを削除することによって内部表現形式データを変更するとしても勿論良い。このようにして削除されるパラメータは、後続処理を実行する際には不要であり、このように不要なパラメータを削除することによって、シリアライズにより生成されるＸＭＬデータのデータサイズを削減することが可能になるといった効果を奏する。
【００４２】
（２：変形例２）
上述した実施形態では、画像読み取り機能、画像形成機能およびデータ記憶機能を有する複合機に本発明を適用する場合について説明したが、本発明の適用対象は係る複合機に限定されるものではなく、処理内容データにしたがって一連の処理を実行するコンピュータ装置であれば何れであっても良い。但し、本発明は、上記コンピュータ装置が組み込み機器である場合に顕著な効果を奏する。その理由は、この種の組み込み機器は、例えばＰＣなどの一般的なコンピュータ装置に比較して処理能力が低く、効率的にデータ処理を行うことが求められるからである。
【００４３】
（３：変形例３）
上述した実施形態では、画像読み取り処理、印刷処理およびデータ蓄積処理の各々を異なる日時に情報処理装置３０に実行させる場合について説明した。しかしながら、これら各処理を夫々個別の装置に行わせるとしても良いことは勿論である。例えば、情報処理装置３０には、画像読み取り処理のみを行わせ、印刷処理やデータ蓄積処理は情報処理装置３０とは別体の機器に行わせるとしても勿論良い。このような場合には、印刷処理やデータ蓄積処理を行う各機器は情報処理装置３０の記憶部に直接アクセスすることができないが、データの並べ替えが行われた内部表現形式データに対応する構造化文書データを通信ＩＦ部１１０を介して、これらの機器へ送信させるようにすることによって、これらの機器に上記構造化文書データを利用させるようにすることが可能になる。
【００４４】
（４：変形例４）
上述した実施形態では、本発明に係る情報処理装置に特有な機能を実現させるための制御ソフトウェアを情報処理装置３０に予め記憶させておく場合について説明した。しかしながら、例えばＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）などのコンピュータ装置読み取り可能な記録媒体に、上記制御ソフトウェアを書き込んでおき、この記録媒体を用いて一般的なコンピュータ装置に上記制御ソフトウェアをインストールするとしても良い。また、インターネットなどの通信網経由で上記制御ソフトウェアを配信し、このようにして配信される制御ソフトウェアを一般的なコンピュータ装置にインストールするとしても勿論良い。このようにすると、一般的なコンピュータ装置に本発明に係る情報処理装置と同一の機能を追加することが可能になるといった効果を奏する。
【図面の簡単な説明】
【００４５】
【図１】本発明の一実施形態に係る情報処理装置３０を有する情報システムの全体構成の一例を示す図である。
【図２】同情報処理装置３０が受信するＸＭＬデータの一例を示す図である。
【図３】同情報処理装置３０のハードウェア構成の一例を示す図である。
【図４】同情報処理装置３０の制御部１００が行うデータ処理動作の流れを示すフローチャートである。
【図５】同情報処理装置３０の制御部１００が行うシリアライズ動作の流れを示すフローチャートである。
【図６】同情報処理装置３０の揮発性記憶部１４０ａに展開される関連度管理テーブルの一例を示す図である。
【図７】同情報処理装置３０がＸＭＬデータにしたがって実行する処理の流れを示すフローチャートである。
【図８】同情報処理装置３０の揮発性記憶部１４０ａに展開されているＤＯＭに対応するＸＭＬデータの一例を示す図である。
【図９】同情報処理装置３０の揮発性記憶部１４０ａに展開されているＤＯＭに対応するＸＭＬデータの一例を示す図である。
【符号の説明】
【００４６】
１０…端末装置、２０…通信網、３０…情報処理装置、１００…制御部、１１０…通信ＩＦ部、１２０…画像読み取り部、１３０…印刷部、１４０…記憶部、１４０ａ…揮発性記憶部、１４０ｂ…不揮発性記憶部、１４０ｃ…二次記憶部、１５０…バス。
【図１】
2005141310.tif 000003
【図２】
2005141310.tif 000004
【図３】
2005141310.tif 000005
【図４】
2005141310.tif 000006
【図５】
2005141310.tif 000007
【図６】
2005141310.tif 000008
【図７】
2005141310.tif 000009
【図８】
2005141310.tif 000010
【図９】
2005141310.tif 000011