(57)【要約】      （修正有）【課題】構造化文書と参照情報を１つのデータ列に結合する際に、受信側の情報処理装置の能力に合わせて結合する方式を切り替えて行えるようにする。【解決手段】構造化文書と参照情報を１つのデータ列に結合する結合方式を複数持ち、受信側の情報処理装置の能力に合わせて結合する方式の切り替えを行い、前記構造化文書と前記構造化文書内の参照情報の実体とを結合してデータ列を送信する構造化文書送信装置と、自分の処理能力を前記構造化文書送信装置に通知し、自分の能力にあった前記データ列を受信する構造化文書受信装置から構成される。【選択図】図１
2007018156.tif 000002
【特許請求の範囲】
【請求項１】
ある情報処理装置において構造化文書と構造化文書内の参照情報の実体とを一つのデータ列に結合し、結合したデータ列を別の情報処理装置へ転送して処理を行わせる情報処理システムにおいて、
前記データ列への結合方式を複数持ち、送信先の能力に合った方式で構造化文書と構造化文書内の参照情報の実体とを結合して送信する構造化文書送信装置と
自分の処理能力を前記構造化文書送信処理装置に通知し、自分の能力に合ったデータ列で構造化文書と構造化文書内の参照情報の実体とを受信し処理を行う構造化文書受信装置から構成されることを特徴とする情報処理システム。
【請求項２】
請求項１において、
前記構造化文書送信装置は、
前記構造化文書受信装置より通知される処理能力を取得する受信能力取得手段と、
前記構造化文書内の参照情報の実体を取得し特定の結合方式で前記構造化文書と一つのデータ列に結合する参照情報結合手段と、
前記参照情報結合手段で用いられる結合方式を、前記受信能力取得手段により取得した処理能力に応じて決定する結合方式決定手段とを備えることを特徴とする構造化文書送信装置。
【請求項３】
請求項２において、
前記構造化文書内で参照情報が記述されている構造位置を指定する構造位置指定手段と、
前記構造化文書を解析し前記構造位置指定手段によって指定された構造位置が構造化文書内に記述されているかどうかを検出する構造位置検出手段と、
前記構造位置検出手段によって構造位置を検出した際に、構造位置へのアドレスと構造位置に記述されている参照情報の実体へのアドレスとを収集し参照可能なようにまとめておく参照情報収集手段とを備え、
前記参照情報結合手段は、前記参照情報収集手段によって収集された情報より、参照情報の実体と前記構造化文書とを一つのデータ列に結合することを特徴とする構造化文書送信装置。
【請求項４】
請求項３において、
前記参照情報収集手段は、収集した参照情報を前記構造化文書のヘッダ情報として保存する手段を有し、
以降結合処理が繰り返される場合には、前記参照情報結合手段は、前記参照情報収集手段により保存されたヘッダ情報を解析するだけで、前記構造化文書と前記構造化文書内で参照されている情報とを一つのデータ列に結合することを特徴とする情報処理装置。
【請求項５】
請求項１、請求項２において、
前記構造化文書受信装置は、処理可能なデータ形式を優先度順に並べて通知する手段を有し、
前記結合方式決定手段は、
前記受信能力取得手段によって取得した処理可能なデータ形式の中から、前記構造化文書送信装置で対応しているデータ形式を前記優先度順に選択し、前記参照情報結合手段で用いられる結合方式として決定することを特徴とする情報処理装置。
【請求項６】
請求項１、請求項２において、
前記構造化文書受信装置は、前記データ列の処理を行うための記憶領域の大きさを通知する手段を有し、
前記結合方式決定手段は、
前記受信能力取得手段によって取得した前記構造化文書受信装置の記憶領域の大きさが一定サイズより小さい場合、
前記参照情報結合手段で用いられる結合方式として、前記構造化文書内の参照情報の実体を参照情報が記述されている位置に埋め込む方式に決定することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置に関する。
【背景技術】
【０００２】
画像データなど参照情報へのリンクを持つ構造化文書を情報処理装置間で転送して処理を行うシステムでは、構造化文書を他の情報処理装置に送信する際に、効率化を考えて構造化文書と参照情報を一つにまとめることがある。従来の技術では、構造化文書を送信するそれぞれの送信元で、予め決められた方式により構造化文書と参照情報を一つにまとめていた。
【０００３】
構造化文書と参照情報を一つにまとめる方式としては、参照情報をbase64エンコードして、構造化文書の参照している箇所に埋め込む方法がある。またW3CのMTOM(SOAP Message Transmission Optimization Mechanism)などでは、XML文書や参照情報をそれぞれ独立したパートとして一つのパッケージにまとめている。
又、従来例としては、例えば特許文献１をあげることが出来る。
【特許文献１】特開2002-175294号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
このような情報処理システムでは、受信側の情報処理装置の能力によっては、構造化文書と参照情報を一つに結合したデータ列を処理できない場合がある。
【０００５】
リソースが少ない情報処理装置では、受信したデータをすぐに処理し、処理した不要な受信データは破棄して次のデータを受信する。このような場合、受信されるデータは、処理が行われる順に到着することが望ましい。一般的に構造化文書の参照情報は、構造化文書が参照している場所で必要とされることが多い。ところがW3CのMTOMで行われているような結合方式は、XML文書や参照情報をそれぞれ独立したパートとしてまとめているため、構造化文書が参照している場所と参照情報の実体がはなればなれになっている。よって、リソースが少ない情報処理装置では、W3CのMTOMのような方式で結合されたデータ列では処理できない場合がある。
【０００６】
また、従来の方式では、送信側の情報処理装置は受信側の都合を考えずに予め決められた方式で構造化文書と参照情報を結合しているため、受信側が処理できないデータ列を送信してしまう可能性がある。
【０００７】
したがって、この発明の課題は、構造化文書と参照情報を1つのデータ列に結合する際に、受信側の情報処理装置の能力に合わせて結合する方式を切り替えて行えるようにすることにある。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために、本発明の請求項１記載の情報処理システムは、ある情報処理装置において構造化文書と構造化文書内の参照情報の実体とを一つのデータ列に結合し、結合したデータ列を別の情報処理装置へ転送して処理を行わせる情報処理システムにおいて、前記データ列への結合方式を複数持ち、送信先の能力に合った方式で構造化文書と構造化文書内の参照情報の実体とを結合して送信する構造化文書送信装置と自分の処理能力を前記構造化文書送信処理装置に通知し、自分の能力に合ったデータ列で構造化文書と構造化文書内の参照情報の実体とを受信し処理を行う構造化文書受信装置から構成されることを特徴とする。
【０００９】
本発明の請求項２記載の情報処理装置は、請求項１において、前記構造化文書送信装置は、前記構造化文書受信装置より通知される処理能力を取得する受信能力取得手段と、前記構造化文書内の参照情報の実体を取得し特定の結合方式で前記構造化文書と一つのデータ列に結合する参照情報結合手段と、前記参照情報結合手段で用いられる結合方式を、前記受信能力取得手段により取得した処理能力に応じて決定する結合方式決定手段とを備えることを特徴とする。
【００１０】
本発明の請求項３記載の情報処理装置は、請求項２において、前記構造化文書内で参照情報が記述されている構造位置を指定する構造位置指定手段と、前記構造化文書を解析し前記構造位置指定手段によって指定された構造位置が構造化文書内に記述されているかどうかを検出する構造位置検出手段と、前記構造位置検出手段によって構造位置を検出した際に、構造位置へのアドレスと構造位置に記述されている参照情報の実体へのアドレスとを収集し参照可能なようにまとめておく参照情報収集手段とを備え、前記参照情報結合手段は、前記参照情報収集手段によって収集された情報より、参照情報の実体と前記構造化文書とを一つのデータ列に結合することを特徴とする。
【００１１】
本発明の請求項４記載の情報処理装置は、請求項３において、前記参照情報収集手段は、収集した参照情報を前記構造化文書のヘッダ情報として保存する手段を有し、以降結合処理が繰り返される場合には、前記参照情報結合手段は、前記参照情報収集手段により保存されたヘッダ情報を解析するだけで、前記構造化文書と前記構造化文書内で参照されている情報とを一つのデータ列に結合することを特徴とする。
【００１２】
本発明の請求項５記載の情報処理装置は、請求項１、請求項２において、
前記構造化文書受信装置は、処理可能なデータ形式を優先度順に並べて通知する手段を有し、
前記結合方式決定手段は、
前記受信能力取得手段によって取得した処理可能なデータ形式の中から、前記構造化文書送信装置で対応しているデータ形式を前記優先度順に選択し、前記参照情報結合手段で用いられる結合方式として決定することを特徴とする。
【００１３】
本発明の請求項６記載の情報処理装置は、請求項１、請求項２において、
前記構造化文書受信装置は、前記データ列の処理を行うための記憶領域の大きさを通知する手段を有し、
前記結合方式決定手段は、
前記受信能力取得手段によって取得した前記構造化文書受信装置の記憶領域の大きさが一定サイズより小さい場合、
前記参照情報結合手段で用いられる結合方式として、前記構造化文書内の参照情報の実体を参照情報が記述されている位置に埋め込む方式に決定することを特徴とする。
【発明の効果】
【００１４】
以上説明したように、本発明によれば、構造化文書と参照情報を1つのデータ列に結合する際に、受信側の情報処理装置の能力に応じて結合方式を決定するため、受信側が処理できないデータ列を送信してしまうことがない。
【発明を実施するための最良の形態】
【００１５】
以下、図面を参照して、本発明における情報処理装置の実施例を説明する。本実施例では、本発明における情報処理装置として画像撮像装置を例に説明する。
【００１６】
図１は本発明の実施例にかかわる画像撮像装置を含むシステムの概要を示した構成図である。同図において、本発明にかかわる画像撮像装置（１０１）は、LAN（１０２）に接続されている。印刷処理装置（１０３）はLAN（１０２）のような通信路を介して画像撮像装置（１０１）と接続する。情報記録装置（１０４）もLAN（１０２）のような通信路を介して画像撮像装置（１０１）と接続する。ここで、印刷装置（１０３）は１ページ分の紙を印刷するのに必要な機能しか持っておらず、情報記録装置（１０４）に比べデータ処理を行うための記憶領域が非常に小さいものとする。LAN（１０２）は、WANやUSB回線など他の通信路でも置き換えることができる。
【００１７】
図２は本発明の実施例にかかわる画像撮像装置（１０１）の構成を示すブロック図である。同図において、画像撮像部（２０１）は、画像の撮像を行い撮像した画像をデジタルデータに変換するためのものである。画像処理部（２０４）は、画像撮像部（２０１）で撮像された画像を、プログラムに基づき編集するためのものである。ROM（２０２）は、画像処理部（２０４）で実行されるプログラムや各種固定データを格納するためのものである。RAM（２０３）は、SRAM,DRAM等で構成され、プログラム制御変数等を格納するためのものである。また、各種設定パラメータ、各種ワーク用バッファもRAM（２０３）に格納される。記憶部（２０５）は、メモリカード等で構成され、文書や撮像した画像などのファイルデータを格納するためのものである。LAN i/f（２０６）は、LAN（２０８）に接続するためのインタフェースである。USB i/f（２０７）は、USB（２０９）に接続するためのインタフェースである。ここで、ソフトウェア等で本発明を実現する場合などは、必ずしも図２の各ブロックを装置内に持っていなくてもよい。
【００１８】
図３は、画像撮像装置（１０１）で処理される文書データの一部を示した例である。同図に示したように、文書データはXMLで記述されている。同図では、参照情報としてimg要素のhref属性にexample.pngという画像ファイルがリンクされている。
【００１９】
以下、本実施例にかかわる画像撮像装置（１０１）が、構造化文書と参照情報を一つのデータ列に結合する際の動作に関して２つの実施例を説明する。
【実施例１】
【００２０】
まず、第一の実施例では、構造化文書と参照情報を一つのデータ列に結合する際に、結合したデータ列を受信する情報処理装置の能力にあわせて結合方式を切り替える例を示す。図７、図８は、第一の実施例にかかわる画像撮像装置（１０１）の動作を示すフローチャートである。以下、図７、図８のフローチャートに沿って第一の実施例の動作を説明する。
【００２１】
第一の実施例にかかわる画像撮像装置（１０１）では、予め、参照情報の実体が記述されている構造化文書の構造単位が指定される。画像撮像装置（１０１）は、構造化文書を解析し構造化文書内に指定された構造単位が記述されていないかどうかを確認する(S1001)。
【００２２】
指定された構造単位が構造化文書内に記述されている場合は、構造化文書を解析した結果の構造単位の先頭を指し示すアドレスと参照情報の実体のアドレスとを記録する(S1002)。
【００２３】
図６は、構造単位のアドレスと参照情報の実体のアドレスとを記録するテーブルを示した例である。参照情報の実体のアドレスは、ファイルパス名でもよいしファイルパスが記述されている属性名でもよい。
【００２４】
次に、結合したデータ列を受信する印刷処理装置（１０３）の能力を取得する。本実施例では、結合したデータ列を転送するプロトコルとしてhttpを使用している。まず、画像撮像装置（１０１）は印刷処理装置（１０３）に対し印刷要求を出す。すると、印刷処理装置（１０３）は画像撮像装置（１０１）に対して、印刷する構造化文書を要求するhttpリクエストを出す。画像撮像装置（１０１）はhttpリプライとして、構造化文書と参照情報を結合したデータ列を返す。このhttpプロトコルのやりとりにおいて、画像撮像装置（１０１）は印刷処理装置（１０３）の能力情報を取得する。
【００２５】
図１０にhttpリクエストのヘッダを示す。httpヘッダのAcceptフィールドには、印刷処理装置（１０３）で受信できるMIMEタイプが記述される。例えば、印刷処理装置（１０３）がXML文書の解釈しかできないのであればtext/xmlと記述する。pngも処理できるのであれば、text/xml, image/pngと記述する。ここでもし、印刷処理装置（１０３）自体はpngを処理できるが、XML内に埋め込まれた形式でないと処理できない場合はtext/xmlとだけ記述する。複数のMIMEタイプを受信できるのであれば複数のMIMEタイプを並べて記述する。最初に記述する方が優先度は高くなる。
【００２６】
画像撮像装置（１０１）は、httpヘッダのAcceptフィールドを確認し、Acceptフィールドの先頭から順に自分がサポートしているMIMEタイプを選択する。ここで、画像撮像装置（１０１）は、base64エンコーディングとMIME Multipart/Related処理をサポートしているものとする。図１０では、text/xmlがAcceptフィールドに記述されているためMIMEタイプとしてtext/xmlを選択する。画像撮像装置（１０１）は、text/xmlで送るために、参照情報を構造化文書内にbase64で埋め込んで一つのデータ列に結合する(S1102)。もしAcceptフィールドにtext/xml,image/pngと記述されていれば、画像撮像装置（１０１）は、参照情報のpng画像をbase64エンコードしてXML文書に埋め込まなくても印刷処理装置（１０３）で処理できると判断し、参照情報と構造化文書を独立したMIMEパートとしてMIME Multipart/Relatedで一つのデータ列に結合する(S1103)。
【００２７】
図４は、参照情報を構造化文書内に埋め込む方式で結合した結果を示した例である。
【００２８】
図３のimg要素のhref属性に記述されているexample.pngがbase64エンコードされて埋め込まれている。base64エンコードせずに、特殊な区切り文字列を使って直接example.pngのデータを埋め込む方法もある。図５は、参照情報と構造化文書を独立したパートとして結合した結果を示した例である。図３のimg要素のhref属性に記述されているexample.pngがMIMEの一つのパートとして構造化文書と結合されている。
【実施例２】
【００２９】
第二の実施例では、構造化文書と参照情報を一つのデータ列に結合する際に、構造化文書の参照情報の記述へのポインタを保存することで、後で再び構造化文書を解析しなくても結合処理ができるようにする例を示す。図９は、第二の実施例にかかわる画像撮像装置（１０１）の動作を示すフローチャートである。以下、図９のフローチャートに沿って第二の実施例の動作を説明する。
【００３０】
第二の実施例にかかわる画像撮像装置（１０１）でも、基本的に第一の実施例と同様に参照情報と構造化文書の結合処理を行う。ただし、結合処理を行った構造化文書の解析結果は、常に記憶領域上に保持することが出来ず一旦破棄しなければならない場合がある。そこで、(S1201)において構造化文書の解析結果を一旦破棄しなければならないと判断した場合、図６に示すような参照情報テーブルの構造単位へのアドレスを、構造化文書ファイル内の構造単位が記述されている位置のオフセットに書き換える(S1202)。書き換えた参照情報テーブルは後で利用できるように保存する。再び結合処理を行う場合には、保存した参照情報テーブルを読んで、構造化文書ファイルのオフセット部分に記述されている参照情報に対し結合処理を行う。
【００３１】
なお、以上のような動作は画像処理部（２０４）がROM（２０２）やRAM（２０３）に記憶したプログラムに基づいて実行するものであるが、本発明は、このようなプログラムがフレキシブルディスクやハードディスク、ＣＤ−ＲＯＭ、メモリカード等の各種記憶媒体に格納されていてもよい。
【００３２】
また、以上の実施例では、主に画像撮像装置を例に説明したが、本発明はこれに限らず、例えば、携帯電話機、ディスプレイ、ストレージ等のその他の周辺機器、あるいはコンピュータ等の汎用な情報処理装置でも同様に適用し得るものである。
【図面の簡単な説明】
【００３３】
【図１】本発明の実施例による情報処理装置を含むネットワークの構成を示す模式図である。
【図２】上記実施例による情報処理装置の構成の一部を示すブロック図である。
【図３】上記実施例による情報処理装置が扱う構造化文書の一部を示した例である。
【図４】上記実施例による情報処理装置が出力するデータ列の一部を示した例である。
【図５】上記実施例による情報処理装置が出力するデータ列の一部を示した例である。
【図６】上記実施例による情報処理装置が作成するテーブルの一部を示した例である。
【図７】本発明の第一の実施例による情報処理装置の動作を示すフローチャートである。
【図８】本発明の第一の実施例による情報処理装置の動作を示すフローチャートである。
【図９】本発明の第二の実施例による情報処理装置の動作を示すフローチャートである。
【図１０】上記実施例による情報処理装置間で交換されるメッセージの一部を示した例である。
【符号の説明】
【００３４】
１０１  画像撮像装置
１０２  ＬＡＮ
１０３  印刷処理装置
１０４  情報記録装置
２０１  画像撮像部
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  画像処理部
２０５  記憶部
２０６  ＬＡＮ  ｉ／ｆ
２０７  ＵＳＢ  ｉ／ｆ
２０８  ＬＡＮ
２０９  ＵＳＢ
【図１】
2007018156.tif 000003
【図２】
2007018156.tif 000004
【図３】
2007018156.tif 000005
【図４】
2007018156.tif 000006
【図５】
2007018156.tif 000007
【図６】
2007018156.tif 000008
【図７】
2007018156.tif 000009
【図８】
2007018156.tif 000010
【図９】
2007018156.tif 000011
【図１０】
2007018156.tif 000012