(57)【要約】  【課題】デバイスがサービスに対応する機能を有していなくても、このデバイス側でサービスの提供を受けられるようにする  【解決手段】機能サーバは、入力／出力メディア変換処理を実行することで、複合機側にサービスを提供できる。この処理は、複合機の有する入出力デバイス，つまりこれら入出力デバイスで実現される機能に対応するメディアで処理結果（データ）が得られる処理となるように選択された変換モジュールにより行われるため（ｓ２５０４，ｓ２５１４）、こうして得られた処理結果であれば、複合機側でこの処理結果に基づいて複合機の有する機能を実現することができる。よって、複合機側においては、複合機自身が有していない機能が必要なサービスであったとしても、そのサービスの提供を、複合機自身が対応するメディア（実現可能な機能で対応可能なメディア）の処理結果により間接的に受けることができる。【選択図】図４０
2006135693.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介したサービスを提供可能なサービス提供手段と、
該サービス提供手段によるサービスの提供を受けることのできるデバイスと、
を備えたサービス提供システムであって、
前記デバイスにおいて、
前記サービス提供手段に対してサービスの提供を要求するサービス要求手段と、
該サービス要求手段による要求を受けた前記サービス提供手段によりサービスの提供を受けて当該デバイスの有する機能を実現するサービス実現手段と、が備えられており、
前記サービス提供手段において、
前記デバイスの備えるサービス要求手段による要求を受けた場合に、該デバイスに対してサービスを提供する提供実行手段と、
前記デバイスの有する機能を示す保有機能情報に基づいて、前記提供実行手段によるサービスの提供を受けるにあたり、前記デバイス側で必要な機能を有しているか否かを判定する機能判定手段と、を備え、
前記提供実行手段は、前記機能判定手段により必要な機能を有していないと判定された場合において、前記デバイスの備える前記サービス要求手段による要求を受けた場合、前記デバイスの有する機能に対応するメディアでサービスの提供を可能とする処理である形式変換処理を実行してなるサービスを提供する
ことを特徴とするサービス提供システム。
【請求項２】
前記デバイスにおいては、
画像を読み取りその画像を表す画像データを生成する機能および画像データの表す画像を印刷する機能のうち少なくとも一方の機能を有しており、
前記サービス提供手段においては、
前記デバイスの有する機能により生成された画像データおよび印刷される画像を示す画像データのうち少なくともいずれか一方に関するサービスを提供可能に構成されている
ことを特徴とする請求項１に記載のサービス提供システム。
【請求項３】
前記サービス提供手段において、
前記機能判定手段は、前記保有機能情報で示される機能が、前記提供実行手段によるサービスの提供を受けるのに必要な機能を示す必要機能情報で示される機能に含まれている場合に、前記デバイス側で必要な機能を有していると判定する
ことを特徴とする請求項１または請求項２に記載のサービス提供システム。
【請求項４】
前記デバイスにおいて、
前記サービス提供手段に前記保有機能情報を通知する情報通知手段が備えられており、
前記サービス提供手段において、
前記機能判定手段は、前記デバイスの備える情報通知手段により通知された保有機能情報に基づいて、前記デバイス側で必要な機能を有しているか否かを判定する
ことを特徴とする請求項３に記載のサービス提供システム。
【請求項５】
前記サービス提供手段において、
前記機能判定手段により前記デバイス側で必要な機能を有していないと判定された場合に、前記デバイスの有する機能から、いずれかの機能を所定の決定条件に基づいて決定する機能決定手段が備えられており、
前記提供実行手段は、複数種類の形式変換処理のうちいずれかの形式変換処理を実行することによりサービスを提供可能であって、前記機能決定手段により決定された機能に対応するメディアでサービスの提供を可能とする処理である形式変換処理を実行してなるサービスを提供する、ように構成されている
ことを特徴とする請求項１から４のいずれかに記載のサービス提供システム。
【請求項６】
前記デバイスにおいて、
ユーザに前記サービス提供手段の備える機能決定手段が機能を決定する際の決定条件を指定させる条件指定手段と、
該条件指定手段により指定された決定条件を前記サービス提供手段に通知する条件通知手段と、が備えられており、
前記サービス提供手段において、
前記機能決定手段は、前記デバイスの備える条件通知手段により通知された決定条件に基づいて機能を決定する、ように構成されている
ことを特徴とする請求項５に記載のサービス提供システム。
【請求項７】
前記サービス提供手段において、
前記提供実行手段は、前記デバイスから当該サービス提供手段へ送信されたデータに対する前記形式変換処理，および，当該サービス提供手段から前記デバイスへ送信されるデータに対する前記形式変換処理をそれぞれ実行可能に構成されている
ことを特徴とする請求項１から６のいずれかに記載のサービス提供システム。
【請求項８】
前記デバイスに対して、前記サービス提供手段により提供可能な１以上のサービスのうちいずれかのサービスの指定を要求する指定要求手段が備えられており、
前記デバイスにおいて、
前記指定要求手段による要求を受けた際に、ユーザに１以上のサービスのうちいずれかのサービスを指定させるサービス指定手段が備えられており、
前記サービス要求手段は、前記サービス指定手段により指定されたサービスの提供を前記サービス提供手段に対して要求する、ように構成されている
ことを特徴とする請求項１から７のいずれかに記載のサービス提供システム。
【請求項９】
前記指定要求手段は、前記機能判定手段により必要な機能を有していないと判定されている場合、前記形式変換処理を実行してなるサービスを含む１以上のサービスのうちいずれかのサービスの指定を要求して、
前記サービス提供手段において、
前記提供実行手段は、前記デバイスの備える前記サービス要求手段により前記形式変換処理を実行してなるサービスの提供を要求された場合、該形式変換処理を実行してなるサービスを提供する、ように構成されている
ことを特徴とする請求項８に記載のサービス提供システム。
【請求項１０】
サーバからのサービスの提供を受けることが可能なデバイスであって、
該デバイスからの要求に応じて、該デバイスの有する機能により生成または出力されたデータに関するサービスを提供するサーバに対してサービスの提供を要求するサービス要求手段と、
前記サーバに当該デバイスの有する機能を示す保有機能情報を通知する情報通知手段と、
該サービス要求手段による要求を受けた前記サーバによりサービスの提供を受けて当該デバイスの有する機能を実現するサービス実現手段と、が備えられている
ことを特徴とするデバイス。
【請求項１１】
画像を読み取りその画像を表す画像データを生成する機能および画像データの表す画像を印刷する機能のうち少なくとも一方の機能を有するデバイスからの要求に応じて、該デバイスの有する機能により生成された画像データおよび印刷される画像を示す画像データのうち少なくとも一方に関するサービスを提供するサーバであって、
前記デバイスの有する機能を示す保有機能情報に基づいて、前記提供実行手段によるサービスの提供を受けるにあたり、前記デバイス側で必要な機能を有しているか否かを判定する機能判定手段と、
該機能判定手段により必要な機能を有していないと判定されている場合、前記デバイスの備える前記サービス要求手段による要求を受けた際に、前記デバイスの有する機能に対応するメディアでサービスの提供を可能とする処理である形式変換処理を実行してなるサービスを提供する提供実行手段が備えられている
ことを特徴とするサーバ。
【請求項１２】
請求項１から９のいずれかに記載のサービス提供システムとして機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラム。
【請求項１３】
請求項１から９のいずれかに記載のデバイスとして機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラム。
【請求項１４】
請求項１から９のいずれかに記載のサーバとして機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サービスを提供するサービス提供システム，このシステムを構成するデバイスおよびサーバに関するものである。
【背景技術】
【０００２】
従来、デバイス（デジタル複写機）が備えていない機能を、ネットワークを介して接続されたホストコンピュータで実現するように構成したシステムが提案されている（特許文献１参照。）。
【０００３】
このシステムでは、デバイスからホストコンピュータへ、制御用のコマンドコードや画像の濃度データなどのビットデータを送信し、ホストコンピュータが、受信した制御用コマンドコードの内容を解析して、画像データに対して指定されている画像編集機能により画像処理を行う。こうしてホストコンピュータにより処理された画像データはデバイスに返送され、このデバイス側にて印刷される。
【特許文献１】特開平９−２３８２１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
このように、デバイス側では、ホストコンピュータによる画像データに画像処理を施す、といったサービスの提供を受けて画像データを印刷することができるが、これは、デバイスが画像データを印刷するための印刷部を備えていることが前提であり、デバイスがサービスの提供を受けるために必要な機能，この場合であれば印刷機能を有していなければ、当然、このようにサービスの提供を受けることはできない。
【０００５】
そして、上述したような画像データの印刷は、印刷機能を有するデバイスであれば可能であるため、このような画像の印刷を伴うサービスの提供を受けることに問題はないが、今後、ユーザが、このデバイスで他の機能を伴うサービスの提供を受けることを希望するようになった場合であっても、デバイスがそのサービスに対応する機能を有していない限り、そのサービスの提供を受けることができない。
【０００６】
本発明は、このような課題を解決するためになされたものであり、その目的は、デバイス側でサービスに対応する機能を有していない場合であっても、このデバイスによりサービスの提供を受けられるようにするための技術を提供することである。
【課題を解決するための手段】
【０００７】
上記課題を解決するため請求項１に記載のサービス提供システムは、ネットワークを介したサービスを提供可能なサービス提供手段と、該サービス提供手段によるサービスの提供を受けることのできるデバイスと、を備えたサービス提供システムである。このシステムは、前記デバイスにおいて、前記サービス提供手段に対してサービスの提供を要求するサービス要求手段と、該サービス要求手段による要求を受けた前記サービス提供手段によりサービスの提供を受けて当該デバイスの有する機能を実現するサービス実現手段と、が備えられている。また、前記サービス提供手段において、前記デバイスの備えるサービス要求手段による要求を受けた場合に、該デバイスに対してサービスを提供する提供実行手段と、前記デバイスの有する機能を示す保有機能情報に基づいて、前記提供実行手段によるサービスの提供を受けるにあたり、前記デバイス側で必要な機能を有しているか否かを判定する機能判定手段と、を備え、前記提供実行手段は、前記機能判定手段により必要な機能を有していないと判定された場合において、前記デバイスの備える前記サービス要求手段による要求を受けた場合、前記デバイスの有する機能に対応するメディアでサービスの提供を可能とする処理である形式変換処理を実行してなるサービスを提供する、ように構成されている。
【０００８】
このように構成されたサービス提供システムにおいて、サービス提供手段は、形式変換処理を実行することでデバイス側にサービスを提供するように構成されている。この形式変換処理は、デバイスの有する機能に対応するメディアでサービスの提供を可能とする処理であるため、これにより得られた処理結果であれば、デバイス側でこの処理結果に基づいてデバイスの有する機能でサービスの提供を受けることができる。
【０００９】
この構成における「サービス提供手段」は、例えば、ネットワーク上のサーバとして構成することができ、この場合、単一のサーバにより構成されていてもよく、複数のサーバにより構成されていてもよい。
【００１０】
また、上述した「デバイスの有する機能に対応するメディア」とは、デバイスの有する機能を実現するためのデータを示すものであって、例えば、画像を印刷する機能または画像を読み取る機能を有している場合であれば、これら機能を実現するため『画像データ』のことであり、音声を入出力する機能を有している場合であれば、これら機能を実現するための『音声データ』のことである。そして、サービス提供手段の備える提供実行手段により実行される「形式変換処理」とは、上述のようなデータを提供実行手段の処理結果として得るような処理であって、これにより、提供実行手段の処理結果として得られたメディアのデータに基づいてデバイスの有する機能を実現することができる。
【００１１】
また、上述したデバイスは、サービス提供手段によるサービスの提供を受けることのできるものであって、例えば、請求項２に記載のように、画像を読み取りその画像を表す画像データを生成する機能および画像データの表す画像を印刷する機能のうち少なくとも一方の機能を有しているものであって、この場合、サービス提供手段においては、前記デバイスの有する機能により生成された画像データおよび印刷される画像を示す画像データのうち少なくともいずれか一方に関するサービスを提供可能に構成されていればよい。
【００１２】
このように構成すれば、デバイスは、画像を読み取りその画像を表す画像データを生成する機能および画像データの表す画像を印刷する機能のうち少なくとも一方の機能を、サービス提供手段によるサービスの提供を受けて実現することができる。
【００１３】
また、上述したサービス提供手段において、機能判定手段は、デバイスの有する機能を示す保有機能情報に基づいて、デバイス側で必要な機能を有しているか否かを判定する手段であって、このときの判定方法については特に限定されない。例えば、請求項３に記載のように、前記保有機能情報で示される機能が、前記提供実行手段によるサービスの提供を受けるのに必要な機能を示す必要機能情報で示される機能に含まれている場合に、前記デバイス側で必要な機能を有していると判定する、といった判定方法を採用すればよい。
【００１４】
このように構成すれば、サービス提供手段側で必要機能情報を保持しておき、この必要機能情報に基づいて判定を行うことで、デバイス側で必要な機能を有しているか否かを判定することができる。
【００１５】
また、サービス提供手段側において機能判定手段による判定を行う際に用いられる保有機能情報については、あらかじめユーザがサービス提供手段側に登録（記憶）しておくように構成すればよいが、複数のデバイスが存在するネットワークでサービス提供手段を運営する場面において、このような登録作業は、デバイスの数に応じて負担の大きなものとなってしまうため、好ましいことではない。
【００１６】
そこで、このような保有機能情報について、デバイス自身から通知させるように構成するとよく、このためには、例えば、請求項４に記載のように、前記デバイスにおいて、前記サービス提供手段に前記保有機能情報を通知する情報通知手段が備えられており、前記サービス提供手段において、前記機能判定手段は、前記デバイスの備える情報通知手段により通知された保有機能情報に基づいて、前記デバイス側で必要な機能を有しているか否かを判定する、といった構成が考えられる。
【００１７】
このように構成すれば、サービス提供手段側では、デバイス自身からこのデバイスの保有機能情報を取得することができるため、サービス提供手段側でユーザが保有機能情報を登録する作業を行う必要がない。
【００１８】
さらに、ユーザによる登録作業では入力ミスなどで誤った保有登録情報が登録されてしまう虞があるが、上記構成であれば、デバイスからデバイス自身の保有機能情報が通知されるため、これをそのまま登録（記憶）するように構成しておけば、誤った保有機能情報が登録されてしまう虞もない。
【００１９】
また、請求項５に記載のサービス提供システムは、前記サービス提供手段において、前記機能判定手段により前記デバイス側で必要な機能を有していないと判定された場合に、前記デバイスの有する機能から、いずれかの機能を所定の決定条件に基づいて決定する機能決定手段が備えられており、前記提供実行手段は、複数種類の形式変換処理のうちいずれかの形式変換処理を実行することによりサービスを提供可能であって、前記機能決定手段により決定された機能に対応するメディアでサービスの提供を可能とする処理である形式変換処理を実行してなるサービスを提供する、ように構成されている。
【００２０】
このように構成すれば、サービス提供手段は、形式変換処理を実行するにあたり、デバイスの有する機能のうちのどの機能に対応するメディアでサービスを提供できる形式変換処理を実行するかを決定条件に基づいて決定することができ、こうして決定された機能に対応するメディアで提供実行手段の処理結果が得られる形式変換処理を実行することができる。
【００２１】
また、この構成においては、請求項６に記載のように、前記デバイスにおいて、ユーザに前記サービス提供手段の備える機能決定手段が機能を決定する際の決定条件を指定させる条件指定手段と、該条件指定手段により指定された決定条件を前記サービス提供手段に通知する条件通知手段と、が備えられており、前記サービス提供手段において、前記機能決定手段は、前記デバイスの備える条件通知手段により通知された決定条件に基づいて機能を決定する、ように構成するとよい。
【００２２】
このように構成すれば、デバイス側で上述した「決定条件」をユーザに指定させることができ、サービス提供手段側において、こうして指定された決定条件に基づいて機能を決定させることができる。
【００２３】
なお、上述した「決定条件」とは、機能を決定する際の条件となるものであり、例えば、デバイスの有する複数の機能それぞれに優先順位をつけておき、最も優先順位の高いものが「決定条件」を満たすものすることや、提供を受けるべきサービスの種類との関係で最も適した機能をデータテーブルや数式に基づいて決定することなどが考えられる。
【００２４】
また、上述したサービス提供手段の備える提供実行手段により実行される形式変換処理については、請求項７に記載のように、前記デバイスから当該サービス提供手段へ送信されたデータに対する前記形式変換処理，および，当該サービス提供手段から前記デバイスへ送信されるデータに対する前記形式変換処理をそれぞれ実行可能に構成されている、ことが望ましい。
【００２５】
このように構成すれば、デバイスおよびサービス提供手段の両者間で一方向にデータが送信されるサービスだけでなく、双方向でデータがやりとりされるサービスについても、デバイス側で提供を受けることができるようになる。
【００２６】
また、請求項８に記載のサービス提供システムは、前記デバイスに対して、前記サービス提供手段により提供可能な１以上のサービスのうちいずれかのサービスの指定を要求する指定要求手段が備えられており、前記デバイスにおいて、前記指定要求手段による要求を受けた際に、ユーザに１以上のサービスのうちいずれかのサービスを指定させるサービス指定手段が備えられており、前記サービス要求手段は、前記サービス指定手段により指定されたサービスの提供を前記サービス提供手段に対して要求する、ように構成されている。
【００２７】
このように構成すれば、デバイス側において、指定要求手段による要求を受けたタイミングでユーザにサービスを指定させることができる。
この構成における指定要求手段は、「サービス提供手段により提供可能な１以上のサービスのうちいずれかのサービスの指定」を要求する手段であり、この「１以上のサービス」としては、サービス提供手段が提供可能な全てのサービスであってもよいが、例えば、デバイスの有する機能に対応するサービスのみとする、など何らかの制限をするように構成してもよい。
【００２８】
そのためには、例えば、請求項９に記載のように、前記指定要求手段は、前記機能判定手段により必要な機能を有していないと判定されている場合、前記形式変換処理を実行してなるサービスを含む１以上のサービスのうちいずれかのサービスの指定を要求して、前記サービス提供手段において、前記提供実行手段は、前記デバイスの備える前記サービス要求手段により前記形式変換処理を実行してなるサービスの提供を要求された場合、該形式変換処理を実行してなるサービスを提供する、ように構成することが考えられる。
【００２９】
このように構成すれば、指定要求手段からデバイスへサービスの指定を要求する際には、はじめから、このデバイスの有する機能に対応するサービスの中から指定させることができる。
【００３０】
なお、上述した「指定要求手段」は、例えば、ネットワーク上のサーバとして構成することができ、この場合、単一のサーバにより構成されていてもよく、複数のサーバにより構成されていてもよい。また、サービス提供手段と一体のサーバにより構成されていてもよい。また、サービス提供手段と別体のサーバとして構成する場合、サービス提供手段の備える機能判定手段による判定結果をサービス提供手段から取得し、それを受けてサービスの指定を要求するように構成すればよい。
【００３１】
また、請求項１０に記載のデバイスは、サーバからのサービスの提供を受けることが可能なデバイスであって、該デバイスからの要求に応じて、該デバイスの有する機能により生成または出力されたデータに関するサービスを提供するサーバに対してサービスの提供を要求するサービス要求手段と、前記サーバに当該デバイスの有する機能を示す保有機能情報を通知する情報通知手段と、該サービス要求手段による要求を受けた前記サーバによりサービスの提供を受けて当該デバイスの有する機能を実現するサービス実現手段と、が備えられている、ことを特徴とする。
【００３２】
このように構成されたデバイスによれば、請求項１に記載のデバイスを構成することができるため、このデバイスと同様の作用，効果を得ることができる。
なお、このデバイスにおいては、請求項２から９のいずれかに記載のデバイスの備える全ての手段を備えた構成とすることもでき、このような構成とすれば、この請求項２から９のいずれかに記載のデバイスと同様の作用，効果を得ることができる。
【００３３】
また、請求項１１に記載のサーバは、画像を読み取りその画像を表す画像データを生成する機能および画像データの表す画像を印刷する機能のうち少なくとも一方の機能を有するデバイスからの要求に応じて、該デバイスの有する機能により生成された画像データおよび印刷される画像を示す画像データのうち少なくとも一方に関するサービスを提供するサーバであって、前記デバイスの有する機能を示す保有機能情報に基づいて、前記提供実行手段によるサービスの提供を受けるにあたり、前記デバイス側で必要な機能を有しているか否かを判定する機能判定手段と、該機能判定手段により必要な機能を有していないと判定されている場合、前記デバイスの備える前記サービス要求手段による要求を受けた際に、前記デバイスの有する機能に対応するメディアでサービスの提供を可能とする処理である形式変換処理を実行してなるサービスを提供する提供実行手段が備えられている、ことを特徴とする。
【００３４】
このように構成されたサーバによれば、請求項１に記載のサーバを構成することができるため、このサーバと同様の作用，効果を得ることができる。
なお、このサーバにおいては、請求項２から９のいずれかに記載のサーバの備える全ての手段を備えた構成とすることもでき、このような構成とすれば、この請求項２から９のいずれかに記載のサーバと同様の作用，効果を得ることができる。
【００３５】
また、請求項１２に記載のプログラムは、請求項１から９のいずれかに記載のサービス提供システムとして機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラムである。このプログラムを実行するコンピュータシステムによれば、請求項１から９のいずれかに記載のサービス提供システムを構成することができる。
【００３６】
また、請求項１３に記載のプログラムは、請求項１から９のいずれかに記載のデバイスとして機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラムである。このプログラムを実行するコンピュータシステムによれば、請求項１から９のいずれかに記載のサービス提供システムの一部（デバイス）を構成することができる。
【００３７】
また、請求項１４に記載のプログラムは、請求項１から９のいずれかに記載のサーバとして機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラムである。このプログラムを実行するコンピュータシステムによれば、請求項１から９のいずれかに記載のサービス提供システムの一部（サーバ）を構成することができる。
【００３８】
なお、上述した各プログラムは、コンピュータによる処理に適した命令の順番付けられた列からなるものであって、例えば、ＦＤ，ＣＤ−ＲＯＭ，メモリーカードなどの記録媒体やインターネットなどの通信回線網を介して、各装置（デバイスやサーバ），または，各装置を利用するユーザに提供されるものである。また、これらプログラムをユーザに提供する形態としては、各装置のハードディスクやメモリにプレインストールされた状態で提供する形態であってもよい。
【発明を実施するための最良の形態】
【００３９】
以下、本発明が適用された実施形態について、図面を用いて説明する。
（１）全体構成
サービス提供システムは、図１に示すように、複合機１０，ディレクトリサーバ２０，機能サーバ３０などからなり、これらがネットワーク（本実施形態ではインターネット等の広域ネットワーク（ＷＡＮ：Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ））１を介してデータ通信可能に接続されている。具体的にいうと、複合機１０，ディレクトリサーバ２０および機能サーバ３０は、それぞれルータ（Ｒ；周知のブロードバンドルータ）２〜４を介してネットワーク１と接続されている。
【００４０】
複合機１０は、制御部１１，操作部１２，読取部１３，記録部１４，通信部１５，記憶部１６，音入力部１７および音出力部１８などを備えている。
これらのうち、制御部１１は、ＣＰＵ，ＲＯＭ，ＲＡＭ等を備え、このＣＰＵが、ＲＯＭに記憶されているプログラムに従って複合機１０全体を統括制御する。
【００４１】
また、操作部１２は、図２に示すように、コピーキー４１，スキャナキー４２，ＦＡＸキー４３，サービスキー４４，設定キー４５，上下左右の方向キー４６〜４９，ＯＫキー５０およびキャンセルキー５１，ディスプレイ５２などからなるユーザインタフェースとして構成されている。
【００４２】
また、読取部１３は、スキャナとしての機能を実現するための入力デバイスであり、用紙等のシート状記録媒体に記録（例えば印刷）された画像を読み取り、その画像を表す画像データを生成する。
【００４３】
また、記録部１４は、プリンタとしての機能を実現するための出力デバイスであり、画像データの表す画像を用紙等のシート状記録媒体に印刷する。
また、通信部１５は、複合機１０をネットワーク１に接続すると共に、このネットワーク１を介してデータを送受信するための処理を行う。
【００４４】
また、記憶部１６は、図示しない不揮発性ＲＡＭを備えており、この不揮発性ＲＡＭにデータを記憶可能に構成されている。
また、音入力部１７は、本複合機１０が備える図示しないハンドセット（受話器）に設けられたマイクから音を入力し、その音を表す音データ（ＰＣＭデータ）を生成する。
【００４５】
そして、音出力部１８は、音データ（ＰＣＭデータ）の表す音を、図示しないハンドセットに設けられたスピーカ、又は、複合機本体に設けられた図示しないスピーカから出力する。
【００４６】
ディレクトリサーバ２０は、制御部２１，通信部２２および記憶部２３を備えている。
これらのうち、制御部２１は、ＣＰＵ，ＲＯＭ，ＲＡＭ等を備え、このＣＰＵが、ＲＯＭに記憶されているプログラムに従ってディレクトリサーバ２０全体を統括制御する。
【００４７】
また、通信部２２は、ディレクトリサーバ２０をネットワーク１に接続すると共に、このネットワーク１を介してデータを送受信するための処理を行う。
そして、記憶部２３は、図示しないハードディスクを備えており、このハードディスクにデータを記憶する。この記憶部２３には、後述するサービス定義情報２５を記憶するためのサービス定義情報記憶部２４が設けられている。このサービス定義情報２５は、ＸＭＬ（eXtensible Markup Language）により記述されたＸＭＬデータであり、この記述内容に従って後述するサービス選択用画面を表示することで（図８（ａ）参照）、機能サーバ３０が提供可能なサービス一覧（各サービスの種類及び要求先アドレス（ＵＲＬ；Uniform Resource Locator）を提供することができる。なお、このサービス定義情報２５における各タグの定義付けを図３に示す。
【００４８】
機能サーバ３０は、制御部３１，通信部３２および記憶部３３などを備えている。
これらのうち、制御部３１は、ＣＰＵ，ＲＯＭ，ＲＡＭ等を備え、このＣＰＵが、ＲＯＭに記憶されているプログラムに従って機能サーバ３０全体を統括制御する。なお、この制御部３１は、複合機１０の制御部１１に比べて充分に高性能な構成とされており、複合機１０の制御部１１では実行困難な処理についても行うことができる。本発明の特徴部分となる変換処理についても制御部３１にて行う。
【００４９】
また、通信部３２は、機能サーバ３０をネットワーク１に接続すると共に、このネットワーク１を介してデータを送受信するための処理を行う。
そして、記憶部３３は、図示しないハードディスクを備えており、このハードディスクにデータを記憶する。この記憶部３３は、後述するサービスＩ／Ｆ情報３６を記憶するためのサービスＩ／Ｆ情報記憶部３４と、それぞれ異なるサービスを提供するための処理を実行するサービスソフトウェア３７を記憶するためのサービスソフト記憶部３５と、からなる。このサービスＩ／Ｆ情報３６は、ＸＭＬにより記述されたＸＭＬデータであり、この記述内容に従って後述するパラメータ入力用画面を表示することで（図１４参照）、機能サーバ３０に対してサービスの提供を要求するための情報（サービスの内容及び要求先アドレス）を提供することができる。なお、このサービスＩ／Ｆ情報３６における各タグの定義付けを図４に示す。
（２）複合機１０による処理
以下に、複合機１０の制御部１１により実行される各種処理について説明する。なお、本実施形態において、複合機１０と機能サーバ３０とのデータ，パラメータ，サービスＩ／Ｆ情報３６の送受信については、後述の変換処理を介して行われている。
（２−１）複合機処理
はじめに、複合機１０が起動された以降、繰り返し実行される処理である複合機処理を図５に基づいて説明する。
【００５０】
この複合機処理が起動されたら、まず、初期化処理を行う（ｓ１０２）。
この初期化処理を終えた後、外部からの指令，例えば、操作部１２への入力操作やネットワーク１を介した指令信号の入力などが発生したら（ｓ１０４）、この入力が動作モードをサービスモードへ移行させるための内容であるか否かをチェックする（ｓ１０６）。ここでは、ｓ１０４による入力が操作部１２のサービスキー４４を押下する操作であれば、サービスモードへ移行させるための内容であると判定する。なお、この「サービスモード」とは、以下の処理で示すように、機能サーバ３０に対してサービスの提供を要求するための処理を実行するための動作モードである。
【００５１】
このｓ１０６で、サービスモードへ移行させるための内容でないと判定されたら（ｓ１０６：ＮＯ）、その入力内容に応じて他の動作モードに対する処理（その他のモードの処理）を行った後（ｓ１０８）、ｓ１０４へ戻る。
【００５２】
一方、ｓ１０６で、サービスモードへ移行させるための内容であると判定されたら（ｓ１０６：ＹＥＳ）、機能サーバ３０に要求すべきサービスを指定する方法をユーザに指定させる（ｓ１１０）。ここでは、図６に示す方法選択画面をディスプレイ５２に表示させ、サービスをリストから指定するか（図６における「リストから選択」）、要求先アドレスを直接入力により指定するか（図６における「直接入力」）の選択を促す。この選択画面が表示された後、ユーザは、操作部１２により、いずれにより指定するかの選択を行うことができる。
【００５３】
このｓ１１０で、リストから指定する旨が選択されたら（ｓ１１０：ＹＥＳ）、ディレクトリサーバ２０にサービス一覧の照会を要求する（ｓ１１２）。ここでは、ディレクトリサーバ２０に対してサービス定義情報２５の送信を要求するためのアドレスとして、あらかじめ記憶部１６に記憶されたアドレス宛に、ＨＴＴＰ１．１（ＨＴＴＰ：HyperText Transfer Protocol ）に基づくＨＴＴＰリクエスト（以降、単に「ＨＴＴＰリクエスト」という）を送信することにより、サービス一覧の照会を要求する。このアドレスに基づいてアクセスを受けたディレクトリサーバ２０は、後述するようにトップのサービス定義情報２５を、ＨＴＴＰ１．１に基づくＨＴＴＰレスポンス（以降、単に「ＨＴＴＰレスポンス」という）により返信してくる。
【００５４】
なお、この「サービス定義情報２５」には、「データ保存サービス」，「印刷サービス」，「コピー応用サービス」といったカテゴリそれぞれにおけるサービスの選択を促すサービス選択画面を表示させるためのものと、カテゴリの選択を促すサービス選択画面を表示させるためのものと、があり、このｓ１１２においては、カテゴリの選択を促すサービス選択画面を表示させるためのサービス定義情報（以降、「トップのサービス定義情報」という）２５にアクセスするためのアドレス宛にＨＴＴＰリクエストを送信する。
【００５５】
こうして、サービス一覧の照会を要求した後、ディレクトリサーバ２０から返信されたサービス定義情報２５を受信したら（ｓ１１４）、このサービス定義情報２５に基づいてサービス選択用画面をディスプレイ５２に表示させた後（ｓ１１６）、次の処理（ｓ１２０）へ移行する。このｓ１１６の処理がトップのサービス定義情報２５を受信した後に行われる場合には、図７に示すようなトップのサービス定義情報２５（ＸＭＬの記述）に従って、図８（ａ）に示すように、表示用タイトル（Ｔｉｔｌｅ）として「ディレクトリサービス」の文字がディスプレイ５２の表示領域上部に配置され、選択可能なカテゴリを表す項目（Ｌｉｎｋ＿Ｔｉｔｌｅ）である「データ保存サービス」，「印刷サービス」および「コピー応用サービス」の文字が表示領域下部に配置されてなるサービス選択画面の表示を行う。なお、この場合のサービス選択画面には、カテゴリに対応する別のサービス定義情報２５のＩＤがリンク先として割り当てられており（図７における「Ｌｉｎｋ＿Ｌｏｃａｔｉｏｎ」参照）、いずれかの項目が選択された際に、その項目に対応するＩＤのサービス定義情報２５がディレクトリサーバ２０に要求されることになる。
【００５６】
また、ｓ１１６の処理がトップ以外のサービス定義情報２５を受信した後に行われる場合，具体的な例として、「コピー応用サービス」に関するサービス定義情報２５を受信した場合には、図９に示すようなサービス定義情報２５（ＸＭＬの記述）に従って、図８（ｂ），図８（ｃ）に示すように、表示用タイトル（Ｔｉｔｌｅ）として「コピー応用サービス」の文字が表示領域上部に配置され、選択可能なサービスを表す項目（Ｌｉｎｋ＿Ｔｉｔｌｅ）である「すかし入りコピー」，「翻訳コピー」，「原稿読み上げ」および「音声テキスト変換」の文字が表示領域下部に配置されてなるサービス選択画面の表示を行う。なお、本実施形態において、表示領域の制約上、すべての項目を一度に表示することができない場合には、画面をスクロールさせることで各項目の配置が上下に移動するように構成されており、図８（ｂ），図８（ｃ）では、そのようなスクロール前後の状態を示している。また、この場合のサービス選択画面には、サービスに対応する別のサービス定義情報２５のＩＤがリンク先として割り当てられており（図９における「Ｌｉｎｋ＿Ｌｏｃａｔｉｏｎ」参照）、いずれかの項目が選択された際に、その項目に対応するＩＤのサービスの提供が機能サーバ３０に要求されることになる。
【００５７】
また、上述したｓ１１０で、要求先アドレスを直接入力により指定する旨が選択された場合には（ｓ１１０：ＮＯ）、要求先アドレスを入力するための図示しないアドレス入力画面をディスプレイ５２に表示させた後（ｓ１１８）、次の処理（ｓ１２０）へ移行する。
【００５８】
こうして、サービス選択画面またはアドレス入力画面が表示された以降、ユーザは、操作部１２により、いずれかの項目を選択する操作（アドレスを入力する操作），または，サービスモードを終了する操作（停止操作）を行うことができる。
【００５９】
次に、ユーザによる操作部１２への入力操作を受け付け（ｓ１２０）、こうして行われた入力操作がリンクを選択する操作であるか否かをチェックする（ｓ１２２）。ここでは、ｓ１１６にて表示されたサービス選択画面における項目を選択する操作，または，ｓ１１８にて表示されたアドレス入力画面にアドレスを入力する操作が入力操作として行われた場合に、リンクを選択する操作であると判定する。
【００６０】
このｓ１２２で、リンクを選択する操作でないと判定された場合（ｓ１２２：ＮＯ）、その入力操作が停止操作であれば（ｓ１２４：ＹＥＳ）、ｓ１０４へ戻ることによりサービスモードとしての処理を終了する一方、入力操作が停止操作でなければ（ｓ１２４：ＮＯ）、拒否音（ブザー音など）を鳴動させた後（ｓ１２６）、ｓ１２０へ戻る。
【００６１】
また、ｓ１２２で、入力操作がリンクを選択する操作であると判定された場合（ｓ１２２：ＹＥＳ）、その選択されたリンクがサービスへのリンク，つまり機能サーバ３０にサービスの提供を要求するためのＩＤであるか否かをチェックする（ｓ１２８）。
【００６２】
このｓ１２８で、サービスへのリンクでないと判定された場合，つまり別のサービス定義情報２５のＩＤである場合には（ｓ１２８：ＮＯ）、ディレクトリサーバ２０に対してサービス一覧の照会を要求し、該当するサービス定義情報２５を受信した後（ｓ１３０）、ｓ１１６へ戻ってサービス選択用画面をディスプレイ５２に表示させる。
【００６３】
そして、ｓ１２８で、サービスへのリンクであると判定された場合には（ｓ１２８：ＹＥＳ）、後述するセッション処理（図１０）を行った後（ｓ１３２）、ｓ１０４へ戻ることによりサービスモードとしての処理を終了する。
（２−２）セッション処理
続いて、図５におけるｓ１３２であるセッション処理の詳細な処理手順を図１０，図１１に基づいて説明する。
【００６４】
このセッション処理では、まず、利用するサービスを選択し、サービス定義情報２５のＬｉｎｋ＿Ｌｏｃａｔｉｏｎ（アドレスを直接入力した場合には、そのアドレス）に基づきサービスを起動する（ｓ２０２）。つまり、サービスのアドレス宛にサービス起動指令をＨＴＴＰリクエストにより送信することで、ユーザに選択されたサービスを機能サーバ３０側において起動させる。このサービス起動指令を受信した機能サーバ３０からは、セッションＩＤがＨＴＴＰレスポンスにより返信されてくる。
【００６５】
次に、ｓ２０４によるサービス起動指令に応じて機能サーバ３０から返信されてくるセッションＩＤを受信する（ｓ２０４）。なお、以降の処理で送信するＨＴＴＰリクエストおよびＨＴＴＰレスポンスには、特に明示しない限り、全てセッションＩＤが含まれた状態で送信されることとし、このＨＴＴＰリクエストを受信した機能サーバ３０側では、このセッションＩＤに基づいて通信中のデバイスを管理（周知のセッション管理）するように構成されている。
【００６６】
次に、複合機１０に対する指令の有無を問い合わせるための「複合機指令問合せ」をＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ２０６）。この「複合機指令問合せ」を受信した機能サーバ３０は、複合機１０に対する指令が発生していれば、その内容を示す指令（指令が発生していない場合には「指令なし」を示す指令）をＨＴＴＰレスポンスにより返信してくる。
【００６７】
次に、ｓ２０６による問い合わせにより返信されてくる指令（複合機指令）を受信したら（ｓ２０８）、その指令がジョブ起動指令であるか否かを判定する（ｓ２１０）。この「ジョブ起動指令」とは、後述のように、ｓ２０２にてサービス起動指令を送信した以降、機能サーバ３０側で発生する指令であり、そのタイミングやサービスの内容に応じて「ＵＩジョブ」，「入力ジョブ（スキャンジョブまたはボイスジョブ）」，「出力ジョブ（プリントジョブまたはスピーカジョブ）」のいずれかの起動を指令する内容となっている。なお、このジョブ起動指令には、起動すべきジョブのジョブＩＤ，ジョブの種類（ＵＩジョブ，入力ジョブ（スキャンジョブまたはボイスジョブ）または出力ジョブ（プリントジョブまたはスピーカジョブ））およびジョブの通信先アドレスが付加されている。
【００６８】
このｓ２１０で、ジョブ起動指令であると判定された場合（ｓ２１０：ＹＥＳ）、ジョブの起動に必要なリソースを確保した後（ｓ２１２）、以下に示すｓ２５２〜ｓ２６６によりジョブ起動指令で指令されたジョブの起動を行う。
【００６９】
以下に、このｓ２５２〜ｓ２６６について図１１に基づいて説明する。
ここでは、まず、ジョブ起動指令で指令されたジョブがＵＩジョブであるか否かをチェックし（ｓ２５２）、ＵＩジョブであると判定された場合には（ｓ２５２：ＹＥＳ）、ジョブ起動指令に付加されたジョブＩＤおよび通信先アドレスに基づいてＵＩジョブを起動した後（ｓ２５４）、次の処理（図１０におけるｓ２１４）へ移行する。このＵＩジョブは、このｓ２５４の処理で起動された以降、他の処理と並行して実行されるものであり、これについては、後述する「ＵＩジョブ」（図１２）において詳述する。
【００７０】
また、ジョブ起動指令で指令されたジョブがＵＩジョブでないと判定された場合（ｓ２５２：ＮＯ）、その指令されたジョブが入力ジョブの一種であるスキャンジョブ（ｓ２５６：ＹＥＳ）またはボイスジョブ（ｓ２５６：ＮＯ，ｓ２６２：ＹＥＳ）であれば、ジョブ起動指令に付加されたジョブＩＤおよび通信先アドレスに基づいて入力ジョブを起動した後（ｓ２６０）、次の処理（図１０におけるｓ２１４）へ移行する。この入力ジョブは、このｓ２６０の処理で起動された以降、他の処理と並行して実行されるものであり、これについては、後述する「入力ジョブ」（図１７）において詳述する。
【００７１】
また、ジョブ起動指令で指令されたジョブが上述したいずれのジョブでないと判定された場合（ｓ２５８：ＮＯ）、その指令されたジョブが出力ジョブの一種であるプリントジョブ（ｓ２６２：ＹＥＳ）またはスピーカジョブ（ｓ２６２：ＮＯ，ｓ２６４：ＹＥＳ）であれば、ジョブ起動指令に付加されたジョブＩＤおよび通信先アドレスに基づいて出力ジョブを起動した後（ｓ２６６）、次の処理（図１０におけるｓ２１４）へ移行する。この出力ジョブは、このｓ２６６の処理で起動された以降、他の処理と並行して実行されるものであり、これについては、後述する「出力ジョブ」（図１８）において詳述する。
【００７２】
なお、ジョブ起動指令で指令されたジョブが上述したいずれのジョブでもないと判定された場合（ｓ２６４：ＮＯ）、ジョブの起動を行うことなく、次の処理（図１０におけるｓ２１４）へ移行する。
【００７３】
こうして、ジョブの起動を行った後、図１０へ戻り、所定インターバル待機した後（ｓ２１４）、ｓ２０６へ戻る。
また、上述したｓ２１０で、ジョブ起動指令でないと判定された場合（ｓ２１０：ＮＯ）、ｓ２０８で受信した指令がジョブ終了指令であるか否かをチェックする（ｓ２１６）。この「ジョブ終了指令」とは、後述のように、図１１における各処理でジョブを起動した以降、このジョブが終了した際に機能サーバ３０側で発生する指令である。なお、このジョブ終了指令には、その終了したジョブのジョブＩＤが付加されている。
【００７４】
このｓ２１６で、ジョブ終了指令であると判定された場合（ｓ２１６：ＹＥＳ）、このジョブ終了指令に付加されたジョブＩＤのジョブを停止させる（該当するジョブに対して終了指示を渡す）と共に、このジョブを起動する前にＳ２１２にて確保したリソースを解放した後（ｓ２１８）、ｓ２１４へ移行する。
【００７５】
また、上述したｓ２１６で、ジョブ終了指令でないと判定された場合（ｓ２１６：ＮＯ）、「指令なし」を示すものであるか否かをチェックし（ｓ２２０）、「指令なし」を示すものであれば（ｓ２２０：ＹＥＳ）、ｓ２１４へ移行する一方、「指令なし」を示すものでなければ（ｓ２２０：ＮＯ）、セッション終了指令であるか否かを判定する（ｓ２２２）。この「セッション終了指令」とは、この複合機１０に対するサービスの提供が終了した際に機能サーバ３０側で発生する処理である。
【００７６】
そして、このｓ２２２で、セッション終了指令であると判定された場合（ｓ２２２：ＹＥＳ）、本セッション処理を終了する一方、ｓ２０８で受信した指令が上述したいずれの指令でもない場合、エラーを報知するための処理（指令エラーの処理）を行った後（ｓ２２４）、本セッション処理を終了する。このｓ２２４では、エラーである旨のメッセージをディスプレイ５２に表示させることによりエラーを報知する。
（２−３）ＵＩジョブ
続いて、図１１におけるｓ２５４にて起動されるＵＩジョブの処理手順を図１２に基づいて説明する。
【００７７】
このＵＩジョブが開始されると、まず、複合機１０に対する指令の問合せである複合機ジョブ指令問合せを送信用データ格納領域にセットする（ｓ３００）。ここでは、複合機指令問合せを、制御部１１の備えるＲＡＭに確保された送信用データの格納領域に書き込むことにより、複合機ジョブ指令問合せを送信用データ格納領域にセットする。こうしてセットされた情報は、後述する処理（ｓ３１２）でセッションＩＤ及びジョブＩＤとともに機能サーバ３０へ送信されることとなる。なお、こうして「複合機ジョブ指令問合せ」が送信されると、この送信用データを受信した機能サーバ３０は、後述のように、本ＵＩジョブに対する指令が発生していれば、その内容を示す複合機指令（指令が発生していない場合には「指令なし」を示す複合機指令）をＨＴＴＰレスポンスにより返信してくる。
【００７８】
次に、上述したセッション処理からの終了指示があったか否かを判定する（ｓ３０２）。この終了指示は、上述したｓ２１８にてセッション処理から渡される指令である。
このｓ３０２で、セッション処理からの終了指示があったと判定された場合には（ｓ３０２：ＹＥＳ）、セッション処理に対してセッション終了指令を渡すことにより、ＵＩジョブの終了を通知した後（ｓ３０４）、本ＵＩジョブを終了する。なお、このセッション終了指令は、上述したｓ２１８における処理の中で受信される。ｓ２１８の内部では、この指令を受信することによりジョブが完全に停止したと判断し、以降の手続きを実施するのである。
【００７９】
一方、セッション処理からの終了指示がないと判定された場合には（ｓ３０２：ＮＯ）、操作部１２がビジー状態であるか否かを判定する（ｓ３０６）。ここでは、各ジョブの起動中に立つ（「１」がセットされる）ように設定されたビジーフラグＦｕに基づき、ビジーフラグＦｕが立っていればビジー状態であると判定し、ビジーフラグＦｕが下りて（「０」がセットされて）いればビジー状態でないと判定する。
【００８０】
このｓ３０６で、ビジー状態であると判定された場合には（ｓ３０６：ＹＥＳ）、操作部１２のビジー状態が解除されるまで，つまりビジーフラグＦｕが下りるまで待機した後（ｓ３０８）、ｓ３０６へ戻る一方、ビジー状態でないと判定した場合には（ｓ３０６：ＮＯ）、ビジーフラグＦｕを立てて（ｓ３１０）、本ＵＩジョブにより操作部１２がビジー状態になっているものとする。
【００８１】
次に、送信用データ格納領域に格納されている情報を、セッションＩＤおよびジョブＩＤと共にＨＴＴＰリクエストとして機能サーバ３０へ送信する（ｓ３１２）。
次に、ｓ３１２による問い合わせにより返信されてくる複合機指令を受信したら（ｓ３１４）、その指令がパラメータ要求であるか否かを判定する（ｓ３１６）。この「パラメータ要求」とは、後述のように、複合機ジョブ指令問合せを受信した機能サーバ３０側で発生する指令であり、このパラメータ要求に付加されたサービスＩ／Ｆ情報３６（図１３参照；翻訳コピーの場合）に基づき、パラメータの指定を複合機１０に対して要求するための指令である。
【００８２】
このｓ３１６で、パラメータ要求であると判定された場合（ｓ３１６：ＹＥＳ）、このパラメータ要求に付加されたサービスＩ／Ｆ情報３６に基づき、パラメータ入力用画面をディスプレイ５２に表示させ、パラメータの設定をするための入力操作をユーザに促す（ｓ３１８）。
【００８３】
ここで、サービスＩ／Ｆ情報３６のうち、翻訳コピーサービスに対応するサービスＩ／Ｆ情報３６を例示してパラメータ入力画面が表示される様子について説明する。なお、翻訳コピーサービスとは、複合機１０の入力部（キーボード）から入力されたテキストデータを所定の言語に翻訳してなるテキストデータを生成して提供することにより、このテキストデータで表される文書を複合機１０における記録部１４に印刷させるサービスである。このサービスにおいては、複合機１０における読取部１３で読み取られた画像データに基づき、機能サーバ３０が、この画像データで表される画像に対してＯＣＲ（Optical Character Recognition ）処理でテキストを認識したり音入力部１７から入力された音声をＡ−Ｄ変換処理でテキスト認識し、そのテキストを所定の言語に翻訳した内容の画像を表す画像データを生成して提供することにより、この画像データで表される画像を複合機１０における記録部１４に印刷させることも可能である。
【００８４】
本実施形態では、入力部を有さない複合機１０において翻訳コピーサービスを受ける場合であって、読取部１３で読み取った画像データを、後述する変換処理にて変換することでサービスの提供を受ける場合を説明する。まず、図１３に示すようなサービスＩ／Ｆ情報３６（ＸＭＬの記述）に従って、図１４（ａ）に示すように、表示用タイトル（Ｔｉｔｌｅ）として「翻訳コピー」の文字が表示領域上部に配置され、その下に入力項目（Ｄｉｓｐ＿Ｎａｍｅ）として「言語選択」の文字が配置され、さらにその下に入力項目「言語選択」について選択可能なパラメータを表す項目（Ｄｉｓｐ＿Ｓｅｌｅｃｔ）である「英語→日本語」及び「日本語→英語」の文字が配置されたパラメータ入力用画面を表示させる。ここで、「翻訳コピー」に関する入力項目（Ｄｉｓｐ＿Ｎａｍｅ）としては、上記表示されている「言語選択」に加え、「スキャナ設定」，「印刷設定」及び「コメント」があるが、この時点では、「言語選択」についての入力項目のみが表示される。これは、単にディスプレイ５２の大きさの制限によるものであり、この状態から左右の方向キー４８，４９を押下（後述の切替操作）することで、表示領域下部に表示される入力項目を「スキャナ設定」，「印刷設定」及び「コメント」を含む４種類の中から切り替えることができる。
【００８５】
これら入力項目について選択可能なパラメータについて説明すると、「スキャナ設定」について選択可能なパラメータを表す項目（Ｄｉｓｐ＿Ｓｅｌｅｃｔ）としては、「普通の文字」及び「細かい文字」の文字が表示されることとなる（図１４（ｂ）参照）。ここでいう「普通の文字」とは、読取部１３のパラメータである解像度（読取解像度）を３００×３００ｄｐｉに設定することを意味し、「細かい文字」とは、解像度を６００×６００ｄｐｉに設定することを意味する。
【００８６】
また、「印刷設定」について選択可能なパラメータを表す項目（Ｄｉｓｐ＿Ｓｅｌｅｃｔ）としては、「印刷速度優先」，「普通」及び「高精細」の文字が表示されることとなる。なお、ディスプレイ５２の大きさの制限により、「高精細」については、初めは表示されていないが（図１４（ｃ）参照）、画面をスクロールさせることで表示される（図１４（ｄ）参照）。ここでいう「印刷速度優先」とは、記録部１４のパラメータである解像度（印刷解像度）を２００×２００ｄｐｉに設定することを意味し、「普通」とは、解像度を３００×３００ｄｐｉに設定することを意味し、「高精細」とは、解像度を６００×６００ｄｐｉに設定することを意味する。
【００８７】
そして、「コメント」については、「コメント」の文字の下に、コメントの入力欄が表示され、設定されている文字列（Ｄｅｆａｕｌｔ＿Ｓｔｒｉｎｇ）が入力された状態となる（図１４（ｅ）参照）。こうして、コメントとして入力欄に入力された文字列は、例えば、印刷画像のヘッダやフッタに記載されるという形で利用されるものである。
【００８８】
こうして、ディスプレイ５２にパラメータ入力画面が表示された以降、ユーザは、ディスプレイ５２における表示領域の制限から表示しきれていない別の項目に表示内容を切り替える切替操作（左右の方向キー４８，４９の押下により第ｎ−１，第ｎ＋１番目の項目に切り替える），パラメータを指定する指定操作（上下の方向キー４６，４７の押下により指定されたパラメータ（図１４における破線の四角参照）を指定する），ディスプレイ５２に表示しきれていない他のパラメータを表示させるためのスクロール操作（指定操作を続けることで表示されていないパラメータを表示させると共に、そのパラメータを指定する），パラメータの設定を完了するための完了操作（ＯＫキー５０の押下）などを行うことにより、各項目それぞれのパラメータを指定することができる。
【００８９】
このｓ３１８にてパラメータ入力画面を表示した以降、ユーザによりパラメータの設定を完了するための完了操作が行われたら、全ての項目のパラメータを送信用データ格納領域にセットした後（ｓ３２０）、ｓ３１０にて立てたビジーフラグＦｕを下げて（ｓ３２２）、ｓ３０２へ戻る。これらのパラメータは、その後、セッションからの終了指示がなく（ｓ３０２：ＮＯ）、操作パネルがビジーではない（ｓ３０６：ＮＯ）状態になると、ｓ３１２の処理にて機能サーバ３０へ送信される。なお、本実施形態においては、後述する処理で複合機１０の有する入出力デバイスに応じた内容のサービスＩ／Ｆ情報３６がパラメータ要求と共に送信されてくることになるが、このとき、複合機１０の有する入出力デバイスだけで機能サーバ３０によるサービスの提供を受けられない場合には、図１４（ｆ）に示すようなエラーメッセージをディスプレイ５２に表示させた後、ｓ３２０を行うことなく、ｓ３２２へ戻る。
【００９０】
また、上述したｓ３１２による問い合わせにより返信されてくる複合機指令が、パラメータ要求でないと判定された場合には（ｓ３１６：ＮＯ）、Ｓ３１４にて受信した複合機指令が仕様情報要求であるか否かを判定する（ｓ３５２）。この「仕様情報要求」とは、後述のように、複合機ジョブ指令問合せを受信した機能サーバ３０側で機能サーバ３０側の設定内容に応じて発生する指令であり、複合機１０に対して、複合機１０の入出力デバイスに関するパラメータの設定内容が登録されてなる仕様情報を要求するための指令である。この仕様情報は、複合機１０の入出力デバイスに関するパラメータの設定内容を、図１５に示すように、ＸＭＬにより記述したＸＭＬデータとして記憶部１６に記憶されているものである。なお、この仕様情報におけるタグの定義付けを図１６に示す。
【００９１】
このｓ３５２で、仕様情報要求であると判定された場合には（ｓ３５２：ＹＥＳ）、仕様情報を送信用データ格納領域にセットした後（ｓ３５４）、ｓ３２２へ移行する。この仕様情報は、その後、セッションからの終了指示がなく（ｓ３０２：ＮＯ）、操作パネルがビジーではない（ｓ３０６：ＮＯ）状態になると、ｓ３１２の処理にて機能サーバ３０へ送信される。そして、この仕様情報を受信した機能サーバ３０は、後述するように、所定の処理を実行した後、パラメータ要求をＨＴＴＰレスポンスとして返信してくる。
【００９２】
また、ｓ３５２で、仕様情報要求でないと判定された場合には（ｓ３５２：ＮＯ）、ｓ３１４にて受信した複合機指令がサービス状態情報であるか否かを判定する（ｓ３２４）。この「サービス状態情報」とは、後述のように、複合機ジョブ指令問合せ，または，以降の処理（ｓ３３０，ｓ３１２）で送信される複合機状態情報を受信した機能サーバ３０側で発生する指令であり、問題なくサービスに関わる処理が実行されていること，または，問題がありサービスを停止することなどを報知するための指令である。
【００９３】
このｓ３２４で、サービス状態情報であると判定されたら（ｓ３２４：ＹＥＳ）、このサービス状態情報に基づく表示をディスプレイ５２に行わせ（ｓ３２６）、サービスの稼働状態の情報を要求するサービス状態情報要求を送信用データ格納領域にセットした後（ｓ３２７）、Ｓ３２２へ移行する。
【００９４】
また、ｓ３２４で、サービス状態情報でないと判定されたら（ｓ３２４：ＮＯ）、ｓ３１４にて受信した複合機指令が状態情報要求であるか否かをチェックする（ｓ３２８）。この「状態情報要求」とは、後述のように、複合機１０の状態に関する情報の送信を要求するための指令である。
【００９５】
このｓ３２８で、状態情報要求であると判定されたら（ｓ３２８：ＹＥＳ）、複合機１０の状態に関する情報である複合機状態情報を送信用データ格納領域にセットした後（ｓ３３０）、ｓ３２２へ移行する。ここでは、用紙なし，カバーオープンなどを示す情報を複合機状態情報として送信用データ格納領域にセットする。
【００９６】
また、ｓ３２８で、状態情報要求でないと判定されたら（ｓ３２８：ＮＯ）、Ｓ３１４にて受信した複合機指令がサーバ受取状況であるか否かをチェックする（ｓ３３２）。この「サーバ受取状況」とは、後述のように、機能サーバ３０が複合機１０からの情報を正常に受け取ることができたか否かを通知するために送信する指令である。
【００９７】
このｓ３３２で、サーバ受取状況であると判定されたら（ｓ３３２：ＹＥＳ）、このサーバ受取状況の内容が異常受取（ＮＧ）を表すものである場合（ｓ３３４：ＹＥＳ）、このサーバ受取状況を送信する契機となった情報を送信用データ格納領域に再度セットした後（ｓ３３６）、ｓ３２２へ移行する一方、異常受取（ＮＧ）を表すものでない場合（ｓ３３４：ＮＯ）、サービスの稼動状態の情報を要求する指令であるサービス状態情報要求を送信用データ格納領域にセットした後（ｓ３３７）、ｓ３２２へ移行する。
【００９８】
そして、ｓ３３２で、サーバ受取状況でないと判定されたら（ｓ３３２：ＮＯ）、Ｓ３１４にて受信した複合機指令が「指令なし」を示すものか否かをチェックし（ｓ３３８）、「指令なし」を示すものであれば（ｓ３３８：ＹＥＳ）、ｓ３００と同様、複合機ジョブ指令問合せを送信用データ格納領域にセットした後（ｓ３３９）、ｓ３２２へ移行する。一方、「指令なし」を示すものでなければ（ｓ３３８：ＮＯ）、エラー処理（指定エラーの処理）を行い（ｓ３４０）、ｓ３００と同様、複合機ジョブ指令問合せを送信用データ格納領域にセットした後（ｓ３４５）、ｓ３２２へ移行する。
（２−４）入力ジョブ
続いて、図１１におけるｓ２６０にて起動される入力ジョブの処理手順を図１７に基づいて説明する。この入力ジョブは、上述したセッション処理およびＵＩジョブと並列動作する処理である。
【００９９】
この入力ジョブが開始されると、まず、入力デバイスがビジー状態であるか否かを判定する（ｓ４０２）。ここでは、入力デバイスがビジー状態である場合に立つ（「１」がセットされる）ように設定されたビジーフラグＦｉに基づき、ビジーフラグＦｉが立っていればビジー状態であると判定し、ビジーフラグＦｉが下りて（「０」がセットされて）いればビジー状態でないと判定する。なお、ここでいう「入力デバイス」とは、読取部１３で生成された画像データに関するサービスの提供を受ける場合であれば読取部１３であり、音入力部１７で生成された音データに関するサービスを受ける場合であれば音入力部１７のことである。
【０１００】
このｓ４０２で、入力デバイスがビジー状態であると判定された場合には（ｓ４０２：ＹＥＳ）、入力デバイスのビジー状態が解除されるまで待機した後（ｓ４０４）、ｓ４０２の処理へ戻る一方、入力デバイスがビジー状態ではないと判定された場合には（ｓ４０２：ＮＯ）、ビジーフラグＦｉを立てる（ｓ４０６）。
【０１０１】
次に、複合機１０の状態に関する情報である複合機状態情報を、セッション処理におけるｓ２６０にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ４０８）。この複合機状態情報を受信した機能サーバ３０は、後述のように、図１２におけるｓ３２０にて送信用データ格納領域にセットしてから同図ｓ３１２にて機能サーバ３０に送信しておいたパラメータに基づく情報である複合機パラメータをＨＴＴＰレスポンスにより返信してくる。
【０１０２】
次に、ｓ４０８にて送信した複合機状態情報に対して複合機パラメータが返信されてきたら（ｓ４１０）、セッション処理から終了指示が渡されたか否か（セッションからの終了指示があるか）を判定する（ｓ４１２）。この終了指示は、図１０におけるｓ２１８により終了するジョブが入力ジョブである場合において、セッション処理から本入力ジョブに渡される指示である。
【０１０３】
このｓ４１２で、セッション処理から終了指示が渡されていないと判定された場合には（ｓ４１２：ＮＯ）、ｓ４１０にて返信されてきた複合機パラメータを正常に受信できていなければ（ｓ４１４：ＮＯ）、機能サーバ３０からの情報を正常に受け取ることができない旨（異常受取（ＮＧ）である旨）を通知するための複合機受取状況を、セッション処理におけるｓ２６０にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ４１６）。この複合機受取状況を受信した機能サーバ３０は、後述のように、再度、複合機パラメータをＨＴＴＰレスポンスとして返信してくるため、このｓ４１６の後、ｓ４１０へ戻る。
【０１０４】
一方、ｓ４１０にて複合機パラメータを正常に受信できていれば（ｓ４１４：ＹＥＳ）、機能サーバ３０からの情報を正常に受け取ることができた旨（正常受取（ＯＫ）である旨）を通知するための複合機受取状況を、セッション処理におけるｓ２６０にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ４１８）。この複合機受取状況を受信した機能サーバ３０は、後述のように、機能サーバ３０側で処理すべきデータの送信を要求するための入力データ要求を返信してくる。
【０１０５】
次に、複合機受取状況を受信した機能サーバ３０から入力データ要求が返信されてきたら（ｓ４２０）、ｓ４１２と同様に、セッション処理から終了指示が渡されたか否かを判定する（ｓ４２２）。
【０１０６】
このｓ４２２で、セッション処理から終了指示が渡されていないと判定された場合には（ｓ４２２：ＮＯ）、ｓ４２０にて返信されてきた入力データ要求を正常に受信できていなければ（ｓ４２４：ＮＯ）、ｓ４１６と同様に、異常受取（ＮＧ）である旨を通知するための複合機受取状況を機能サーバ３０へ送信する（ｓ４２６）。この複合機受取状況を受信した機能サーバ３０は、後述のように、再度、入力データ要求を返信してくるため、このｓ４２６の後、ｓ４２０へ戻る。
【０１０７】
一方、ｓ４２０にて返信されてきた入力データ要求を正常に受信できていれば（ｓ４２４：ＹＥＳ）、機能サーバ３０側で処理させるべき入力データを、セッション処理におけるｓ２６０にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ４２８）。ここでは、まず、入力デバイスの設定値をｓ４１０にて受信した複合機パラメータで示されるパラメータに変更した後、機能サーバ３０側で処理させるべきデータの入力を促すためのデータ入力画面をディスプレイ５２に表示させることにより、データを複合機１０に入力するための操作をユーザに促す。その後、ユーザによりデータを入力するための操作が行われることにより取得したデータ（入力データ）を、セッション処理におけるｓ２６０にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する。具体的な例としては、例えば、「原稿をセットしてＯＫキーを押してください」，「受話器をとって音声を入力してください」などのメッセージをディスプレイ５２に表示し、この後、読取部１３または音入力部１７により取得されるデータを機能サーバ３０へ順次送信する。この入力データを受信した機能サーバ３０は、この入力データに基づくデータ処理が正常に終了したか否かを通知するためのサービス状態情報を返信してくる、といった構成が考えられる。
【０１０８】
なお、この処理におけるデータの取得方法については、図示されないメモリカードスロットにセットされたメモリーカードから読み出したり、記憶部１６における特定の記憶領域から読み出すといった方法であってもよく、その場合には、データの取得先となる記憶領域を指定すべきメッセージをディスプレイ５２に表示させればよい。
【０１０９】
こうして、入力データを機能サーバ３０へ送信した後、ｓ４２８の処理で変更された入力デバイスの設定値を元に戻し（ｓ４３０）、その後、機能サーバ３０から返信されるサービス状態情報を受信する（ｓ４３２）。
【０１１０】
そして、ｓ４３２にてサービス情報を受信した後、または、ｓ４１２，ｓ４２２でセッション処理から終了指示が渡されていると判定された場合には（ｓ４１２：ＹＥＳ，ｓ４２２：ＹＥＳ）、ｓ４０６にて立てたビジーフラグＦｉを下ろした後（ｓ４３４）、セッション処理におけるｓ２６０にて渡されたジョブＩＤと共にセッション処理へ入力ジョブの終了を通知して（ｓ４３６）、本入力ジョブを終了する。この入力ジョブの終了の通知は、上述したｓ２１８における処理の中で受信される。ｓ２１８の内部では、この指令を受信することでジョブが完全に停止したと判断し、以降の手続きを実施するのである。
（２−５）出力ジョブ
最後に、図１１におけるｓ２６６にて起動される出力ジョブの処理手順を図１８に基づいて説明する。この入力ジョブは、上述したセッション処理およびＵＩジョブと並列動作する処理である。
【０１１１】
この出力ジョブが開始されると、まず、出力デバイスがビジー状態であるか否かを判定する（ｓ５０２）。ここでは、出力デバイスがビジー状態である場合に立つ（「１」がセットされる）ように設定されたビジーフラグＦｏに基づき、ビジーフラグＦｏが立っていればビジー状態であると判定し、ビジーフラグＦｏが下りて（「０」がセットされて）いればビジー状態でないと判定する。なお、ここでいう「出力デバイス」とは、記録部１４で印刷する画像データに関するサービスの提供を受ける場合であれば記録部１４であり、音出力部１８から出力する音データに関するサービスの提供を受ける場合であれば音出力部１８のことである。
【０１１２】
このｓ５０２で、出力デバイスがビジー状態であると判定された場合には（ｓ５０２：ＹＥＳ）、出力デバイスのビジー状態が解除されるまで待機した後（ｓ５０４）、ｓ５０２の処理へ戻る一方、出力デバイスがビジー状態ではないと判定された場合には（ｓ５０２：ＮＯ）、ビジーフラグＦｏを立てる（ｓ５０６）。
【０１１３】
次に、複合機１０の状態に関する情報である複合機状態情報を、セッション処理におけるｓ２６６にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ５０８）。この複合機状態情報を受信した機能サーバ３０は、後述のように、図１２におけるｓ３２０にて送信用データ格納領域にセットしてから同図ｓ３１２にて機能サーバ３０に送信しておいたパラメータに基づく情報である複合機パラメータをＨＴＴＰレスポンスにより返信してくる。
【０１１４】
次に、ｓ５０８にて送信した複合機状態情報に対して複合機パラメータが返信されてきたら（ｓ５１０）、セッション処理から終了指示が渡されたか否か（セッションからの終了指示があるか）を判定する（ｓ５１２）。この終了指示は、図１０におけるｓ２１８により終了するジョブが出力ジョブである場合において、セッション処理から本出力ジョブに渡される指示である。
【０１１５】
このｓ５１２で、セッション処理から終了指示が渡されていないと判定された場合には（ｓ５１２：ＮＯ）、ｓ５１０にて返信されてきた複合機パラメータを正常に受信できていなければ（ｓ５１４：ＮＯ）、機能サーバ３０からの情報を正常に受け取ることができない旨（異常受取（ＮＧ）である旨）を通知するための複合機受取状況を、セッション処理におけるｓ２６６にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ５１６）。この複合機受取状況を受信した機能サーバ３０は、後述のように、再度、複合機パラメータを返信してくるため、このｓ５１６の後、ｓ５１０へ戻る。
【０１１６】
一方、ｓ５１０にて複合機パラメータを正常に受信できていれば（ｓ５１４：ＹＥＳ）、機能サーバ３０からの情報を正常に受け取ることができた旨（正常受取（ＯＫ）である旨）を通知するための複合機受取状況を、セッション処理におけるｓ２６６にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ５１８）。この複合機受取状況を受信した機能サーバ３０は、後述のように、図１７におけるｓ４２８にて送信した入力データに基づいて処理してなるデータ（出力データ）を返信してくる。
【０１１７】
次に、複合機受取状況を受信した機能サーバ３０から出力データが返信されてきたら（ｓ５２０）、ｓ５１２と同様に、セッション処理から終了指示が渡されたか否かを判定する（ｓ５２２）。
【０１１８】
このｓ５２２で、セッション処理から終了指示が渡されていないと判定された場合には（ｓ５２２：ＮＯ）、ｓ５２０にて返信されてきた出力データを正常に受信できていなければ（ｓ５２４：ＮＯ）、ｓ５１６と同様に、異常受取（ＮＧ）である旨を通知するための複合機受取状況を機能サーバ３０へ送信する（ｓ５２６）。この複合機受取状況を受信した機能サーバ３０は、後述のように、再度、出力データを返信してくるため、このｓ５２６の後、ｓ５２０へ戻る。
【０１１９】
一方、ｓ５２０にて返信されてきた出力データを正常に受信できていれば（ｓ５２４：ＹＥＳ）、この出力データを出力デバイスにより出力する（ｓ５２８）。ここでは、まず、出力デバイスの設定値をｓ５１０にて受信した複合機パラメータで示されるパラメータに変更した後、この出力デバイスにより出力データを出力（例えば、画像データが表す画像の印刷や、音データが表す音声の出力）する。
【０１２０】
こうして、出力データの出力デバイスによる出力を終えた後、ｓ５２８で変更された出力デバイスの設定値を元に戻し（ｓ５３０）、複合機１０の状態に関する情報である複合機状態情報を、セッション処理におけるｓ２６６にて渡されたジョブＩＤと共に、ＨＴＴＰリクエストにより機能サーバ３０へ送信する（ｓ５３２）。この複合機状態情報を受信した機能サーバ３０は、後述のように、サービス状態情報を返信してくる。
【０１２１】
そして、機能サーバ３０から返信されるサービス状態情報を受信した後（ｓ５３４）、または、ｓ５１２，ｓ５２２でセッション処理から終了指示が渡されていると判定された場合には（ｓ５１２：ＹＥＳ，ｓ５２２：ＹＥＳ）、ｓ５０６にて立てたビジーフラグＦｏを下ろした後（ｓ５３６）、セッション処理におけるｓ２６６にて渡されたジョブＩＤと共にセッション処理へ入力ジョブの終了を通知して（ｓ５３８）、本入力ジョブを終了する。この入力ジョブの終了の通知は、上述したｓ２１８における処理の中で受信される。ｓ２１８の内部では、この指令を受信することでジョブが完全に停止したと判断し、以降の手続きを実施するのである。
（３）機能サーバ３０による処理
以下に、機能サーバ３０の制御部３１により実行される各種処理について説明する。
（３−１）機能サーバ処理
はじめに、ＨＴＴＰリクエストが受信される毎に行われる機能サーバ処理の処理手順を図１９，図２０に基づいて説明する。
【０１２２】
この機能サーバ処理が起動されると、まず、受信したＨＴＴＰリクエストがサービス起動指令であるか否かをチェックする（ｓ７０２）。この「サービス起動指令」は、図１０におけるｓ２０２にて複合機１０により送信されるものである。
【０１２３】
このｓ７０２で、サービス起動指令であると判定された場合には（ｓ７０２：ＹＥＳ）、セッションＩＤを生成し、このセッションＩＤを示す送信データを生成すると共に、サービスの実行のためのリソースを確保して該当するプロセスを起動した後（ｓ７０８）、次の処理（ｓ７３４）へ移行する。ここで起動するプロセスとは、後述するセッション処理（図２１）のことである。
【０１２４】
また、ｓ７０２で、サービス起動指令でないと判定された場合には（ｓ７０２：ＮＯ）、ＨＴＴＰリクエストがサービス終了指令であるか否かをチェックする（ｓ７１０）。この「サービス終了指令」は、複合機１０のキャンセルキー５１押下などの操作によりサービス実行の停止が指示されることにより、複合機１０側から送信されるものである。
【０１２５】
このｓ７１０で、サービス終了指令であると判定された場合には（ｓ７１０：ＹＥＳ）、セッションＩＤおよびｓ７０８にて確保されたリソースを解放し、サービス終了を表す送信データを作成した後（ｓ７１２）、次の処理（ｓ７３４）へ移行する。一方、サービス終了指令ではないと判定された場合には（ｓ７１０：ＮＯ）、サービス（セッション又はジョブ）に関する情報が含まれているか否か，具体的には複合機１０がセッション処理またはジョブ（ＵＩジョブ，入力ジョブ，出力ジョブ）において送信してきたＨＴＴＰリクエストであるか否かをチェックする（ｓ７１４）。
【０１２６】
このｓ７１４で、サービスに関する情報が含まれていると判定された場合には（ｓ７１４：ＹＥＳ）、そのＨＴＴＰリクエストを送信してきたプロセス（セッション処理，ＵＩジョブ，入力ジョブ，出力ジョブのいずれか）を特定する（ｓ７１６）。
【０１２７】
このｓ７１６によりプロセスを特定できなければ（ｓ７１８：ＹＥＳ）、エラーを通知するための情報（エラー通知情報）を生成した後（ｓ７２０）、次の処理（ｓ７３４）へ移行する。
【０１２８】
一方、ｓ７１６によりプロセスを特定できれば（ｓ７１８：ＮＯ）、その特定したプロセスにＨＴＴＰリクエストにて送信されてきた情報を渡す（ｓ７２２）。
こうして、ｓ７２２を終えた後、または、ｓ７１４にてサービスに関する情報が含まれていないと判定された場合（ｓ７１４：ＮＯ）、セッションＩＤまたはジョブＩＤに対応する情報の記憶領域を特定する（ｓ７２４）。
【０１２９】
このｓ７２４により記憶領域を特定できなければ（ｓ７２６：ＹＥＳ）、ｓ７２０へ移行してエラー通知情報を生成して次の処理（ｓ７３４）へ移行する。一方、記憶領域を特定できれば（ｓ７２６：ＮＯ）、この記憶領域に複合機１０へ返信すべき情報が存在しているか否かをチェックする（ｓ７２８）。
【０１３０】
そして、このｓ７２８で、返信すべき情報が存在していないと判定されたら（ｓ７２８：ＮＯ）、「指令なし」の情報を生成した後（ｓ７３０）、次の処理（ｓ７３４）へ移行する一方、送信すべき情報が存在していると判定されたら（ｓ７２８：ＹＥＳ）、その返信情報に基づいて複合機制御指令を生成した後（ｓ７３２）、次の処理（ｓ７３４）へ移行する。
【０１３１】
こうして、ｓ７０８，ｓ７１２，ｓ７２０．ｓ７３０，ｓ７３２にて生成した情報をＨＴＴＰレスポンスとして複合機１０へ返信する（ｓ７３４）。ここで返信されるＨＴＴＰレスポンスのうち、ｓ７０８にて生成された送信データは、図１０におけるｓ２０４にて複合機１０が受信するものである。また、ｓ７１２にて生成されたサービス終了を表す送信データは、図１０におけるｓ２０８にて複合機１０が受信し、ｓ２２２にて「ＹＥＳ」と判定されるものである。また、ｓ７２０にて生成されたエラー通知情報は、図１０におけるｓ２０８にて複合機１０が受信し、ｓ２２２にて「ＮＯ」と判定され、ｓ２２４の処理が実施されるものである。また、ｓ７３０にて生成された「指令なし」の情報は、図１０におけるｓ２０８にて複合機１０が受信し、ｓ２２０にて「ＹＥＳ」と判定されるものである。そして、ｓ７３２にて生成された複合機制御指令は、後述する各ジョブにおいて異なる内容のものとなり、それぞれ複合機１０側で対応するジョブにおいて受信されるものである。
【０１３２】
そして、上述したｓ７１４〜ｓ７３２であるサービス制御情報処理が実施された、すなわちｓ７１０にて「ＮＯ」と判定された場合は（ｓ７３６：ＹＥＳ）、セッションＩＤ又はジョブＩＤに対応するメモリアドレスに「送信済み」をセットした後（ｓ７３８）、本機能サーバ処理を終了する一方、サービス制御情報処理が実施されていなければ（ｓ７３６：ＮＯ）、メモリアドレスのセットを行うことなく、本機能サーバ処理を終了する。このサービス制御情報処理とは、ｓ７１４〜ｓ７３２に記載の複合機１０と機能サーバ３０のセッションまたはジョブとの情報授受の処理を指す。
（３−２）セッション処理
続いて、機能サーバ処理と並行して実行されるセッション処理の処理手順を図２１，図２２に基づいて説明する。なお、本実施形態においては、翻訳コピーのサービスについてのセッション処理を例に説明する。
【０１３３】
このセッション処理が開始されると、まず、初期化処理を行う（ｓ８０２）。
次に、サービス側ＵＩジョブを起動する（ｓ８０４）。このＵＩジョブは、本セッション処理と並行して実行される処理であって、詳細な処理手順は後述する。
【０１３４】
次に、ＵＩジョブの起動指令を複合機指令として出力する（ｓ８０６）。ここでは、ジョブＩＤおよび通信先アドレスと共にＵＩジョブの起動指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側に起動指令として送信されることとなる。この起動指令は、図１０におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側においてＵＩジョブが起動されることとなる（同図ｓ２５４）。
【０１３５】
次に、複合機１０側からのパラメータの入力が完了したか否かをチェックする（ｓ８０８）。上述したｓ８０４にて起動したＵＩジョブにおいては、後述のように、複合機１０側からパラメータを取得し、その旨を本セッション処理に対して通知してくるように構成されている。そのため、このｓ８０８では、このＵＩジョブからのパラメータ取得の通知がなされた場合に、複合機１０側からのパラメータの入力が完了したと判定する。
【０１３６】
このｓ８０８で、パラメータの入力が完了していないと判定された場合には（ｓ８０８：ＮＯ）、ＵＩジョブが停止したか否かをチェックする（ｓ８１０）。上述したｓ８０４にて起動したＵＩジョブにおいては、後述のように、複合機１０側からのパラメータの取得が正常に行われなかった場合に、ＵＩジョブ自体を停止（終了）すると共に、その旨を本セッション処理に対して通知してくるように構成されている。そのため、このｓ８１０では、このＵＩジョブからの停止の通知がなされた場合に、ＵＩジョブが停止したと判定する。
【０１３７】
このｓ８１０で、ＵＩジョブが停止していないと判定された場合（ｓ８１０：ＮＯ）、ｓ８０８へ戻る一方、ＵＩジョブが停止していると判定された場合（ｓ８１０：ＹＥＳ）、後述するｓ８４８へ移行する。
【０１３８】
また、ｓ８０８で、パラメータの入力が完了していると判定された場合には（ｓ８０８：ＹＥＳ）、サービス側入力ジョブの一種であるスキャンジョブを起動する（ｓ８１２）。このスキャンジョブは、本セッション処理と並行して実行される処理であって、詳細な処理手順は後述する。
【０１３９】
次に、スキャン（入力）ジョブの起動指令を複合機指令として出力する（ｓ８１４）。ここでは、ジョブＩＤおよび通信先アドレスと共にスキャンジョブの起動指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側に起動指令として送信されることとなる。この起動指令は、図１０におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側において入力ジョブが起動されることとなる。
【０１４０】
次に、複合機１０側でスキャナ（読取部１３）の準備が完了したか否かをチェックする（ｓ８１６）。上述したｓ８１２にて起動したスキャンジョブにおいては、後述のように、複合機１０側においてスキャナの準備が完了したことの通知を受け、その旨を本セッション処理に通知してくるように構成されている。そのため、このｓ８１６では、このスキャンジョブからのスキャナの準備が完了したことの通知がなされた場合に、複合機１０側でスキャナの準備が完了したと判定する。
【０１４１】
このｓ８１６で、複合機１０側でスキャナの準備が完了していないと判定された場合には（ｓ８１６：ＮＯ）、スキャンジョブが停止したか否かをチェックする（ｓ８１８）。上述したｓ８１２にて起動したスキャンジョブにおいては、後述のように、複合機１０側からスキャナの準備が完了したことの通知を正常に受けられなかった場合に、スキャンジョブ自体を停止（終了）すると共に、その旨を本セッション処理に対して通知してくるように構成されている。そのため、このｓ８１８では、このスキャンジョブからの停止の通知がなされた場合に、スキャンジョブが停止したと判定する。
【０１４２】
このｓ８１８で、スキャンジョブが停止していないと判定された場合（ｓ８１８：ＮＯ）、ｓ８１６へ戻る一方、スキャンジョブが停止していると判定された場合（ｓ８１８：ＹＥＳ）、後述するｓ８４４へ移行する。
【０１４３】
また、ｓ８１６で、スキャナの準備が完了していると判定された場合には（ｓ８１６：ＹＥＳ）、サービス側出力ジョブの一種である印刷ジョブを起動する（ｓ８２０）。この印刷ジョブは、本セッション処理と並行して実行される処理であって、詳細な処理手順は後述する。
【０１４４】
次に、印刷（出力）ジョブの起動指令を複合機指令として出力する（ｓ８２２）。ここでは、ジョブＩＤおよび通信先アドレスと共に印刷ジョブの起動指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側に起動指令として送信されることとなる。この起動指令は、図１０におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側において出力ジョブが起動されることとなる（図１１におけるｓ２６６）。
【０１４５】
次に、複合機１０側で印刷準備（記録部１４）の準備が完了したか否かをチェックする（ｓ８２４）。上述したｓ８２０にて起動した印刷ジョブにおいては、後述のように、複合機１０側において印刷準備が完了したことの通知を受け、その旨を本セッション処理に通知してくるように構成されている。そのため、このｓ８２４では、この印刷ジョブからの印刷準備が完了したことの通知がなされた場合に、複合機１０側で印刷準備が完了したと判定する。
【０１４６】
このｓ８２４で、複合機１０側で印刷準備が完了していないと判定された場合には（ｓ８２４：ＮＯ）、印刷ジョブが停止したか否かをチェックする（ｓ８２６）。上述したｓ８２０にて起動した印刷ジョブにおいては、後述のように、複合機１０側から印刷準備が完了したことの通知を正常に受けられなかった場合に、印刷ジョブ自体を停止（終了）すると共に、その旨を本セッション処理に対して通知してくるように構成されている。そのため、このｓ８２６では、この印刷ジョブからの停止の通知がなされた場合に、印刷ジョブが停止したと判定する。
【０１４７】
このｓ８２６で、印刷ジョブが停止していないと判定された場合（ｓ８２６：ＮＯ）、ｓ８２４へ戻る一方、印刷ジョブが停止していると判定された場合（ｓ８２６：ＹＥＳ）、後述するｓ８４０へ移行する。
【０１４８】
また、ｓ８２４で、印刷準備が完了していると判定された場合には（ｓ８２４：ＹＥＳ）、複合機１０側から取得された入力データを読み出す（ｓ８２８）。上述したｓ８１２にて起動したスキャンジョブにおいては、後述のように、複合機１０から、この複合機１０の読取部１３にて読み取られた画像データを取得するように構成されているため、このｓ８２８では、こうして取得されて所定の記憶領域に格納されたデータ（入力データ）のうち、１頁分に相当するデータ領域を読み出す。
【０１４９】
次に、ｓ８２８にて読み出された入力データに対してＯＣＲ，翻訳，印刷レイアウトなどの処理を施してなる画像データを生成する（ｓ８３０）。ここでは、まず、ｓ８２８にて読み出された入力データに対してＯＣＲ処理を施すことにより、この入力データで表される画像に含まれるテキスト部分を認識する。次に、このテキスト部分に対して翻訳処理を行うことによりテキスト部分を所定の言語で表現されたテキストに変換する。なお、ここでの翻訳処理は、上述したｓ８０４にて起動したＵＩジョブにおいて取得されるパラメータに基づいて行われるものであり、このパラメータで示される言語への変換が行われることとなる。そして、こうして認識されたテキスト部分について、所定の印刷レイアウトを設定してなる印刷用の画像データを生成する。
【０１５０】
次に、ｓ８３０にて生成された画像データを出力する（ｓ８３２）。ここでは、ジョブＩＤおよび通信先アドレスと共にｓ８３０にて生成された画像データを、印刷ジョブに渡すために記憶領域に書き込む処理を行う。これに基づいて後述する図２５のｓ１１２０にて複合機１０に適合した印刷コマンドを作成し、複合機１０へ送信する。
【０１５１】
次に、ｓ８２８にて全ての入力データ（全ページ分のデータ領域）についての読み出しが完了したか否かをチェックし（ｓ８３４）、完了していなければ（ｓ８３４：ＮＯ）、ｓ８２８へ戻る一方、完了していれば（ｓ８３４：ＹＥＳ）、ｓ８３２による出力データの出力（記憶領域への書き込み）が終了したか否かをチェックする（ｓ８３６）。
【０１５２】
このｓ８３６で、出力データの出力が完了していなければ（ｓ８３６：ＮＯ）、ｓ８２８へ戻る一方、出力データの出力が完了していれば（ｓ８３６：ＹＥＳ）、印刷（出力）ジョブの終了指令を複合機指令として出力する（ｓ８３８）。ここでは、ジョブＩＤと共に印刷ジョブの終了指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側に終了指令として送信されることとなる。この終了指令は、図１０におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側において出力ジョブが停止（終了）されることとなる（同図ｓ２１８）。
【０１５３】
こうして、印刷ジョブの終了指令を出力した後、または、上述したｓ８２６で印刷ジョブが停止されたと判定された場合（ｓ８２６：ＹＥＳ）、ｓ８２０で起動させたサービス側印刷ジョブを終了させる（ｓ８４０）。
【０１５４】
次に、スキャン（入力）ジョブの終了指令を複合機指令として出力する（ｓ８４２）。ここでは、ジョブＩＤと共にスキャンジョブの終了指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側に終了指令として送信されることとなる。この終了指令は、図１０におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側において入力ジョブが停止（終了）されることとなる（同図ｓ２１８）。
【０１５５】
こうして、スキャンジョブの終了指令を出力した後、または、上述したｓ８１８でスキャンジョブが停止されたと判定された場合（ｓ８１８：ＹＥＳ）、ｓ８１２で起動させたサービス側スキャンジョブを終了させる（ｓ８４４）。
【０１５６】
次に、ＵＩジョブの終了指令を複合機指令として出力する（ｓ８４６）。ここでは、ジョブＩＤと共にスキャンジョブの終了指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側に終了指令として送信されることとなる。この終了指令は、図１０におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側においてＵＩジョブが停止（終了）されることとなる（同図ｓ２１８）。
【０１５７】
こうして、ＵＩジョブの終了指令を出力した後、または、上述したｓ８１０でパラメータ入力が停止されたと判定された場合（ｓ８１０：ＹＥＳ）、ｓ８０４で起動させたサービス側ＵＩジョブを終了させる（ｓ８４８）。
【０１５８】
そして、各ジョブにおいて確保されていたリソースを解放するなどの終了処理を行った後（ｓ８５０）、サービスの終了指令を複合機指令として出力した後（ｓ８５２）、本セッション処理を終了する。このｓ８５２では、サービスの終了指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側に終了指令として送信されることとなる。この終了指令は、図１０におけるｓ２０８にて複合機１０側で受信され、これに基づいて、複合機１０側においてセッション処理が終了されることとなる（同図ｓ２２２）。
（３−３）ＵＩジョブ
続いて、図２１におけるｓ８０４にて起動されるＵＩジョブの処理手順を図２３に基づいて説明する。
【０１５９】
このＵＩジョブが開始されると、まず、複合機１０から複合機ジョブ指令問合せを受信するまで待機し、この複合機ジョブ指令問合せを受信したら（ｓ９０２）、複合機１０に対して、この複合機１０の仕様情報を要求するための仕様情報要求をＨＴＴＰレスポンスとして返信する（ｓ９３０）。この仕様情報要求は、図１２におけるｓ３１４の処理で複合機１０により受信されるものであり、これを受けた複合機１０が同図３２０の処理により仕様情報を送信してくる。
【０１６０】
こうして、仕様情報要求を返信した後、複合機１０から仕様情報がＨＴＴＰリクエストとして送信されるのを待って、こうして送信されてきた仕様情報を受信したら（ｓ９３２）、サービスの実行に必要なパラメータの設定を要求するためのパラメータ要求指令を複合機指令として複合機１０へ返信する（ｓ９０４）。このｓ９０２において受信する「複合機ジョブ指令問合せ」とは、図１２におけるｓ３１２にて複合機１０から送信されるＨＴＴＰリクエストである。また、ｓ９０４にて送信する複合機指令とは、同図ｓ３１４にて複合機１０に受信されるＨＴＴＰレスポンスであり、サービスＩ／Ｆ情報３６（例えば、翻訳コピーのサービスに対応するもの）が付加されたものである。この複合機指令を受信した複合機１０は、同図ｓ３１６〜ｓ３２０にてパラメータを送信用データ格納領域にセットしてからｓ３１２にてこのパラメータをＨＴＴＰリクエストにより送信してくる。
【０１６１】
次に、エラーカウントを初期化する（ｓ９０６）。ここでは、後述のようにパラメータを正常に受信できない自体が連続して発生した回数をカウントするためのカウンタをリセット（「０」をセット）する。
【０１６２】
次に、ｓ９０４にて送信した複合機指令を受信した複合機１０からパラメータが送信されてくるまで待機し、パラメータを受信したら（ｓ９０８）、このパラメータを正常に受信できているか否かをチェックする（ｓ９１０）。
【０１６３】
このｓ９１０にてパラメータが正常に受信できていないと判定された場合には（ｓ９１０：ＮＯ）、このような正常に受信できない状況が所定の回数（本実施形態においては２回）連続して発生しているか否かをエラーカウントによるカウント値に基づいてチェックし（ｓ９１２）、所定の回数連続して発生していなければ（ｓ９１２：ＮＯ）、パラメータを正常に受信できなかった旨（サーバ受取ＮＧ；異常受取）を通知するためのサーバ受取状況を出力し（ｓ９１４）、エラーカウントをカウントアップした後（ｓ９１６）、ｓ９０８へ戻る。このｓ９１４では、サーバ受取状況を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側にサーバ受取状況として送信されることとなる。このサーバ受取状況は、図１２におけるｓ３１４にて複合機１０側で受信され、これに基づいて、複合機１０側においてパラメータの再送信が行われることとなる（同図ｓ３３４，ｓ３３６，ｓ３１２）。
【０１６４】
また、ｓ９１２で、正常に受信できない状況が所定の回数連続して発生していたら（ｓ９１２：ＹＥＳ）、セッション処理に対してＵＩジョブの停止（終了）を通知した後（ｓ９１８）、本ＵＩジョブを終了する。このｓ９１８による通知は、図２１におけるｓ８１０にてセッション処理が受けるものである。
【０１６５】
また、上述したｓ９１０で、パラメータが正常に受信できていると判定された場合には（ｓ９１０：ＹＥＳ）、パラメータを正常に受信できた旨（サーバ受取ＯＫ；正常受取）を通知するためのサーバ受取状況を出力する（ｓ９２０）。ここでは、サーバ受取状況を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側にサーバ受取状況として送信されることとなる。このサーバ受取状況は、図１２におけるｓ３１４にて複合機１０側で受信され、これに基づいて、複合機１０側においてパラメータの再送信が必要ないことが確認される（同図ｓ３３４）。
【０１６６】
次に、セッション処理に対してパラメータの入力が完了（パラメータを取得）した旨を通知する（ｓ９２２）。ここでの通知は、図２１におけるｓ８０８にてセッション処理が受けるものである。
【０１６７】
そして、このｓ９２２を終えた以降、複合機１０から複合機ジョブ指令問合せを受信するまで待機し、この複合機ジョブ指令問合せを受信したら（ｓ９２４）、サービス状態情報を出力する（ｓ９２６）、といった処理を、他の処理（例えば、図２２におけるｓ８４６）により本ＵＩジョブが停止（終了）されるまで繰り返し行う。このｓ９２６では、サービス状態情報を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側にサービス状態情報として送信されることとなる。
（３−４）スキャンジョブ
続いて、図２１におけるｓ８１２にて起動されるスキャンジョブの処理手順を図２４に基づいて説明する。
【０１６８】
このスキャンジョブが開始されると、まず、複合機１０から複合機状態情報を受信するまで待機し、この複合機状態情報を受信したら（ｓ１００２）、図２３におけるｓ９０６と同様にエラーカウントを初期化した後（ｓ１００４）、複合機パラメータを出力する（ｓ１００６）。このｓ１００２にて受信される複合機状態情報は、図１７におけるｓ４０８にて複合機１０から送信されてくるＨＴＴＰリクエストであり、これに応答する形でｓ１００６にて複合機パラメータをＨＴＴＰレスポンスとして返信する。この複合機パラメータは、図２３におけるｓ９０８にて受信されたものであって、ｓ１００２にて受信された複合機状態情報の送信元である複合機１０に対応するパラメータである。
【０１６９】
この複合機パラメータを受信した複合機１０からは、この複合機パラメータを正常に受信できたか否かを示す複合機受取状況が送信されてくるため、この複合機受取状況に基づいて複合機１０側で正常に受け取ることができたか否かをチェックする（ｓ１００８）。具体的には、複合機受取状況が、異常受取（ＮＧ）である旨の内容であれば正常に受け取ることができていないと判定し、正常受取（ＯＫ）である旨の内容であれば正常に受け取ることができていると判定する。
【０１７０】
このｓ１００８で、複合機１０側で複合機パラメータを正常に受け取ることができていないと判定された場合（ｓ１００８：ＮＯ）、このような正常に受信できない状況が所定の回数（本実施形態においては２回）連続して発生しているか否かをエラーカウントによるカウント値に基づいてチェックし（ｓ１０１０）、所定の回数連続して発生していなければ（ｓ１０１０：ＮＯ）、エラーカウントをカウントアップした後（ｓ１０１２）、ｓ１００６へ戻る。
【０１７１】
また、ｓ１０１０で、正常に受信できない状況が所定の回数連続して発生していたら（ｓ１０１０：ＹＥＳ）、セッション処理に対してスキャンジョブの停止（終了）を通知した後（ｓ１０１４）、異常終了を通知するための通知指令をサービス状態情報として出力する（ｓ１０１６）。このｓ１０１４による通知は、図２１におけるｓ８１８にてセッション処理が受けるものである。また、ｓ１０１６では、通知指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側に通知指令として送信されることとなる。この通知指令は、図１７におけるｓ４１０にて複合機１０側で受信される。機能サーバ３０側からは、セッションよって、図２４のｓ８１８により渡され、図２９におけるｓ１０１４にて受けとられた指令に基づく情報が通知されるため、複合機１０では、この情報に基づいて、図２０におけるｓ４１２にて終了すると判断する（ｓ４１２：ＹＥＳ）。
【０１７２】
また、上述のｓ１００８で、複合機１０側で複合機パラメータを正常に受け取ることができていると判定された場合（ｓ１００８：ＹＥＳ）、複合機パラメータの受信をもって複合機１０側でスキャナ（読取部１３）の準備が完了しているものとし、セッション処理に対してスキャナの準備完了を通知する。この通知は、図２１におけるｓ８１６にてセッション処理が受けるものである。
【０１７３】
次に、機能サーバ３０側で処理すべきデータの送信を要求するための入力データ要求を出力する（ｓ１０１８）。ここでは、入力データ要求を、返信情報を格納する記憶領域に書き込む処理を行う（ｓ１０２０）。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側に入力データ要求として送信されることとなる。この入力データ要求は、図１７におけるｓ４２０にて複合機１０側で受信され、これにより、ユーザの操作を受けて入力データが送信されてくる。
【０１７４】
こうして、入力データ要求を受信した複合機１０から入力データを受信したら（ｓ１０２２）、この入力データの受信が正常に終了していれば（ｓ１０２４：ＹＥＳ）、正常終了を通知するための通知指令をサービス状態情報として出力した後（ｓ１０２６）、本スキャンジョブを終了する。このｓ１０２６では、通知指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側に通知指令として送信されることとなる。この通知指令は、図１７におけるｓ４３２にて複合機１０側で受信される。
【０１７５】
一方、入力データの受信が正常に終了しなければ（ｓ１０２４：ＮＯ）、ｓ１０１６へ移行し、異常終了を通知するための通知指令をサービス状態情報として出力した後、本スキャンジョブを終了する。この通知指令は、図１７におけるｓ４３２にて複合機１０側で受信される。
（３−５）印刷ジョブ
続いて、図２１におけるｓ８２０にて起動される印刷ジョブの処理手順を図２５に基づいて説明する。
【０１７６】
この印刷ジョブが開始されると、まず、複合機１０から複合機状態情報を受信するまで待機し、この複合機状態情報を受信したら（ｓ１１０２）、図２３におけるｓ９０６と同様にエラーカウントを初期化した後（ｓ１１０４）、複合機パラメータを出力する（ｓ１１０６）。このｓ１１０２にて受信される複合機状態情報は、図１８におけるｓ５０８にて複合機１０から送信されてくるＨＴＴＰリクエストであり、これに応答する形でｓ１１０６にて複合機パラメータをＨＴＴＰレスポンスとして返信する。この複合機パラメータは、図２３におけるｓ９０８にて受信されたものであって、ｓ１１０２にて受信された複合機状態情報の送信元である複合機１０に対応するパラメータである。
【０１７７】
この複合機パラメータを受信した複合機１０からは、この複合機パラメータを正常に受信できたか否かを示す複合機受取状況が送信されてくるため、図２４におけるｓ１００８と同様、この複合機受取状況に基づいて複合機１０側で正常に受け取ることができたか否かをチェックする（ｓ１１０８）。
【０１７８】
このｓ１１０８で、複合機１０側で複合機パラメータを正常に受け取ることができていないと判定された場合（ｓ１１０８：ＮＯ）、このような正常に受信できない状況が所定の回数（本実施形態においては２回）連続して発生しているか否かをエラーカウントによるカウント値に基づいてチェックし（ｓ１１１０）、所定の回数連続して発生していなければ（ｓ１１１０：ＮＯ）、エラーカウントをカウントアップした後（ｓ１１１２）、ｓ１１０６へ戻る。
【０１７９】
また、ｓ１１１０で、正常に受信できない状況が所定の回数連続して発生していたら（ｓ１１１０：ＹＥＳ）、セッション処理に対して印刷ジョブの停止（終了）を通知した後（ｓ１１１４）、異常終了を通知するための通知指令をサービス状態情報として出力する（ｓ１１１６）。このｓ１１１４による通知は、図２１におけるｓ８２６にてセッション処理が受けるものである。また、ｓ１１１６では、通知指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側に通知指令として送信されることとなる。この通知指令は、図１８におけるｓ５１０にて複合機１０側で受信される。機能サーバ３０側からは、図２１のｓ８５２よって、図２５のｓ１１１４により渡され、図２１におけるｓ８２６にて受けとられた指令に基づく情報が通知されるため、複合機１０では、この情報に基づいて、図１８におけるｓ５１２にて終了すると判断する（ｓ５１２：ＹＥＳ）。
【０１８０】
また、上述のｓ１１０８で、複合機１０側で複合機パラメータを正常に受け取ることができていると判定された場合（ｓ１１０８：ＹＥＳ）、複合機パラメータの受信をもって複合機１０側で印刷（記録部１４）の準備が完了しているものとし、セッション処理に対して印刷の準備完了を通知する（ｓ１１１８）。この通知は、図２１におけるｓ８２４にてセッション処理が受けるものである。セッション処理では、この通知を受けて、図２２におけるｓ８２８〜ｓ８３６を行い、印刷データの生成を行うこととなる。
【０１８１】
次に、セッション処理にて生成された印刷データ（図２２におけるｓ８３２）を複合機１０が処理可能な印刷データに変換してなるデータを、返信情報を格納する記憶領域に書き込む処理を行う（ｓ１１２０）。ここでは、図２２のｓ８３２で記憶領域に書き込まれた画像データに基づいて、複合機１０にて出力可能な印刷コマンドを生成し、ジョブＩＤおよび通信先アドレスと共に返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図１９におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側に出力データとして送信されることとなる。この出力データは、図１８におけるｓ５２０にて複合機１０側で受信され、これに基づいて出力データで示される画像の記録部１４による記録（印刷）が行われる。
【０１８２】
こうして、送信される印刷データを受信した複合機１０は、図１８におけるｓ５３２にて複合機状態情報をＨＴＴＰリクエストにより送信してくる。
こうして、印刷データを受信した複合機１０から複合機状態情報を受信したら（ｓ１１２２）、この複合機状態情報の受信が正常に終了していれば（ｓ１１２４：ＹＥＳ）、正常終了を通知するための通知指令をサービス状態情報として出力した後（ｓ１１２６）、本印刷ジョブを終了する。このｓ１１２６では、通知指令を、返信情報を格納する記憶領域に書き込む処理を行う。これに基づいて、図２１におけるｓ７３２にて複合機制御指令が生成され、図２０におけるｓ７３４にて複合機１０側に通知指令として送信されることとなる。この通知指令は、図１８におけるｓ５３２にて複合機１０側で受信される。
【０１８３】
一方、複合機状態情報の受信が正常に終了しなければ（ｓ１１２４：ＮＯ）、ｓ１１１６へ移行し、異常終了を通知するための通知指令をサービス状態情報として出力した後、本印刷ジョブを終了する。この通知指令は、図１８におけるｓ５３４にて複合機１０で受信される。
（３−６）情報変換処理
続いて、複合機１０との間における全ての通信に際して実行される情報変換処理の処理手順を図２６に基づいて説明する。この情報変換処理は、機能サーバ３０の制御部３１により実行される処理であるが、上述した各処理（サービス）と、通信部１５との間の通信を中継するモジュールとして機能し、両者間の情報の通信が発生した際に開始される。ここでいう「通信の発生」とは、機能サーバ３０から複合機１０へ向けて情報が送信されること，または，複合機１０から情報が受信されたことである。
【０１８４】
この情報変換処理が起動されると、まず、本情報変換処理に先立って発生した通信に係る情報が仕様情報であるか否かをチェックする（ｓ２００２）。この仕様情報は、図１２におけるｓ３５４を経て同図ｓ３１２にて複合機１０から送信されてくるものである。
【０１８５】
このｓ２００２で仕様情報であると判定された場合（ｓ２００２：ＹＥＳ）、後述する変換モジュール初期化処理を行う（ｓ２００４）。ここでは、入出力データのメディア変換に用いる変換モジュールをロードする処理が行われるが、適切な変換モジュールがロードできなかった場合には、エラーフラグが立てられる。なお、図２７に変換モジュールの構成を示す。
【０１８６】
次に、後述する仕様情報変換処理を行う（ｓ２００６）。ここでは、ｓ２００４にて起動された変換モジュールが確保している記憶領域に、上述した仕様情報を格納する処理を行う。
【０１８７】
次に、エラーフラグが立っているか否かをチェックし（ｓ２００８）、エラーフラグが立っていれば（ｓ２００８：ＹＥＳ）、エラー送信情報を生成した後（ｓ２０１０）、次の処理（ｓ２０３２）へ移行する一方、エラーフラグが立っていなければ（ｓ２００８：ＮＯ）、エラー送信情報を生成することなく、次の処理（ｓ２０３２）へ移行する。
【０１８８】
また、上述したｓ２００２で、仕様情報でないと判定された場合（ｓ２００２：ＮＯ）、本情報変換処理に先立って受信した情報がパラメータ要求であるか否かをチェックする（ｓ２０１２）。このパラメータ要求は、機能サーバ３０が、図２３におけるｓ９０４にて、サービスＩ／Ｆ情報３６と共に複合機１０に向けて送信(返信）するＨＴＴＰレスポンスである。
【０１８９】
このｓ２０１２でパラメータ要求であると判定されたら（ｓ２０１２：ＹＥＳ）、後述するサービスＩ／Ｆ情報変換処理を行った後（ｓ２０１４）、次の処理（ｓ２０１６）へ移行する一方、パラメータ要求でなければ（ｓ２０１２：ＮＯ）、サービスＩ／Ｆ情報変換処理を行うことなく次の処理（ｓ２０１６）へ移行する。このサービスパラメータ情報変換処理では、パラメータ要求に付加されているサービスＩ／Ｆ情報３６を、ｓ２００４にてロードされた変換モジュールに応じて変換する処理を行う。
【０１９０】
次に、本情報変換処理に先立って受信した情報がパラメータであるか否かをチェックする（ｓ２０１６）。このパラメータは、図１２におけるｓ３２０を経て同図ｓ３１２にて複合機１０から送信されてくるものである。
【０１９１】
このｓ２０１６でパラメータであると判定されたら（ｓ２０１６：ＹＥＳ）、後述するサービスパラメータ変換処理を行った後（ｓ２０１８）、次の処理（ｓ２０２０）へ移行する一方、パラメータでなければ（ｓ２０１６：ＮＯ）、サービスパラメータ変換処理を行うことなく次の処理（ｓ２０２０）へ移行する。このサービスパラメータ変換処理では、上述のパラメータを、ｓ２００４にてロードされた変換モジュールに応じて変換する処理を行う。
【０１９２】
次に、本情報変換処理に先立って受信した情報がパラメータ設定であるか否かをチェックする（ｓ２０２０）。このパラメータ設定とは、図２４，図２５におけるｓ１００６，ｓ１１０６にて複合機１０から送信されてくる複合機パラメータのことである。
【０１９３】
このｓ２０２０でパラメータ設定であると判定されたら（ｓ２０２０：ＹＥＳ）、後述する複合機パラメータ変換処理を行った後（ｓ２０２２）、次の処理（ｓ２０２４）へ移行する一方、パラメータ設定でなければ（ｓ２０２０：ＮＯ）、複合機パラメータ変換処理を行うことなく次の処理（ｓ２０２４）へ移行する。この複合機パラメータ変換処理では、上述のパラメータ設定（複合機パラメータ）を、ｓ２００４にてロードされた変換モジュールに応じて変換する処理を行う。
【０１９４】
次に、本情報変換処理に先立って受信した情報が入力データであるか否かをチェックする（ｓ２０２４）。この入力データは、図１７におけるｓ４２８にて複合機１０から送信されてくるものである。
【０１９５】
このｓ２０２４で入力データであると判定されたら（ｓ２０２４：ＹＥＳ）、後述する入力メディア変換処理を行った後（ｓ２０２６）、次の処理（ｓ２０２８）へ移行する一方、入力データでなければ（ｓ２０２４：ＮＯ）、入力メディア変換処理を行うことなく次の処理（ｓ２０２８）へ移行する。この入力メディア変換では、上述のようにロードされた変換モジュールによる入力データのメディア変換を行う。
【０１９６】
次に、本情報変換処理に先立って受信した情報が出力データであるか否かをチェックする（ｓ２０２８）。この出力データは、図２５におけるｓ１１２０にて複合機１０側で返信情報を格納する記憶領域に書き込まれた後で、この複合機１０から送信されてくるものである。
【０１９７】
このｓ２０２８で出力データであると判定されたら（ｓ２０２８：ＹＥＳ）、後述する出力メディア変換処理を行った後（ｓ２０３０）、次の処理（ｓ２０３２）へ移行する一方、出力データでなければ（ｓ２０２８：ＮＯ）、出力メディア変換処理を行うことなく次の処理（ｓ２０３２）へ移行する。このメディア変換処理は、上述のようにロードされた変換モジュールによる出力データのメディア変換を行う。
【０１９８】
こうして、出力メディア変換処理を行った後、ｓ２０２８で出力データでないと判定された場合（ｓ２０２８：ＮＯ）、または、上述したｓ２０１０にてエラー送信情報を生成した後、上述した各処理で生成した情報を中継（送信）する（ｓ２０３２）。ここでは、上述したｓ２０１０〜ｓ２０３０にて生成，変換された情報が、機能サーバ３０から複合機１０へ向けて送信される情報であれば、その情報を返信情報の格納領域に書き込む一方、複合機１０から送信された情報であれば、その情報を該当する処理に渡す。
（３−７）変換モジュール初期化処理
続いて、図２６におけるｓ２００４である変換モジュール初期化処理の処理手順を図２８に基づいて説明する。
【０１９９】
この変換モジュール初期化処理が起動されると、まず、上述の情報変換処理に先立って発生した通信に係る情報である仕様情報を読み出した後（ｓ２１０２）、サービス入出力メディア情報を読み出す（ｓ２１０４）。このサービス入出力メディア情報とは、あらかじめ機能サーバ３０の記憶部１６に記憶されたものであって、図２９に示すように、各サービスを示すサービス識別情報それぞれに対して、入出力される入力／出力メディアが対応づけられたデータテーブルである。そして、このｓ２１０４では、複合機１０側に提供すべきサービスを示すサービス識別情報に対応する入力メディアおよび出力メディアが読み出される。
【０２００】
次に、入力用変換モジュールをロードする（ｓ２１０６）。ここでは、以下に示すｓ２１４２〜ｓ２１６８により適切な変換モジュールを選択してロードする処理が行われる。
ここで、このｓ２１４２〜ｓ２１６８について図３０に基づいて説明すると、まず、図２８におけるｓ２１０４にて読み出されたサービス入出力メディア情報の入力メディアを参照する（ｓ２１４２）。
【０２０１】
次に、変換対応情報に登録されたサービス入力メディアのうち、ｓ２１４２にて参照した入力メディアと一致する情報を読み出す（ｓ２１４４）。この変換対応情報とは、あらかじめ機能サーバ３０の記憶部１６に記憶されたものであって、図３１に示すように、サービス入力／出力メディア，入力／出力デバイス，変換タイプおよび変換モジュールの対応関係を示すデータテーブルである。そして、このｓ２１４４では、変換対応情報に登録されている情報のうち、ｓ２１４２で参照された入力メディアに対応する情報それぞれを読み出す。なお、変換対応情報に登録されている変換モジュールは、全ての入出力デバイスに対するものが用意されているわけではなく、一部の入出力デバイスに対しては用意されていない。また、図３１における「（空）」と示した部分は、変換の必要がない場合を表している（つまり、用意されていないものについては、リストアップされていない）。
【０２０２】
次に、ｓ２１４４にて読み出された各入力メディアに対応する情報のうち、変換モジュールの情報を全て読み出す（ｓ２１４６）。
次に、図２８におけるｓ２１０４にて読み出されたサービス入出力メディア情報の出力メディアを参照する（ｓ２１４８）。
【０２０３】
次に、変換対応情報に登録されたサービス入力メディアのうち、ｓ２１４８にて参照した出力メディアと一致する情報を読み出す（ｓ２１５０）。
次に、ｓ２１５０にて読み出された各出力メディアに対応する情報のうち、変換モジュールの情報を全て読み出す（ｓ２１５２）。
【０２０４】
次に、ｓ２１４２〜ｓ２１５２により該当する変換モジュールを読み出せなかったか否かをチェックし（ｓ２１５４）、読み出せていないと判定されたら（ｓ２１５４：ＹＥＳ）、エラーフラグを立てた後（ｓ２１５６）、次の処理（図２８におけるｓ２１０８）へ移行する。
【０２０５】
一方、選択できていると判定されたら（ｓ２１５４：ＮＯ）、その選択された変換モジュールが複数でなければ（ｓ２１５８：ＮＯ）、その選択された変換モジュールが存在しない，つまり上述したように変換モジュールが用意されていない入出力デバイスに対するものであるか否かをチェックする（ｓ２１６０）。
【０２０６】
このｓ２１６０で変換モジュールが存在すると判定されたら（ｓ２１６０：ＮＯ）、その変換モジュールをロードした後（ｓ２１６２）、次の処理（図２８におけるｓ２１０８）へ移行する一方、変換モジュールが存在しないと判定されたら（ｓ２１６０：ＹＥＳ）、変換モジュールのロードを行うことなく、次の処理（図２８におけるｓ２１０８）へ移行する。
【０２０７】
また、上述したｓ２１５８で、選択された変換モジュールが複数であると判定されたら（ｓ２１５８：ＹＥＳ）、仕様情報に優先度が示されているか否かをチェックする（ｓ２１６４）。本実施形態において、仕様情報には、複合機１０の有する入出力デバイスそれぞれについての優先度が示されているものが存在するため（図１５における「Ｄｅｖｉｃｅ＿Ｐｒｉｏｒｉｔｙ」タグ参照；セットされた値が小さいほど優先度が高いことを示す）、このｓ２１５８では、仕様情報に優先順位が示されているか否かがチェックされる。
【０２０８】
このｓ２１５８で、優先度が示されていると判定された場合（ｓ２１５８：ＹＥＳ）、選択された変換モジュールに対応づけて変換対応情報に登録されている入力デバイスのうち、仕様情報において優先度が最も高く設定されている（優先度が最小の）ものを選択する（ｓ２１６６）。
【０２０９】
一方、ｓ２１５８で、優先度が示されていないと判定された場合（ｓ２１５８：ＮＯ）、選択された変換モジュールに対応づけて変換対応情報に登録されている入力デバイスのうち、この変換対応情報において上位に位置する（最上部に登録されている）変換モジュールを選択する（ｓ２１６８）。
【０２１０】
こうして、ｓ２１６６，ｓ２１６８にて変換モジュールを選択したら、ｓ２１６０に移行し、変換モジュールが存在しなければ、そのまま次の処理（図２８におけるｓ２１０８）へ移行する一方、変換モジュールが存在すれば、ｓ２１６２に移行し、選択した変換モジュールをロードした後、次の処理（図２８におけるｓ２１０８）へ移行する。
【０２１１】
こうして、ｓ２１５２〜ｓ２１６８を終えた後、図２８に戻り、エラーフラグが立っているか否かをチェックする（ｓ２１０８）。このエラーフラグは、上述したｓ２１５４で変換モジュールが選択できなかった場合に、ｓ２１５６において立てられるため、ここでは、入力変換モジュールが選択できなかったか否かをチェックしていることになる。
【０２１２】
このｓ２１０８でエラーフラグが立っていると判定されたら（ｓ２１０８：ＹＥＳ）、本変換モジュール初期化処理を終えて、図２６におけるｓ２００６へ移行する。
一方、エラーフラグが立っていないと判定されたら（ｓ２１０８：ＮＯ）、入力用変換モジュールがロードされているか否かを判定する（ｓ２１０９）。
【０２１３】
このｓ２１０９でロードされていると判定された場合（ｓ２１０９：ＹＥＳ）、入力変換モジュールの処理タイプに［複合機→サービス］を代入してから（ｓ２１１０）次の処理（ｓ２１１２）へ移行する一方、ｓ２１０９でロードされていないと判定された場合（ｓ２１０９：ＮＯ）、処理タイプの代入を行うことなく次の処理（ｓ２１１２）へ移行する。この「入力変換モジュールの処理タイプ」とは、ロードされた変換モジュールが情報の格納領域として確保しているものである（図２７における「処理タイプ格納領域」参照）。
【０２１４】
次に、出力用変換モジュールをロードする（ｓ２１１２）。ここでは、上述したｓ２１５２〜２１６８と同様の処理により適切な変換モジュールをロードする処理が行われるだけであるため、詳細な説明は省略する。具体的には、ｓ２１５２〜２１６８に係る説明のうち、「入力デバイス」を「出力デバイス」と読み替え、「入力メディア」を「出力メディア」と読み替えた説明となる。
【０２１５】
こうして、ｓ２１１２を終えた後、上述したｓ２１０８と同様、エラーフラグが立っているか否かをチェックする（ｓ２１１４）。
このｓ２１１４でエラーフラグが立っていると判定されたら（ｓ２１１４：ＹＥＳ）、本変換モジュール初期化処理を終えて、図２６におけるｓ２００６へ移行する。
【０２１６】
一方、エラーフラグが立っていないと判定されたら（ｓ２１１４：ＮＯ）、出力用変換モジュールがロードされているか否かを判定する（ｓ２１１５）。
このｓ２１１５でロードされていると判定された場合（ｓ２１１５：ＹＥＳ）、出力変換モジュールの処理タイプに［サービス→複合機］を代入した後（ｓ２１１６）、本変換モジュール初期化処理を終えて図２６におけるｓ２００６へ移行する一方、ｓ２１１５でロードされていないと判定された場合（ｓ２１１５：ＮＯ）、処理タイプの代入を行うことなく、本変換モジュール初期化処理を終えて図２６におけるｓ２００６へ移行する。この「出力変換モジュールの処理タイプ」とは、ロードされた変換モジュールが情報の格納領域として確保しているものである（図２７における「処理タイプ格納領域」参照）。
（３−８）仕様情報変換処理
続いて、図２６におけるｓ２００６である仕様情報変換処理の処理手順を図３２に基づいて説明する。
【０２１７】
この仕様情報変換処理が起動されると、まず、図２８におけるｓ２１０２と同様、仕様情報を読み出す（ｓ２１７２）。
次に、このｓ２１７２で読み出した仕様情報の先頭の情報を、以下の処理を行う処理対象とする（ｓ２１７４）。
【０２１８】
次に、仕様情報における全ての情報についての処理が完了したか否かをチェックし（ｓ２１７６）、完了していなければ（ｓ２１７６：ＮＯ）、処理対象の情報が入力デバイスに関するものであるか否かをチェックする（ｓ２１７８）。
【０２１９】
このｓ２１７８で入力デバイスに関するものであると判定された場合（ｓ２１７８：ＹＥＳ）、図３０におけるｓ２１６２により入力変換用モジュールがロードされていれば（ｓ２１８０：ＹＥＳ）、その入力変換用モジュールのデバイス仕様情報格納領域へ処理対象の情報を追加し（ｓ２１８２）、処理対象の情報を入力変換用モジュールの出力仕様情報に差し替えた後（ｓ２１８４）、次の情報を処理対象として（ｓ２１８６）、ｓ２１７６へ戻る。この「デバイス仕様情報格納領域」とは、ロードされた変換モジュールが情報の格納領域として確保しているものである（図２７における「デバイス仕様情報格納領域」参照）。また、「出力仕様情報」とは、ロードされた変換モジュールが情報の格納領域として確保しているものであって（図２７における「出力仕様情報」参照）、あらかじめ定められた仕様情報がセットされている。
【０２２０】
一方、ｓ２１８０で、図３０におけるｓ２１６２により入力変換用モジュールがロードされていなければ（ｓ２１８０：ＮＯ）、上記した情報の追加，差し替えを行うことなく、ｓ２１８６へ移行し、次の情報を処理対象としてからｓ２１７６へ戻る。
【０２２１】
また、ｓ２１７８で入力デバイスに関するものでないと判定された場合（ｓ２１７８：ＮＯ）、出力デバイスに関するものであるか否かをチェックする（ｓ２１８８）。
このｓ２１８８で出力デバイスに関するものであると判定された場合（ｓ２１８８：ＹＥＳ）、図３０におけるｓ２１６２により出力変換用モジュールがロードされていれば（ｓ２１９０：ＹＥＳ）、出力用変換モジュールのデバイス仕様情報格納領域へ情報を追加し（ｓ２１９２）、処理対象の情報を出力用変換モジュールの入力仕様情報に差し替えた後（ｓ２１９４）、ｓ２１８６へ移行し、次の情報を処理対象としてからｓ２１７６へ戻る。なお、この「入力仕様情報」とは、ロードされた変換モジュールが情報の格納領域として確保しているものであって（図２７における「入力仕様情報」参照）、あらかじめ定められた仕様情報がセットされている。
【０２２２】
こうして、ｓ２１７６〜ｓ２１９４を仕様情報の全ての情報について行ったら、ｓ２１７６で仕様情報における全ての情報についての処理が完了したと判定して（ｓ２１７６：ＹＥＳ）、本仕様情報変換処理を終了する。このように、本仕様情報変換処理によって、ｓ２１７２にて読み出した仕様情報が、必要に応じて変換モジュールの入力／出力仕様情報に変換されることとなる。また、必要に応じて図２３におけるｓ９３２にて入力される仕様情報に変換されることとなる。
（３−９）サービスＩ／Ｆ情報変換処理
続いて、図２６におけるｓ２０１４であるサービスＩ／Ｆ情報変換処理の処理手順を図３３，図３４に基づいて説明する。なお、以下の説明において示される変換モジュールの構成について説明すると、この変換モジュールは、図２７に示すように、変換処理プログラム本体の他、あらかじめ定められたパラメータとして、入力仕様情報，出力仕様情報，入力デバイス用サービスＩ／Ｆ情報，出力デバイス用サービスＩ／Ｆ情報などの記憶領域を有しており、また、以下の処理において情報を格納するために確保された格納領域として、処理タイプ格納領域，デバイス仕様情報格納領域，サービス側サービスＩ／Ｆ情報格納領域，入力パラメータ格納領域，出力パラメータ格納領域などを有している。
【０２２３】
これらのうち、あらかじめ定められたパラメータを構成する入力仕様情報は、出力用変換モジュールとして利用される場合にＵＩジョブに渡されることとなる情報であり、変換処理プログラムによる変換処理における入力仕様情報となるものである。また、出力仕様情報は、入力用変換モジュールとして利用される場合にＵＩジョブに渡されることとなる情報であり、変換処理プログラムによる変換処理における出力仕様情報となるものである。また、入力デバイス用サービスＩ／Ｆ情報は、入力用変換モジュールとして利用される場合に複合機１０に送信することとなる情報であり、上述したサービスＩ／Ｆ情報３６と同じフォーマットで形成された入力デバイスの設定項目を定義する情報である。そして、出力デバイス用サービスＩ／Ｆ情報は、出力用変換モジュールとして利用される場合に複合機１０に送信することとなる情報であり、上述したサービスＩ／Ｆ情報３６と同じフォーマットで形成された出力デバイスの設定項目を定義する情報である。
【０２２４】
また、情報を格納するために確保された格納領域を構成する処理タイプ格納領域は、変換処理プログラムによる変換の方向を示す情報を格納する領域であり、ここに格納された情報により変換処理プログラムが入力フィルタとして動作する（［複合機→サービス］の場合）のか、出力フィルタとして動作する（［サービス→複合機］の場合）のかが切り替えられることとなる。また、デバイス仕様情報格納領域は、複合機１０側から受け取った仕様情報のうち、入出力いずれかの関係するデバイスについての仕様を定義する情報を格納する領域である。また、サービス側サービスＩ／Ｆ情報格納領域は、サービス側から受け取ったサービスＩ／Ｆ情報３６のうち、入出力いずれかの関係するパラメータについての設定項目を定義する情報を格納する領域である。また、入力パラメータ格納領域は、変換処理を行う際における入力側（仮想）デバイスのパラメータを格納する領域である。そして、出力パラメータ格納領域は、変換処理を行う際における出力側（仮想）デバイスのパラメータを格納する領域である。
【０２２５】
このサービスＩ／Ｆ情報変換処理が起動されると、まず、上述の情報変換処理に先立って発生した通信に係る情報であるパラメータ要求に付加されているサービスＩ／Ｆ情報３６を読み出す（ｓ２２０２）。
【０２２６】
次に、ｓ２２０２にて読み出されたサービスＩ／Ｆ情報３６における先頭の設定項目を処理対象とする（ｓ２２０４）。
次に、サービスＩ／Ｆ情報３６における全ての設定項目に対する以下の処理が完了したか否かをチェックし（ｓ２２０６）、完了していなければ（ｓ２２０６：ＮＯ）、処理対象の設定項目が入力デバイスに関する設定項目であるか否かをチェックする（ｓ２２０８）。
【０２２７】
このｓ２２０８で入力デバイスに関する設定項目でないと判定された場合（ｓ２２０８：ＮＯ）、そのまま次の処理（ｓ２２２６）へ移行する一方、入力デバイスに関する設定項目であると判定された場合（ｓ２２０８：ＹＥＳ）、図３０におけるｓ２１６２により入力変換用モジュールがロードされていなければ（ｓ２２１０：ＮＯ）、次の設定項目を処理対象とした後（ｓ２２１２）、ｓ２２０６へ戻る。
【０２２８】
一方、ｓ２２１０で、図３０におけるｓ２１６２により入力変換用モジュールがロードされていれば（ｓ２２１０：ＹＥＳ）、入力用変換モジュールのサービス側サービスＩ／Ｆ情報格納領域に、処理対象の設定項目におけるパラメータを登録（保存）する（ｓ２２１４）。この「サービス側サービスＩ／Ｆ情報格納領域」とは、ロードされた変換モジュールが情報の格納領域として確保しているものである（図２７における「サービス側サービスＩ／Ｆ情報格納領域」参照）。
【０２２９】
次に、サービスＩ／Ｆ情報３６に代用設定項目があるか否かをチェックする（ｓ２２１６）。この代用設定項目とは、「ｖａｌｕｅ＿Ｎａｍｅ」の値として、先頭に「＿ａｌｔ＿」の文字が挿入された値となっている設定項目のことである。そして、このｓ２２１６では、この先頭に「＿ａｌｔ＿」の文字が挿入された値の「ｖａｌｕｅ＿Ｎａｍｅ」が含まれている場合に、代用設定項目があると判定する。なお、図３５に、この「ｖａｌｕｅ＿Ｎａｍｅ」の値について、それぞれ対応するデバイス，入出力（入力および出力のいずれに用いられるか），および，その値の定義を示す。
【０２３０】
このｓ２２１６で、代用設定項目があると判定された場合（ｓ２２１６：ＹＥＳ）、その設定項目を入力デバイスに対応した代用設定項目に差し替えた後（ｓ２２１８）、次の処理（ｓ２２２６）へ移行する。このｓ２２１８では、処理対象の設定項目のパラメータを、入力デバイスに対応する代用設定項目における「＿ａｌｔ＿」を削除したものに差し替える。例えば、図１３における翻訳コピーサービスでは、入力デバイスとしてテキスト入力のためにキーボード（入力部１２）を必要とするが（図２９参照）、キーボードを有していない場合に、その代用設定項目として「＿ａｌｔ＿ｓｃａｎ＿ｒｅｓ」の「＿ａｌｔ＿」を削除した「ｓｃａｎ＿ｒｅｓ」に書き換える。
【０２３１】
また、ｓ２２１６で、代用設定項目がないと判定された場合（ｓ２２１６：ＮＯ）、入力変換モジュールに代用設定項目があるか否かをチェックする（ｓ２２２０）。この「代用設定項目」とは、入力変換モジュールにおける入力デバイス用サービスＩ／Ｆ情報にセットされたパラメータである。
【０２３２】
このｓ２２２０で代用設定項目があると判定された場合（ｓ２２２０：ＹＥＳ）、入力変換モジュールの入力デバイス用サービスＩ／Ｆ情報から設定項目を読み出して差し替えた後（ｓ２２２２）、次の処理（ｓ２２２６）へ移行する。この「入力デバイス用サービスＩ／Ｆ情報」とは、ロードされた変換モジュールが情報の格納領域として確保しているものであって（図２７における「入力デバイス用サービスＩ／Ｆ情報」参照）、本実施形態においては、あらかじめ定められたサービスＩ／Ｆ情報がセットされているが、何もセットされていない設定とすることも可能である。
【０２３３】
また、ｓ２２２２で、代用設定項目がないと判定された場合（ｓ２２２２：ＮＯ）、デバイスに対応した固定設定項目を読み出して差し替えた後（ｓ２２２４）、次の処理（ｓ２２２６）へ移行する。この「固定設定項目」は、機能サーバ３０の図示しないハードディスク内にあらかじめ記憶された入出力デバイスに対応づけられた設定項目の情報である。
【０２３４】
次に、処理対象の設定項目が処理対象の設定項目が出力デバイスに関する設定項目であるか否かをチェックする（ｓ２２２６）。
このｓ２２２６で出力デバイスに関する設定項目でないと判定された場合（ｓ２２２６：ＮＯ）、ｓ２２１２へ移行し、次の設定項目を処理対象とした後、ｓ２２０６へ戻る一方、出力デバイスに関する設定項目であると判定された場合（ｓ２２２６：ＹＥＳ）、図３０におけるｓ２１６２により出力変換用モジュールがロードされていなければ（ｓ２２２８：ＮＯ）、ｓ２２１２へ移行し、次の設定項目を処理対象とした後、ｓ２２０６へ戻る。
【０２３５】
一方、ｓ２２２８で、図３０におけるｓ２１６２により出力変換用モジュールがロードされていれば（ｓ２２２８：ＹＥＳ）、出力用変換モジュールのサービス側サービスＩ／Ｆ情報格納領域に、処理対象の設定項目におけるパラメータを格納する（ｓ２２３０）。
【０２３６】
次に、上述したｓ２２１６と同様に、サービスＩ／Ｆ情報３６に代用設定項目があるか否かをチェックする（ｓ２２３２）。
このｓ２２３２で、代用設定項目があると判定された場合（ｓ２２３２：ＹＥＳ）、その設定項目を出力デバイスに対応した代用設定項目に差し替えた後（ｓ２２３４）、ｓ２２１２へ移行し、次の設定項目を処理対象とした後、ｓ２２０６へ戻る。このｓ２２３４では、処理対象の設定項目のパラメータを、出力デバイスに対応する代用設定項目における「＿ａｌｔ＿」を削除したものに差し替える。
【０２３７】
また、上述したｓ２２３２で、代用設定項目がないと判定された場合（ｓ２２３２：ＮＯ）、出力変換モジュールに代用設定項目があるか否かをチェックする（ｓ２２３６）。
このｓ２２３６で出力変換モジュールがあると判定された場合（ｓ２２３６：ＹＥＳ）、出力変換モジュールの出力デバイス用サービスＩ／Ｆ情報から設定項目を読み出して差し替えた後（ｓ２２３８）、ｓ２２１２へ移行し、次の設定項目を処理対象とした後、ｓ２２０６へ戻る。この「出力デバイス用サービスＩ／Ｆ情報」とは、ロードされた変換モジュールが情報の格納領域として確保しているものであって（図２７における「出力デバイス用サービスＩ／Ｆ情報」参照）、本実施形態においては、あらかじめ定められたサービスＩ／Ｆ情報がセットされているが、何もセットされていない設定とすることも可能である。
【０２３８】
また、ｓ２２３６で、代用設定項目がないと判定された場合（ｓ２２３６：ＮＯ）、上述したｓ２２２４と同様、デバイスに対応した固定設定項目を読み出して差し替えた後（ｓ２２４０）、ｓ２２１２へ移行し、次の設定項目を処理対象とした後、ｓ２２０６へ戻る。
【０２３９】
この後、ｓ２２０６〜ｓ２２４０をサービスＩ／Ｆ情報３６の全ての設定項目について行ったら、ｓ２２０６で全ての設定項目についての処理が完了したと判定して（ｓ２２０６：ＹＥＳ）、本サービスＩ／Ｆ情報変換処理を終了する。このように、本サービスＩ／Ｆ情報変換処理によって、ｓ２２０２にて読み出したサービスＩ／Ｆ情報３６が、必要に応じて変換モジュールのサービスＩ／Ｆ情報３６に変換されることとなる。また、必要に応じて図１２のｓ３１８にて複合機１０が受け取るサービスＩ／Ｆ情報３６に変換されることとなる。
（３−１０）サービスパラメータ変換処理
続いて、図２６におけるｓ２０１８であるサービスパラメータ処理の処理手順を図３６，図３７に基づいて説明する。
【０２４０】
このサービスパラメータ変換処理が開始されると、まず、上述の情報変換処理に先立って発生した通信に係る情報であるパラメータ（サービスパラメータ）を読み出す（ｓ２３０２）。
【０２４１】
次に、ｓ２３０２にて読み出したパラメータにおける先頭の設定項目を、以下の処理を行う処理対象とする（ｓ２３０４）。
次に、サービスパラメータにおける全ての設定項目に対する以下の処理が完了したか否かをチェックし（ｓ２３０６）、完了していなければ（ｓ２３０６：ＮＯ）、処理対象の設定項目が入力デバイスに関する設定項目であるか否かをチェックする（ｓ２３０８）。
【０２４２】
このｓ２３０８で、入力デバイスに関する設定項目であれば（ｓ２３０８：ＹＥＳ）、図３０におけるｓ２１６２により入力変換用モジュールがロードされていなければ（ｓ２３１０：ＮＯ）、次の設定項目を処理対象とした後（ｓ２３１２）、ｓ２３０６へ戻る。
【０２４３】
また、ｓ２３１０で、図３０におけるｓ２１６２により入力変換用モジュールがロードされていれば（ｓ２２１０：ＹＥＳ）、入力用変換モジュールの入力パラメータ格納領域に、処理対象の設定項目におけるパラメータを登録（保存）する（ｓ２３１４）。この「入力パラメータ格納領域」とは、ロードされた変換モジュールが情報の格納領域として確保しているものである（図２７における「入力パラメータ格納領域」参照）。
【０２４４】
次に、処理対象の設定項目におけるパラメータが差し替え済みであるか否かをチェックする（ｓ２３１６）。
このｓ２３１６で、差し替え済みであると判定された場合（ｓ２３１６：ＹＥＳ）、ｓ２３１２へ移行し、次の設定項目を処理対象とした後、ｓ２３０６へ戻る。
【０２４５】
一方、ｓ２３１６で、差し替え済みではないと判定された場合（ｓ２３１６：ＮＯ）、出力パラメータ格納領域に、サービスＩ／Ｆ情報格納領域に記憶した設定項目に値を設定した情報を生成して、処理対象の設定項目におけるパラメータを、この情報に差し替える（ｓ２３１８）。ここでは、入力用変換モジュール内の変換処理プログラムにあらかじめ組み込まれた値をセットすることにより情報を生成し、処理対象の設定項目におけるパラメータを、こうして生成した情報に差し替える。
【０２４６】
こうして、ｓ２３１８を終えた後、または、ｓ２３０８で入力デバイスに関する設定項目でない場合（ｓ２３０８：ＮＯ）、処理対象の設定項目が出力デバイスに関する設定項目であるか否かをチェックする（ｓ２３２０）。
【０２４７】
このｓ２３２０で、出力デバイスに関する設定項目でないと判定された場合（ｓ２３２０：ＮＯ）、ｓ２３１２へ移行し、次の設定項目を処理対象とした後、ｓ２４０６へ戻る。
【０２４８】
また、ｓ２３２０で、出力デバイスに関する設定項目であると判定された場合（ｓ２３２０：ＹＥＳ）、図３０におけるｓ２１６２により出力変換用モジュールがロードされていなければ（ｓ２３３２：ＮＯ）、ｓ２３１２へ移行し、次の設定項目を処理対象とした後、ｓ２３０６へ戻る。
【０２４９】
一方、ｓ２３２０で、図３０におけるｓ２１６２により出力変換用モジュールがロードされていれば（ｓ２３２２：ＹＥＳ）、出力用変換モジュールの出力パラメータ格納領域に、処理対象の設定項目におけるパラメータを格納する（ｓ２３２４）。この「出力パラメータ格納領域」とは、ロードされた変換モジュールが情報の格納領域として確保しているものである（図２７における「出力パラメータ格納領域」参照）。
【０２５０】
次に、処理対象の設定項目におけるパラメータが差し替え済みであるか否かをチェックする（ｓ２３２６）。
このｓ２３２６で、差し替え済みであると判定された場合（ｓ２３２６：ＹＥＳ）、ｓ２３１２へ移行し、次の設定項目を処理対象とした後、ｓ２３０６へ戻る。
【０２５１】
一方、ｓ２３２６で、差し替え済みではないと判定された場合（ｓ２３２６：ＮＯ）、出力パラメータ格納領域に、サービスＩ／Ｆ情報格納領域に記憶した設定項目に値を設定した情報を生成して、処理対象の設定項目におけるパラメータを、この情報に差し替える（ｓ２３２８）。ここでは、出力用変換モジュール内の変換処理プログラム内にあらかじめ組み込まれた値をセットすることにより情報を生成し、処理対象の設定項目におけるパラメータを、こうして生成した情報に差し替える。
【０２５２】
このｓ２３２８を終えた後、ｓ２３１２へ移行し、次の設定項目を処理対象とした後、ｓ２３０６へ戻る。
この後、ｓ２３０６〜ｓ２３２８をサービスパラメータの全ての設定項目について行ったら、ｓ２３０６で全ての設定項目についての処理が完了したと判定して（ｓ２３０６：ＹＥＳ）、本サービスパラメータ変換処理を終了する。このように、本サービスパラメータ変換処理によって、ｓ２３０２にて読み出したサービスパラメータが、必要に応じて変換モジュールの入出力パラメータ，または，必要に応じて図２３のｓ９０８に入力されるパラメータに変換されることとなる。
（３−１１）複合機パラメータ変換処理
続いて、図２６におけるｓ２０２２である複合機パラメータ変換処理の処理手順を図３８，図３９に基づいて説明する。
【０２５３】
この複合機パラメータ変換処理が起動されると、まず、上述の情報変換処理に先立って発生した通信に係る情報である複合機パラメータ（パラメータ設定）を読み出す（ｓ２４０２）。
【０２５４】
次に、ｓ２４０２にて読み出したパラメータにおける先頭の設定項目を、以下の処理を行う処理対象とする（ｓ２４０４）。
次に、複合機パラメータにおける全ての設定項目に対する以下の処理が完了したか否かをチェックし（ｓ２４０６）、完了していなければ（ｓ２４０６：ＮＯ）、処理対象の設定項目が入力デバイスに関する設定項目であるか否かをチェックする（ｓ２４０８）。
【０２５５】
このｓ２４０８で、入力デバイスに関する設定項目であれば（ｓ２４０８：ＹＥＳ）、図３０におけるｓ２１６２により入力変換用モジュールがロードされていなければ（ｓ２４１０：ＮＯ）、次の設定項目を処理対象とした後（ｓ２４１２）、ｓ２４０６へ戻る。
【０２５６】
また、ｓ２４１０で、図３０におけるｓ２１６２により入力変換用モジュールがロードされていれば（ｓ２４１０：ＹＥＳ）、入力用変換モジュールの出力パラメータ格納領域に、処理対象の設定項目におけるパラメータを登録（保存）する（ｓ２４１４）。
【０２５７】
次に、処理対象の設定項目におけるパラメータが差し替え済みであるか否かをチェックする（ｓ２４１６）。
このｓ２４１６で、差し替え済みであると判定された場合（ｓ２４１６：ＹＥＳ）、ｓ２４１２へ移行し、次の設定項目を処理対象とした後、ｓ２４０６へ戻る。
【０２５８】
一方、ｓ２４１６で、差し替え済みではないと判定された場合（ｓ２４１６：ＮＯ）、処理対象の設定項目におけるパラメータを、入力用変換モジュールの入力パラメータ格納領域にセットされたパラメータに差し替える（ｓ２４１８）。
【０２５９】
こうして、ｓ２４１８を終えた後、または、ｓ２４０８で入力デバイスに関する設定項目でない場合（ｓ２４０８：ＮＯ）、処理対象の設定項目が出力デバイスに関する設定項目であるか否かをチェックする（ｓ２４２０）。
【０２６０】
このｓ２４２０で、出力デバイスに関する設定項目でないと判定された場合（ｓ２４２０：ＮＯ）、ｓ２４１２へ移行し、次の設定項目を処理対象とした後、ｓ２４０６へ戻る。
【０２６１】
また、ｓ２４２０で、出力デバイスに関する設定項目であると判定された場合（ｓ２４２０：ＹＥＳ）、図３０におけるｓ２１６２により出力変換用モジュールがロードされていなければ（ｓ２４２２：ＮＯ）、ｓ２４１２へ移行し、次の設定項目を処理対象とした後、ｓ２４０６へ戻る。
【０２６２】
一方、ｓ２４２０で、図３０におけるｓ２１６２により出力変換用モジュールがロードされていれば（ｓ２４２２：ＹＥＳ）、出力用変換モジュールの入力パラメータ格納領域に、処理対象の設定項目におけるパラメータを格納する（ｓ２４２４）。
【０２６３】
次に、処理対象の設定項目におけるパラメータが差し替え済みであるか否かをチェックする（ｓ２４２６）。
このｓ２４２６で、差し替え済みであると判定された場合（ｓ２４２６：ＹＥＳ）、ｓ２４１２へ移行し、次の設定項目を処理対象とした後、ｓ２４０６へ戻る。
【０２６４】
一方、ｓ２４２６で、差し替え済みではないと判定された場合（ｓ２４２６：ＮＯ）、出力用変換モジュールの出力パラメータ格納領域に、処理対象の設定項目におけるパラメータを格納する（ｓ２４２８）。
【０２６５】
このｓ２４２８を終えた後、ｓ２４１２へ移行し、次の設定項目を処理対象とした後、ｓ２３０６へ戻る。
この後、ｓ２４０６〜ｓ２４２８をサービスパラメータの全ての設定項目について行ったら、ｓ２４０６で全ての設定項目についての処理が完了したと判定して（ｓ２４０６：ＹＥＳ）、本サービスパラメータ変換処理を終了する。このように、本サービスパラメータ変換処理によって、ｓ２４０２にて読み出した複合機パラメータが、必要に応じて変換モジュールの入出力パラメータに変換されることとなる。また、必要に応じて図１７のｓ４１０，図１８のｓ５１０の処理にて複合機１０が受け取る複合機パラメータに変換されることとなる。
（３−１２）入力／出力メディア変換処理
続いて、図２６におけるｓ２０２６，ｓ２０３０である入力メディア変換処理，出力メディア変換処理の処理手順を図４０（ａ），（ｂ）に基づいて説明する。
【０２６６】
この入力／出力メディア変換処理が起動されると、まず、入力／出力用変換モジュールがロードされているか否かがチェックされる（ｓ２５０２，ｓ２５１２）。ここでは、入力メディア変換処理（図４０（ａ））の場合であれば、図３０におけるｓ２１６２にて変換モジュールがロードされ、かつ、こうしてロードされた変換モジュールが入力用変換モジュールであることをチェックする。また、出力メディア変換処理（図４０（ｂ））の場合であれば、図３０におけるｓ２１６２にて変換モジュールがロードされ、かつ、こうしてロードされた変換モジュールが出力用変換モジュールであることをチェックする。
【０２６７】
このｓ２５０２，ｓ２５１２にて入力／出力用変換モジュールがロードされていると判定されたら（ｓ２５０２：ＹＥＳ，ｓ２５１２：ＹＥＳ）、その変換モジュールにより、上述の情報変換処理に先立って発生した通信に係る情報である入力／出力データのメディア変換処理を行う（ｓ２５０４，ｓ２５１４）。
【０２６８】
ここでは、入力メディア変換処理（図４０（ａ））の場合であれば、入力データ（図１７のｓ４２８の処理にて複合機１０より送信されたデータ）を、入力用変換モジュールの入力パラメータ格納領域のパラメータで規定される状態としたものとして入力し、メディア変換処理を施してメディア変換し、その変換後のデータを、入力用変換モジュールの出力パラメータ格納領域のパラメータで規定される状態としたデータを得る。一方、出力メディア変換処理（図４０（ｂ））の場合であれば、出力データ（図２５のｓ１１２の処理にて印刷ジョブから出力されたデータ）を、出力用変換モジュールの入力パラメータ格納領域のパラメータで規定される状態としたものとして入力し、メディア変換処理を施してメディア変換し、その変換後のデータを、出力用変換モジュールの出力パラメータ格納領域のパラメータで規定される状態としたものを得る。また、上述したメディア変換処理としては、例えば、テキストで構成される画像を示す画像データにＯＣＲ処理を施すことによりテキストデータ化したり、テキストデータを周知のテキスト読み上げプログラムにて音声データ化したり、または、これらの逆のメディア変換などを行う。
（３−１３）デバイス優先度設定処理
続いて、操作部１２によりあらかじめ定められた操作が行われた際に開始されるデバイス優先度設定処理の処理手順を図４１に基づいて説明する。
【０２６９】
このデバイス優先度設定処理が起動すると、まず、複合機１０に記憶している仕様情報（図１５）に基づいて、入出力デバイスの優先度情報をディスプレイ５２に表示させる（ｓ２５０２）。ここでは、図４２（ａ），（ｂ）に示すように、入出力デバイスの優先度情報を示す優先度選択画面を表示させる。この優先度選択画面は、操作部１２への操作により切替可能な入力デバイスの選択用画面（図４２（ａ）参照），出力デバイスの選択画面（図４２（ｂ）参照）からなり、それぞれデバイスの優先順位を入力するための入力欄がデバイス毎に設けられたものである。この優先度選択画面が表示された後、ユーザは、操作部１２により、入力デバイスの選択画面に切り替える入力切替操作（左の方向キー４８の押下），出力デバイスの選択画面に切り替える出力切替操作（右の方向キー４９の押下），いずれかの入出力デバイスを指定する指定操作（上下の方向キー４６，４７の押下），指定した入出力デバイスの優先度を変更する変更操作，変更した優先度を確定する確定操作（ＯＫキー５０の押下），優先度の変更をキャンセルするキャンセル操作（キャンセルキー５１の押下）などを行うことができる。
【０２７０】
こうして、優先度選択画面が表示された後、ユーザによる操作（キー入力）が発生したら（ｓ２５０４）、その操作が入力切替操作であれば（ｓ２５０６：ＹＥＳ）、仕様情報に基づき、優先度選択画面を入力デバイス用の選択画面に切り替えた後（ｓ２５０８）、ｓ２５０４へ戻る。
【０２７１】
また、ユーザによる操作が出力切替操作であれば（ｓ２５０６：ＮＯ，ｓ２５１０：ＹＥＳ）、仕様情報に基づき、優先度選択画面を出力デバイス用の選択画面に切り替えた後（ｓ２５１２）、ｓ２５０４へ戻る。
【０２７２】
また、ユーザによる操作が指定操作であれば（ｓ２５１０：ＮＯ，ｓ２５１４：ＹＥＳ）、入力カーソルを移動させた状態とすることで指定操作により指定された内容を優先度選択画面に反映させた後（ｓ２５１６）、ｓ２５０４へ戻る。このｓ２５１６では、優先度選択画面における入力欄に表示されているカーソル（図４２における破線の四角参照）を、押下された上下の方向キー４６，４７の方向に位置する別の入力欄へ移動させる。
【０２７３】
また、ユーザによる操作が変更操作であれば（ｓ２５１４：ＮＯ，ｓ２５１８：ＹＥＳ）、カーソル位置に値を入力した状態とすることで変更操作により変更された内容を優先度選択画面に反映させた後（ｓ２５２０）、ｓ２５０４へ戻る。このｓ２５２０では、変更操作により変更された優先度をカーソルが表示されている入力欄に入力された状態とする。
【０２７４】
また、ユーザによる操作が確定操作であれば（ｓ２５１８：ＮＯ，ｓ２５２２：ＹＥＳ）、この時点で各入力欄に入力されている優先度の値に矛盾がなければ（ｓ２５２４：ＹＥＳ）、この入力欄に入力された優先度の値を、その入力欄に対応する入出力デバイスの優先度として仕様情報に記憶（保存）した後（ｓ２５３０）、本デバイス優先度設定処理を終了する一方、各入力欄に入力されている優先度の値に矛盾があれば（ｓ２５２４：ＮＯ）、図４２（ｃ）に示すように、エラー表示を所定時間（本実施形態においては２秒）間行った後（ｓ２５２６）、優先度選択画面を、本デバイス優先度設定処理が行われる直前の状態に戻した後（ｓ２５２８）、ｓ２５０４へ戻る。なお、上述したｓ２５２４では、別々の入力欄に優先度として同一の値が入力された状態になっているか否かがチェックされ、同一の値が入力された状態になっていれば、優先度の値に矛盾があると判定する。
【０２７５】
また、ユーザによる操作がキャンセル操作であれば（ｓ２５２２：ＮＯ，ｓ２５３２：ＹＥＳ）、本デバイス優先度設定処理を終了する。
そして、ユーザによる操作が上述したいずれの操作でもなければ（ｓ２５３２：ＮＯ）、拒否音（ブザー音など）を鳴動させた後（ｓ２５３４）、ｓ２５０４へ戻る。
【０２７６】
［効果］
このように構成されたサービス提供システムにおいて、機能サーバ３０は、図４０の入力／出力メディア変換処理を実行することで、複合機１０側にサービスを提供できるように構成されている。この入力／出力メディア変換処理は、図２６の情報変換処理を経て、複合機１０の有する入出力デバイス，つまりこれら入出力デバイスで実現される機能に対応するメディアで処理結果（入力／出力データ）が得られる変換モジュールにより行われる。そのため、これにより得られた処理結果であれば、複合機１０側でこの処理結果に基づいて複合機１０の有する機能を実現することができる。よって、複合機１０側においては、複合機１０自身が有していない機能が必要なサービスであったとしても、そのサービスの提供を、複合機１０自身が対応するメディア（実現可能な機能で対応可能なメディア）の処理結果により間接的に受けることができる。
【０２７７】
また、上記実施形態においては、複合機１０の有する印刷機能により印刷する画像を示す画像データ，および，スキャナ機能により画像を読み取って生成した画像データのうち、少なくとも一方の機能を、機能サーバ３０によるサービスの提供を受けて実現することができる。
【０２７８】
また、機能サーバ３０は、図３０におけるｓ２１４２〜ｓ２１５４にて、複合機１０から取得した仕様情報，および，複合機１０側で記憶しているサービス入出力メディア情報に基づいて判定を行うことで、複合機１０側で必要な機能を有しているか否か（同図ｓ２１５４にて「該当する」場合か否か）を判定することができる。
【０２７９】
そして、このように仕様情報は、複合機１０から取得されるため、複合機１０の入出力デバイスに関するパラメータを機能サーバ３０側で管理する必要がなく、このようなパラメータの機能サーバ３０側に対する登録作業などの負担が生じることはない。このような作業負担は、本サービス提供システムを構成する複合機１０の数を多くするほど大きくなってしまうため、本サービス提供システムのような構成とすることにより、大幅に作業負担を軽減することができる。
【０２８０】
さらに、複合機１０の入出力デバイスに関するパラメータを機能サーバ３０側で管理する構成を想定すると、ユーザによるパラメータの登録作業が必要になり、このときのユーザによる入力ミスなどにより誤ったパラメータが登録されてしまい、システム全体が正常に動作しなくなってしまう虞があるが、本サービス提供システムのような構成であれば、複合機１０から複合機１０自身のパラメータが通知され、これに基づいて以降の処理を行っているため、誤ったパラメータによりシステム全体が正常に動作しなくなる、といった虞がない。
【０２８１】
また、機能サーバ３０は、図３０におけるｓ２１４２〜ｓ２１５４にて、複合機１０から取得した仕様情報，および，複合機１０側で記憶しているサービス入出力メディア情報に基づいて判定を行うことで、複合機１０側で必要な機能を有しているか否か（同図ｓ２１５４にて「該当する」場合か否か）を判定し、以降の処理で、その機能に対応する変換モジュールを読み出すように構成されている。そして、このとき読み出すべき変換モジュールが複数あった場合には、読み出すべき変換モジュールを、同図ｓ２１６４により、仕様情報に規定された優先順位に基づいて絞り込むことができる。
【０２８２】
また、このときの優先順位については、機能サーバ３０側で、図４１に示したデバイス優先度設定処理を実行することにより、ユーザに指定させることができ、以降、機能サーバ３０は、こうして指定された優先順位に基づいて変換モジュールを選択するようにできる。
【０２８３】
また、図４０におけるｓ２５０４，ｓ２５１４にてメディア変換処理を行う際に用いられる変換モジュールは、複合機１０から機能サーバ３０へ送信されたデータに対するメディア変換処理だけでなく、機能サーバ３０から複合機１０へ送信されるデータに対するメディア変換処理をも行うことができるため、両者間の一方向にデータが送信されるサービスだけでなく、双方向でデータがやりとりされるサービスについても、複合機１０側で提供を受けることができる。また、同図ｓ２５０２，ｓ２５１２にて入出力用変換モジュールがロードされている場合に、データ変換が行われるため、一方向に対するデータのみ変換を要する場合にも適用できる。
【０２８４】
また、複合機１０は、図１２におけるｓ３１４，ｓ３１６にて機能サーバ３０からパラメータ要求を受けたタイミングで、ユーザにパラメータを指定させることができ、そのパラメータを機能サーバ３０へ送信することで、以降のサービスの提供を受けることができるようになる。
【０２８５】
また、このとき、パラメータ要求と共に機能サーバ３０から送信されるサービスＩ／Ｆ情報３６は、図３３，図３４のサービスＩ／Ｆ情報変換処理により機能サーバ３０が複合機１０の有する入出力デバイスに対応する内容に変換されたものであるため、はじめから複合機１０の有する入出力デバイスで利用可能なサービスについてのパラメータを指定させることができる。
【０２８６】
また、図３３のｓ２２１６〜ｓ２２２４や、図３４のｓ２２３２〜ｓ２２４０のように、例えば、スキャナの解像度などサービスで入出力に必要な能力が制限される場合など、サービスＩ／Ｆ情報３６に代用設定項目を設けることで、あらかじめ複合機１０側で選択できるパラメータを制限できる。また、サービスＩ／Ｆ情報３６に代用設定項目がなくとも、入出力変換モジュールに代用設定項目があれば、その設定項目により複合機１０側で選択できるパラメータを決定することが可能となる。
【０２８７】
［変形例］
以上、本発明の実施の形態について説明したが、本発明は、上記実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の形態をとり得ることはいうまでもない。
【０２８８】
例えば、上記実施形態においては、本発明における画像処理装置として、複合機１０を適用した構成を例示したが、機能サーバ３０により提供されるサービスを受けて機能を実現できる画像処理装置であれば、複合機以外の装置として、例えば、プリンタ装置，スキャナ装置，ファクシミリ装置などに適用することも可能である。
【０２８９】
また、上記実施形態において、機能サーバ３０が、パラメータ要求指令をサービスＩ／Ｆ情報３６と共に送信する構成を例示した。しかし、このように、パラメータ要求指令およびサービスＩ／Ｆ情報３６を送信する処理については、機能サーバ３０と別体の装置（単体の装置または連携して動作する複数の装置）により実現するように構成してもよい。
【０２９０】
また、上記実施形態において、複合機１０は、ディレクトリサーバ２０のサービス定義情報記憶部２４に記憶されている複数のサービス定義情報２５のうち、まずトップのサービス定義情報２５を受信してカテゴリを選択し、次に、その選択したカテゴリに対応するサービス定義情報２５を受信してサービスを選択するようにしているが、これに限ったものではない。すなわち、ディレクトリサーバ２０のサービス定義情報記憶部２４に記憶されている複数の（例えばすべての）サービス定義情報２５を一度に受信するようにしてもよい。
【０２９１】
また、サービスＩ／Ｆ情報３６が設定を要求するパラメータとしては、上記実施形態で例示したもの（解像度等）に限らず、サービスの内容に応じて様々なものが考えられる。例えば、モノクロ／カラーの選択、トナーの濃さ（印刷濃度）、音声のボリューム（音量）等が挙げられる。
【０２９２】
また、上記実施形態のサービス提供システムでは、複合機１０、ディレクトリサーバ２０及び機能サーバ３０をそれぞれ１台ずつ備えた構成を例示しているが、このような構成はあくまでも説明を容易にするための構成例にすぎず、本発明のサービス提供システムは、これ以外にも様々な構成をとることが可能である。すなわち、本発明のサービス提供システムにおいて、複合機１０は複数設けられていてもよい。具体的には、複数の複合機１０が、共通のディレクトリサーバ２０からのサービス定義情報２５を受信し、共通の機能サーバ３０にサービスを要求するようにすることができる。
【０２９３】
また、本発明のサービス提供システムにおいて、ディレクトリサーバ２０は複数設けられていてもよい。具体的には、例えば、トップのサービス定義情報２５を送信するディレクトリサーバ２０と、各カテゴリのサービス定義情報２５を送信するディレクトリサーバ２０とを、別々のサーバで構成することも可能である。また、ディレクトリサーバ２０を設けずに、直接機能サーバ３０にサービスからサービスの提供を受ける構成であってもよい。
【０２９４】
また、本発明の画像システムにおいて、機能サーバ３０は複数設けられていてもよい。具体的には、例えば、サービスＩ／Ｆ情報３６を送信する機能サーバ３０と、サービスを実行する機能サーバ３０とを、別々のサーバで構成することも可能である。また、サービスを実行する機能サーバ３０についても、例えば、セッション処理を実行する機能サーバ３０と、ジョブ処理を実行する機能サーバ３０とを、別々のサーバで構成することも可能である。一方、例えば、複数種類のサービスについて、サービスＡを実行する機能サーバ３０、サービスＢ〜Ｄを実行する機能サーバ３０、サービスＥ，Ｆを実行する機能サーバ３０、というように、複数の機能サーバ３０が各自のサービスを実行するというように構成することもできる。この場合、サービスＩ／Ｆ情報３６は、例えば、サービスを実行する機能サーバ３０がそのサービスに対応するサービスＩ／Ｆ情報３６を送信するようにしてもよく、サービスを実行する機能サーバ３０とは別の機能サーバ３０が送信するようにしてもよい。また、変換処理は、機能サーバ３０と別体の装置により実行されるように構成してもよく、また、ディレクトリサーバ２０により実行されるように構成してもよい。
【０２９５】
また、上記実施形態においては、図３０におけるｓ２１４２〜ｓ２１５４にて変換モジュールを読み出すにあたり、読み出すべき変換モジュールが複数あった場合に、仕様情報に規定された優先順位に基づいて絞り込むように構成されたものを例示した。しかし、この変換モジュールを絞り込むための条件として、他の条件を採用してもよい。例えば、提供するサービスの種類との関係で最も適した変換モジュールをデータテーブルや数式に基づいて決定して選択する構成などが考えられる。
【０２９６】
また、上記実施形態においては、図４１のデバイス優先度設定処理が複合機１０側で実行されるように構成されたものを例示した。しかし、この処理については、機能サーバ３０側で行われる処理とすることもでき、これによれば、機能サーバ３０側から優先度を設定することができるようになる。なお、この場合、同図ｓ２５０２では複合機１０から送信された仕様情報に基づいて優先度選択画面を表示すると共に、同図ｓ２５３０では、この時点において指定されている優先順位を機能サーバ３０側に保存するように構成するとよい。そして、こうして通知された優先順位を機能サーバ３０側で記憶（管理）するように構成するとよい。
【０２９７】
また、ディレクトリサーバ２０またはディレクトリサーバ２０の一部構成要素，および，機能サーバ３０または機能サーバ３０の一部構成要素が、それ以外の構成要素からなる装置と連携して動作する単一の装置として構成されていてもよい。
【０２９８】
また、ディレクトリサーバ２０（またはディレクトリサーバ２０の一部構成要素）や機能サーバ３０（または機能サーバ３０の一部構成要素）が、本サービス提供システムを構成する複合機１０に備えられた構成としてもよい。
【０２９９】
［本発明との対応関係］
以上説明した実施形態において、複合機１０が本発明におけるデバイスであり、機能サーバ３０が本発明におけるサービス提供手段および指定要求手段であり、仕様情報が本発明における保有機能情報であり、優先順位が本発明における決定条件である。
【０３００】
また、図２２におけるｓ８３０，図２４における１０１８〜ｓ１０２２，図２５におけるｓ１１１８〜ｓ１１２２は本発明における提供実行手段であり、図３０におけるｓ２１４２〜ｓ２１５４は本発明における機能判定手段であり、同図ｓ２１６４〜ｓ２１６８は本発明における機能決定手段であり、図４０におけるｓ２５０４，ｓ２５１４は、本発明における形式変換処理であり、図４１におけるｓ２５０２〜ｓ２５２０は本発明における条件指定手段である。
【０３０１】
また、図１２におけるｓ３１８は本発明におけるサービス指定手段であり、図１７におけるｓ４０８，図１８におけるｓ５０８は本発明におけるサービス要求手段であり、同図ｓ４２８，ｓ５２８は本発明におけるサービス実現手段であり、図１２におけるｓ３５４，ｓ３１２は本発明における情報通知手段であり、図４１のデバイス優先度設定処理を複合機１０側で実行する処理とした場合におけるｓ２５３０は本発明における条件通知手段である。
そして、図２３におけるｓ９０４は本発明における指定要求手段である。
【図面の簡単な説明】
【０３０２】
【図１】サービス提供システムの構成を示すブロック図
【図２】操作部の構成を示す図
【図３】サービス定義情報における各タグの定義付けを示す図
【図４】サービスＩ／Ｆ情報における各タグの定義付けを示す図
【図５】複合機処理複合機による複合機処理を示すフローチャート
【図６】方法選択画面を示す図
【図７】サービス定義情報のデータ構造を示す図（１）
【図８】サービス選択用画面
【図９】サービス定義情報のデータ構造を示す図（２）
【図１０】複合機によるセッション処理を示すフローチャート（１／２）
【図１１】複合機によるセッション処理を示すフローチャート（２／２）
【図１２】複合機によるＵＩジョブを示すフローチャート（１／２）
【図１３】サービスＩ／Ｆ情報
【図１４】パラメータ入力画面を示す図
【図１５】仕様情報のデータ構造を示す図
【図１６】仕様情報におけるタグの定義付けを示す図
【図１７】複合機による入力ジョブを示すフローチャート
【図１８】複合機による出力ジョブを示すフローチャート
【図１９】機能サーバによる機能サーバ処理を示すフローチャート（１／２）
【図２０】機能サーバによる機能サーバ処理を示すフローチャート（２／２）
【図２１】機能サーバによるセッション処理を示すフローチャート（１／２）
【図２２】機能サーバによるセッション処理を示すフローチャート（２／２）
【図２３】機能サーバによるＵＩジョブを示すフローチャート
【図２４】機能サーバによるスキャンジョブを示すフローチャート
【図２５】機能サーバによる印刷ジョブを示すフローチャート
【図２６】機能サーバによる情報変換処理を示すフローチャート
【図２７】変換モジュールの構成を示す図
【図２８】機能サーバによる変換モジュール初期化処理を示すフローチャート
【図２９】サービス入出力メディア情報を示す図
【図３０】機能サーバによる変換モジュールの選択処理を示すフローチャート
【図３１】変換対応情報を示す図
【図３２】機能サーバによる仕様情報変換処理を示すフローチャート
【図３３】機能サーバによるサービスＩ／Ｆ情報変換処理を示すフローチャート（１／２）
【図３４】機能サーバによるサービスＩ／Ｆ情報変換処理を示すフローチャート（２／２）
【図３５】サービスＩ／Ｆ情報における「Ｖａｌｕｅ＿Ｎａｍｅ」の値の定義付けを示す図
【図３６】機能サーバによるサービスパラメータ変換処理を示すフローチャート（１／２）
【図３７】機能サーバによるサービスパラメータ変換処理を示すフローチャート（２／２）
【図３８】機能サーバによる複合機パラメータ変換処理を示すフローチャート（１／２）
【図３９】機能サーバによる複合機パラメータ変換処理を示すフローチャート（２／２）
【図４０】機能サーバによる入力／出力メディア変換処理を示すフローチャート
【図４１】機能サーバによるデバイス優先度設定処理を示すフローチャート
【図４２】優先度選択画面を示す図
【符号の説明】
【０３０３】
１０…複合機、１１…制御部、１２…操作部、１３…読取部、１４…記録部、１５…通信部、１６…記憶部、１７…音入力部、１８…音出力部、２０…ディレクトリサーバ、２１…制御部、２２…通信部、２３…記憶部、２４…サービス定義情報記憶部、２５…サービス定義情報、３０…機能サーバ、３１…制御部、３２…通信部、３３…記憶部、３４…サービスＩ／Ｆ情報記憶部、３５…サービスソフト記憶部、３６…サービスＩ／Ｆ情報、３７…サービスソフトウェア、４１…コピーキー、４２…スキャナキー、４３…ＦＡＸキー、４４…サービスキー、４５…設定キー、４６…方向キー、４７…方向キー，４８…方向キー、４９…方向キー、５０…ＯＫキー、５１…キャンセルキー、５２…ディスプレイ。
【図１】
2006135693.tif 000003
【図２】
2006135693.tif 000004
【図３】
2006135693.tif 000005
【図４】
2006135693.tif 000006
【図５】
2006135693.tif 000007
【図６】
2006135693.tif 000008
【図７】
2006135693.tif 000009
【図８】
2006135693.tif 000010
【図９】
2006135693.tif 000011
【図１０】
2006135693.tif 000012
【図１１】
2006135693.tif 000013
【図１２】
2006135693.tif 000014
【図１３】
2006135693.tif 000015
【図１４】
2006135693.tif 000016
【図１５】
2006135693.tif 000017
【図１６】
2006135693.tif 000018
【図１７】
2006135693.tif 000019
【図１８】
2006135693.tif 000020
【図１９】
2006135693.tif 000021
【図２０】
2006135693.tif 000022
【図２１】
2006135693.tif 000023
【図２２】
2006135693.tif 000024
【図２３】
2006135693.tif 000025
【図２４】
2006135693.tif 000026
【図２５】
2006135693.tif 000027
【図２６】
2006135693.tif 000028
【図２７】
2006135693.tif 000029
【図２８】
2006135693.tif 000030
【図２９】
2006135693.tif 000031
【図３０】
2006135693.tif 000032
【図３１】
2006135693.tif 000033
【図３２】
2006135693.tif 000034
【図３３】
2006135693.tif 000035
【図３４】
2006135693.tif 000036
【図３５】
2006135693.tif 000037
【図３６】
2006135693.tif 000038
【図３７】
2006135693.tif 000039
【図３８】
2006135693.tif 000040
【図３９】
2006135693.tif 000041
【図４０】
2006135693.tif 000042
【図４１】
2006135693.tif 000043
【図４２】
2006135693.tif 000044