(57)【要約】【課題】クライアントのユーザの権限に応じて共有文書に書かれた情報を読めなくすることにより、サーバにおいて保持される構造化文書である共有文書の一部に対するアクセス制御を実現する。【解決手段】サーバ１において共有文書の一部である構造化文書におけるマスクオブジェクトを削除するとともに、クライアント２０のユーザの権限に応じ、構造化文書の各レイアウトオブジェクトを構成するマスクオブジェクトを発行し、サーバ１から受け取ったマスクオブジェクトが削除された共有文書データに追加する。これにより、クライアント２０のユーザの権限に応じて共有文書に書かれた情報を読めなくすることにより、共有文書の一部に対するアクセス制御を実現する。【選択図】        図１１
2008003687.tif 000002
【特許請求の範囲】
【請求項１】
構造化文書形式で符号化された共有文書データを格納し、各クライアントと接続されるサーバにおいて、
前記共有文書データの構造解析を行う構造解析手段と、
この構造解析手段による前記共有文書データの構造解析結果に基づいて、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトのコードストリームの位置と長さを特定する位置・長さ特定手段と、
この位置・長さ特定手段により位置と長さが特定された前記マスクオブジェクトのコードストリームを削除する削除手段と、
この削除手段により削除された前記マスクオブジェクトのコードストリームを参照するための参照情報を更新する更新手段と、
この更新手段により更新された前記共有文書データを、アクセス要求のあった前記クライアントに出力するデータ出力手段と、
を備えることを特徴とするサーバ。
【請求項２】
構造化文書形式で符号化された共有文書データを格納し、各クライアントと接続されるサーバにおいて、
前記共有文書データの構造解析を行う構造解析手段と、
この構造解析手段による前記共有文書データの構造解析結果に基づいて、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトのコードストリームの位置と長さを特定する位置・長さ特定手段と、
この位置・長さ特定手段により位置と長さが特定された前記マスクオブジェクトのコードストリームの少なくとも長さを正常でない値に更新する更新手段と、
この更新手段により更新された前記共有文書データを、アクセス要求のあった前記クライアントに出力するデータ出力手段と、
を備えることを特徴とするサーバ。
【請求項３】
前記更新手段により更新される前記参照情報は、前記マスクオブジェクトのコードストリームに対するファイルの先頭からの位置および前記マスクオブジェクトのコードストリームの長さである、
ことを特徴とする請求項１または２記載のサーバ。
【請求項４】
前記構造化文書形式で符号化された共有文書データが、国際標準ＩＳ１５４４４−６で規定されるファイルである、
ことを特徴とする請求項１ないし３のいずれか一記載のサーバ。
【請求項５】
前記構造化文書形式で符号化された共有文書データが、ＰＤＦ（Portable Document Format）で規定されるファイルである、
ことを特徴とする請求項１ないし３のいずれか一記載のサーバ。
【請求項６】
サーバと接続され、当該サーバに格納されている構造化文書形式で符号化された共有文書データを閲覧するクライアントにおいて、
ユーザの権限を認証するユーザ権限認証手段と、
このユーザ権限認証手段によって認証された前記ユーザの権限に応じ、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトを発行するマスク発行手段と、
前記サーバから受け取った前記マスクオブジェクトのコードストリームが削除された前記共有文書データの構造解析を行う構造解析手段と、
この構造解析手段による前記共有文書データの構造解析結果に基づいて、前記マスク発行手段により発行された前記マスクオブジェクトのコードストリームを、前記サーバから受け取った前記マスクオブジェクトのコードストリームが削除された前記共有文書データに追加する追加手段と、
この追加手段により追加された前記マスクオブジェクトのコードストリームを参照するための参照情報を更新する更新手段と、
この更新手段により更新された前記共有文書データを出力するデータ出力手段と、
を備えることを特徴とするクライアント。
【請求項７】
サーバと接続され、当該サーバに格納されている構造化文書形式で符号化された共有文書データを閲覧するクライアントにおいて、
ユーザの権限を認証するユーザ権限認証手段と、
このユーザ権限認証手段によって認証された前記ユーザの権限に応じ、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトを発行するマスク発行手段と、
前記サーバから受け取った前記共有文書データの構造解析を行う構造解析手段と、
この構造解析手段による前記共有文書データの構造解析結果に基づいて、前記マスク発行手段により発行された前記マスクオブジェクトのコードストリームを、前記サーバから受け取った前記共有文書データの前記マスクオブジェクトと入れ替える入替手段と、
この入替手段により入れ替えられた前記マスクオブジェクトのコードストリームを参照するための参照情報を更新する更新手段と、
この更新手段により更新された前記共有文書データを出力するデータ出力手段と、
を備えることを特徴とするクライアント。
【請求項８】
前記更新手段により更新される前記参照情報は、前記マスクオブジェクトのコードストリームに対するファイルの先頭からの位置および前記マスクオブジェクトのコードストリームの長さである、
ことを特徴とする請求項６または７記載のクライアント。
【請求項９】
追加または入れ替えられた前記マスクオブジェクトに対応した領域の符号が可視化される、
ことを特徴とする請求項６または７記載のクライアント。
【請求項１０】
追加または入れ替えられた前記マスクオブジェクトは、前記共有文書データにおけるページ毎に、独立にアクセス制御する、
ことを特徴とする請求項６または７記載のクライアント。
【請求項１１】
追加または入れ替えられた前記マスクオブジェクトは、前記共有文書データにおける各位置に対して独立にアクセス制御する、
ことを特徴とする請求項６または７記載のクライアント。
【請求項１２】
追加または入れ替えられた前記マスクオブジェクトは、前記共有文書データにおける画素の深さ方向に独立にアクセス制御する、
ことを特徴とする請求項６または７記載のクライアント。
【請求項１３】
追加または入れ替えられた前記マスクオブジェクトは、アクセスのＯＮ／ＯＦＦを制御する２値情報に従って符号化されている、
ことを特徴とする請求項６または７記載のクライアント。
【請求項１４】
追加または入れ替えられた前記マスクオブジェクトは、アクセスを段階的に制御する多値情報に従って符号化されている、
ことを特徴とする請求項６または７記載のクライアント。
【請求項１５】
追加または入れ替えられた前記マスクオブジェクトは、アクセスを段階的に制御する国際標準ＩＳ１５４４４−１により符号化されている、
ことを特徴とする請求項１４記載のクライアント。
【請求項１６】
追加または入れ替えられた前記マスクオブジェクトは、解像度毎に独立にアクセス制御する、
ことを特徴とする請求項１５記載のクライアント。
【請求項１７】
追加または入れ替えられた前記マスクオブジェクトは、原画に書かれている色毎に独立にアクセス制御する、
ことを特徴とする請求項１５記載のクライアント。
【請求項１８】
追加または入れ替えられた前記マスクオブジェクトは、原画の位置に対して独立にアクセス制御する、
ことを特徴とする請求項１５記載のクライアント。
【請求項１９】
追加または入れ替えられた前記マスクオブジェクトをタイル分割し、タイル毎に独立にアクセス制御する、
ことを特徴とする請求項１８記載のクライアント。
【請求項２０】
追加または入れ替えられた前記マスクオブジェクトのウェーブレット変換係数をプレシンクト分割し、プレシンクト毎に独立にアクセス制御する、
ことを特徴とする請求項１８記載のクライアント。
【請求項２１】
追加または入れ替えられた前記マスクオブジェクトは、画素の深さ方向に独立にアクセス制御する、
ことを特徴とする請求項１５記載のクライアント。
【請求項２２】
追加または入れ替えられた前記マスクオブジェクトは、ビットプレーン毎に独立にアクセス制御する、
ことを特徴とする請求項２１記載のクライアント。
【請求項２３】
追加または入れ替えられた前記マスクオブジェクトは、サブビットプレーン毎に独立にアクセス制御する、
ことを特徴とする請求項２１記載のクライアント。
【請求項２４】
構造化文書形式で符号化された共有文書データを格納して各クライアントと接続されるサーバを構成するコンピュータを制御するプログラムであって、
前記共有文書データの構造解析を行う構造解析機能と、
この構造解析機能による前記共有文書データの構造解析結果に基づいて、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトのコードストリームの位置と長さを特定する位置・長さ特定機能と、
この位置・長さ特定機能により位置と長さが特定された前記マスクオブジェクトのコードストリームを削除する削除機能と、
この削除機能により削除された前記マスクオブジェクトのコードストリームを参照するための参照情報を更新する更新機能と、
この更新機能により更新された前記共有文書データを、アクセス要求のあった前記クライアントに出力するデータ出力機能と、
を前記コンピュータに実行させることを特徴とするプログラム。
【請求項２５】
構造化文書形式で符号化された共有文書データを格納して各クライアントと接続されるサーバを構成するコンピュータを制御するプログラムであって、
前記共有文書データの構造解析を行う構造解析機能と、
この構造解析機能による前記共有文書データの構造解析結果に基づいて、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトのコードストリームの位置と長さを特定する位置・長さ特定機能と、
この位置・長さ特定機能により位置と長さが特定された前記マスクオブジェクトのコードストリームの少なくとも長さを正常でない値に更新する更新機能と、
この更新機能により更新された前記共有文書データを、アクセス要求のあった前記クライアントに出力するデータ出力機能と、
を前記コンピュータに実行させることを特徴とするプログラム。
【請求項２６】
サーバと接続されて当該サーバに格納されている構造化文書形式で符号化された共有文書データを閲覧するクライアントを構成するコンピュータを制御するプログラムであって、
ユーザの権限を認証するユーザ権限認証機能と、
このユーザ権限認証機能によって認証された前記ユーザの権限に応じ、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトを発行するマスク発行機能と、
前記サーバから受け取った前記マスクオブジェクトのコードストリームが削除された前記共有文書データの構造解析を行う構造解析機能と、
この構造解析機能による前記共有文書データの構造解析結果に基づいて、前記マスク発行機能により発行された前記マスクオブジェクトのコードストリームを、前記サーバから受け取った前記マスクオブジェクトのコードストリームが削除された前記共有文書データに追加する追加機能と、
この追加機能により追加された前記マスクオブジェクトのコードストリームを参照するための参照情報を更新する更新機能と、
この更新機能により更新された前記共有文書データを出力するデータ出力機能と、
を前記コンピュータに実行させることを特徴とするプログラム。
【請求項２７】
サーバと接続されて当該サーバに格納されている構造化文書形式で符号化された共有文書データを閲覧するクライアントを構成するコンピュータを制御するプログラムであって、
ユーザの権限を認証するユーザ権限認証機能と、
このユーザ権限認証機能によって認証された前記ユーザの権限に応じ、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトを発行するマスク発行機能と、
前記サーバから受け取った前記共有文書データの構造解析を行う構造解析機能と、
この構造解析機能による前記共有文書データの構造解析結果に基づいて、前記マスク発行機能により発行された前記マスクオブジェクトのコードストリームを、前記サーバから受け取った前記共有文書データの前記マスクオブジェクトと入れ替える入替機能と、
この入替機能により入れ替えられた前記マスクオブジェクトのコードストリームを参照するための参照情報を更新する更新機能と、
この更新機能により更新された前記共有文書データを出力するデータ出力機能と、
を前記コンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、構造化文書形式で符号化された共有文書データを格納するサーバ、クライアントおよびプログラムに関する。
【背景技術】
【０００２】
複数のユーザで共有されている文書を、ユーザの組織役割や権限に応じてアクセス制御する共有資源のアクセス制御技術としては、ＵＮＩＸ（登録商標）等の汎用ＯＳで利用されている技術がある（例えば、非特許文献１参照）。このＵＮＩＸ（登録商標）で利用されているアクセス制御技術は、ＵＮＩＸ（登録商標）上に存在するファイルについて、
１）所有者
２）所有者が属するグループに含まれる他のユーザ
３）それ以外のユーザ
上記分類のユーザごとに、
１）実行
２）読み込み
３）書込み
上記各種操作についての制限を設けることができるという利点がある。そのため、このようなアクセス制御技術は、ファイル管理システムでのアクセス制御に利用されている。
【０００３】
【非特許文献１】P96，“9.2 属性”，The UNIX Super Text ［上］，山口和紀監修、技術評論社
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した技術はあくまでもファイル単位でアクセス制御をする技術に留まっている。したがって、近年のオフィス環境で多く見られるグループでの文書共著、分担翻訳、文書の分担作成、住宅地図作成等におけるファイルのように、１つのファイルが多数ページあるいは大規模ファイルである場合においては、各担当者が自分の担当するページまたは位置（領域）に対してアクセス制御をする必要があっても、ファイル単位にしかアクセス制御できないという制約があるため、上述した技術では大量ページや大規模画像の一部に対するアクセス制御ができず、ユーザの要望を満たすことはできない。
【０００５】
本発明は、上記に鑑みてなされたものであって、クライアントのユーザの権限に応じて共有文書に書かれた情報を読めなくすることにより、サーバにおいて保持される構造化文書である共有文書の一部に対するアクセス制御を実現することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、請求項１にかかる発明は、構造化文書形式で符号化された共有文書データを格納し、各クライアントと接続されるサーバにおいて、前記共有文書データの構造解析を行う構造解析手段と、この構造解析手段による前記共有文書データの構造解析結果に基づいて、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトのコードストリームの位置と長さを特定する位置・長さ特定手段と、この位置・長さ特定手段により位置と長さが特定された前記マスクオブジェクトのコードストリームを削除する削除手段と、この削除手段により削除された前記マスクオブジェクトのコードストリームを参照するための参照情報を更新する更新手段と、この更新手段により更新された前記共有文書データを、アクセス要求のあった前記クライアントに出力するデータ出力手段と、を備える。
【０００７】
また、請求項２にかかる発明は、構造化文書形式で符号化された共有文書データを格納し、各クライアントと接続されるサーバにおいて、前記共有文書データの構造解析を行う構造解析手段と、この構造解析手段による前記共有文書データの構造解析結果に基づいて、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトのコードストリームの位置と長さを特定する位置・長さ特定手段と、この位置・長さ特定手段により位置と長さが特定された前記マスクオブジェクトのコードストリームの少なくとも長さを正常でない値に更新する更新手段と、この更新手段により更新された前記共有文書データを、アクセス要求のあった前記クライアントに出力するデータ出力手段と、を備える。
【０００８】
また、請求項３にかかる発明は、請求項１または２記載のサーバにおいて、前記更新手段により更新される前記参照情報は、前記マスクオブジェクトのコードストリームに対するファイルの先頭からの位置および前記マスクオブジェクトのコードストリームの長さである。
【０００９】
また、請求項４にかかる発明は、請求項１ないし３のいずれか一記載のサーバにおいて、前記構造化文書形式で符号化された共有文書データが、国際標準ＩＳ１５４４４−６で規定されるファイルである。
【００１０】
また、請求項５にかかる発明は、請求項１ないし３のいずれか一記載のサーバにおいて、前記構造化文書形式で符号化された共有文書データが、ＰＤＦ（Portable Document Format）で規定されるファイルである。
【００１１】
また、請求項６にかかる発明は、サーバと接続され、当該サーバに格納されている構造化文書形式で符号化された共有文書データを閲覧するクライアントにおいて、ユーザの権限を認証するユーザ権限認証手段と、このユーザ権限認証手段によって認証された前記ユーザの権限に応じ、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトを発行するマスク発行手段と、前記サーバから受け取った前記マスクオブジェクトのコードストリームが削除された前記共有文書データの構造解析を行う構造解析手段と、この構造解析手段による前記共有文書データの構造解析結果に基づいて、前記マスク発行手段により発行された前記マスクオブジェクトのコードストリームを、前記サーバから受け取った前記マスクオブジェクトのコードストリームが削除された前記共有文書データに追加する追加手段と、この追加手段により追加された前記マスクオブジェクトのコードストリームを参照するための参照情報を更新する更新手段と、この更新手段により更新された前記共有文書データを出力するデータ出力手段と、を備える。
【００１２】
また、請求項７にかかる発明は、サーバと接続され、当該サーバに格納されている構造化文書形式で符号化された共有文書データを閲覧するクライアントにおいて、ユーザの権限を認証するユーザ権限認証手段と、このユーザ権限認証手段によって認証された前記ユーザの権限に応じ、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトを発行するマスク発行手段と、前記サーバから受け取った前記共有文書データの構造解析を行う構造解析手段と、この構造解析手段による前記共有文書データの構造解析結果に基づいて、前記マスク発行手段により発行された前記マスクオブジェクトのコードストリームを、前記サーバから受け取った前記共有文書データの前記マスクオブジェクトと入れ替える入替手段と、この入替手段により入れ替えられた前記マスクオブジェクトのコードストリームを参照するための参照情報を更新する更新手段と、この更新手段により更新された前記共有文書データを出力するデータ出力手段と、を備える。
【００１３】
また、請求項８にかかる発明は、請求項６または７記載のクライアントにおいて、前記更新手段により更新される前記参照情報は、前記マスクオブジェクトのコードストリームに対するファイルの先頭からの位置および前記マスクオブジェクトのコードストリームの長さである。
【００１４】
また、請求項９にかかる発明は、請求項６または７記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトに対応した領域の符号が可視化される。
【００１５】
また、請求項１０にかかる発明は、請求項６または７記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトは、前記共有文書データにおけるページ毎に、独立にアクセス制御する。
【００１６】
また、請求項１１にかかる発明は、請求項６または７記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトは、前記共有文書データにおける各位置に対して独立にアクセス制御する。
【００１７】
また、請求項１２にかかる発明は、請求項６または７記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトは、前記共有文書データにおける画素の深さ方向に独立にアクセス制御する。
【００１８】
また、請求項１３にかかる発明は、請求項６または７記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトは、アクセスのＯＮ／ＯＦＦを制御する２値情報に従って符号化されている。
【００１９】
また、請求項１４にかかる発明は、請求項６または７記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトは、アクセスを段階的に制御する多値情報に従って符号化されている。
【００２０】
また、請求項１５にかかる発明は、請求項１４記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトは、アクセスを段階的に制御する国際標準ＩＳ１５４４４−１により符号化されている。
【００２１】
また、請求項１６にかかる発明は、請求項１５記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトは、解像度毎に独立にアクセス制御する。
【００２２】
また、請求項１７にかかる発明は、請求項１５記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトは、原画に書かれている色毎に独立にアクセス制御する。
【００２３】
また、請求項１８にかかる発明は、請求項１５記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトは、原画の位置に対して独立にアクセス制御する。
【００２４】
また、請求項１９にかかる発明は、請求項１８記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトをタイル分割し、タイル毎に独立にアクセス制御する。
【００２５】
また、請求項２０にかかる発明は、請求項１８記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトのウェーブレット変換係数をプレシンクト分割し、プレシンクト毎に独立にアクセス制御する。
【００２６】
また、請求項２１にかかる発明は、請求項１５記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトは、画素の深さ方向に独立にアクセス制御する。
【００２７】
また、請求項２２にかかる発明は、請求項２１記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトは、ビットプレーン毎に独立にアクセス制御する。
【００２８】
また、請求項２３にかかる発明は、請求項２１記載のクライアントにおいて、追加または入れ替えられた前記マスクオブジェクトは、サブビットプレーン毎に独立にアクセス制御する。
【００２９】
また、請求項２４にかかる発明は、構造化文書形式で符号化された共有文書データを格納して各クライアントと接続されるサーバを構成するコンピュータを制御するプログラムであって、前記共有文書データの構造解析を行う構造解析機能と、この構造解析機能による前記共有文書データの構造解析結果に基づいて、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトのコードストリームの位置と長さを特定する位置・長さ特定機能と、この位置・長さ特定機能により位置と長さが特定された前記マスクオブジェクトのコードストリームを削除する削除機能と、この削除機能により削除された前記マスクオブジェクトのコードストリームを参照するための参照情報を更新する更新機能と、この更新機能により更新された前記共有文書データを、アクセス要求のあった前記クライアントに出力するデータ出力機能と、を前記コンピュータに実行させる。
【００３０】
また、請求項２５にかかる発明は、構造化文書形式で符号化された共有文書データを格納して各クライアントと接続されるサーバを構成するコンピュータを制御するプログラムであって、前記共有文書データの構造解析を行う構造解析機能と、この構造解析機能による前記共有文書データの構造解析結果に基づいて、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトのコードストリームの位置と長さを特定する位置・長さ特定機能と、この位置・長さ特定機能により位置と長さが特定された前記マスクオブジェクトのコードストリームの少なくとも長さを正常でない値に更新する更新機能と、この更新機能により更新された前記共有文書データを、アクセス要求のあった前記クライアントに出力するデータ出力機能と、を前記コンピュータに実行させる。
【００３１】
また、請求項２６にかかる発明は、サーバと接続されて当該サーバに格納されている構造化文書形式で符号化された共有文書データを閲覧するクライアントを構成するコンピュータを制御するプログラムであって、ユーザの権限を認証するユーザ権限認証機能と、このユーザ権限認証機能によって認証された前記ユーザの権限に応じ、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトを発行するマスク発行機能と、前記サーバから受け取った前記マスクオブジェクトのコードストリームが削除された前記共有文書データの構造解析を行う構造解析機能と、この構造解析機能による前記共有文書データの構造解析結果に基づいて、前記マスク発行機能により発行された前記マスクオブジェクトのコードストリームを、前記サーバから受け取った前記マスクオブジェクトのコードストリームが削除された前記共有文書データに追加する追加機能と、この追加機能により追加された前記マスクオブジェクトのコードストリームを参照するための参照情報を更新する更新機能と、この更新機能により更新された前記共有文書データを出力するデータ出力機能と、を前記コンピュータに実行させる。
【００３２】
また、請求項２７にかかる発明は、サーバと接続されて当該サーバに格納されている構造化文書形式で符号化された共有文書データを閲覧するクライアントを構成するコンピュータを制御するプログラムであって、ユーザの権限を認証するユーザ権限認証機能と、このユーザ権限認証機能によって認証された前記ユーザの権限に応じ、構造化文書の各レイアウトオブジェクトを構成するオブジェクトの１つであるマスクオブジェクトを発行するマスク発行機能と、前記サーバから受け取った前記共有文書データの構造解析を行う構造解析機能と、この構造解析機能による前記共有文書データの構造解析結果に基づいて、前記マスク発行機能により発行された前記マスクオブジェクトのコードストリームを、前記サーバから受け取った前記共有文書データの前記マスクオブジェクトと入れ替える入替機能と、この入替機能により入れ替えられた前記マスクオブジェクトのコードストリームを参照するための参照情報を更新する更新機能と、この更新機能により更新された前記共有文書データを出力するデータ出力機能と、を前記コンピュータに実行させる。
【発明の効果】
【００３３】
本発明によれば、サーバにおいて共有文書の一部である構造化文書におけるマスクオブジェクトを削除するとともに、クライアントのユーザの権限に応じ、構造化文書の各レイアウトオブジェクトを構成するマスクオブジェクトを発行し、サーバから受け取ったマスクオブジェクトが削除された共有文書データに追加することにより、クライアントのユーザの権限に応じて共有文書に書かれた情報を読めなくすることにより、共有文書の一部に対するアクセス制御を実現することができる、という効果を奏する。
【００３４】
本発明によれば、サーバにおいて共有文書の一部である構造化文書におけるマスクオブジェクトのコードストリームの少なくとも長さを正常でない値に更新するとともに、クライアントのユーザの権限に応じ、構造化文書の各レイアウトオブジェクトを構成するマスクオブジェクトを発行し、サーバから受け取ったマスクオブジェクトが削除された共有文書データに追加することにより、クライアントのユーザの権限に応じて共有文書に書かれた情報を読めなくすることにより、共有文書の一部に対するアクセス制御を実現することができる、という効果を奏する。
【００３５】
また、本発明によれば、クライアントのユーザの権限に応じ、構造化文書の各レイアウトオブジェクトを構成するマスクオブジェクトを発行し、サーバから受け取った共有文書データのマスクオブジェクトと入れ替えることにより、クライアントのユーザの権限に応じて共有文書に書かれた情報を読めなくすることにより、共有文書の一部に対するアクセス制御を実現することができる、という効果を奏する。
【発明を実施するための最良の形態】
【００３６】
最初に、本発明の前提となる「階層符号化アルゴリズム」及び「離散ウェーブレット変換に基づく符号化・復号化アルゴリズム」の概要について説明する。なお、「離散ウェーブレット変換に基づく符号化・復号化アルゴリズム」の代表例が「JPEG2000アルゴリズム」である。
【００３７】
図１は、離散ウェーブレット変換に基づく符号化方式の基本となる階層符号化アルゴリズムを実現するシステムの機能ブロック図である。このシステムは、画像圧縮手段として機能するものであって、色空間変換・逆変換部１０１、２次元ウェーブレット変換・逆変換部１０２、量子化・逆量子化部１０３、エントロピー符号化・復号化部１０４、タグ処理部１０５の各機能ブロックにより構成されている。
【００３８】
このシステムが従来のＪＰＥＧアルゴリズムと比較して最も大きく異なる点の一つは変換方式である。ＪＰＥＧでは離散コサイン変換（ＤＣＴ：Discrete Cosine Transform）を用いているのに対し、この階層符号化アルゴリズムでは、２次元ウェーブレット変換・逆変換部１０２において、離散ウェーブレット変換（ＤＷＴ：Discrete Wavelet Transform）を用いている。ＤＷＴはＤＣＴに比べて、高圧縮領域における画質が良いという長所を有し、この点が、ＪＰＥＧの後継アルゴリズムであるＪＰＥＧ２０００でＤＷＴが採用された大きな理由の一つとなっている。
【００３９】
また、他の大きな相違点は、この階層符号化アルゴリズムでは、システムの最終段に符号形成を行うために、タグ処理部１０５の機能ブロックが追加されていることである。このタグ処理部１０５で、画像の圧縮動作時には圧縮データが符号列データとして生成され、伸長動作時には伸長に必要な符号列データの解釈が行われる。そして、符号列データによって、ＪＰＥＧ２０００は様々な便利な機能を実現できるようになった。例えば、ブロック・ベースでのＤＷＴにおけるオクターブ分割に対応した任意の階層（デコンポジションレベル）で、静止画像の圧縮伸長動作を自由に停止させることができるようになる（後述する図３参照）。また、一つのファイルから低解像度画像（縮小画像）を取り出したり、画像の一部（タイリング画像）を取り出すことができるようになる。
【００４０】
原画像の入出力部分には、色空間変換・逆変換部１０１が接続される場合が多い。例えば、原色系のＲ（赤）／Ｇ（緑）／Ｂ（青）の各コンポーネントからなるＲＧＢ表色系や、補色系のＹ（黄）／Ｍ（マゼンタ）／Ｃ（シアン）の各コンポーネントからなるＹＭＣ表色系から、ＹＵＶあるいはＹＣｂＣｒ表色系への変換又は逆変換を行う部分がこれに相当する。
【００４１】
次に、ＪＰＥＧ２０００アルゴリズムについて説明する。カラー画像は、一般に、図２に示すように、原画像の各コンポーネント１１１（ここではＲＧＢ原色系）が、矩形をした領域によって分割される。この分割された矩形領域は、一般にブロックあるいはタイルと呼ばれているものであるが、ＪＰＥＧ２０００では、タイルと呼ぶことが一般的であるため、以下、このような分割された矩形領域をタイルと記述することにする（図２の例では、各コンポーネント１１１が縦横４×４、合計１６個の矩形のタイル１１２に分割されている）。このような個々のタイル１１２（図２の例で、Ｒ００，Ｒ０１，…，Ｒ１５／Ｇ００，Ｇ０１，…，Ｇ１５／Ｂ００，Ｂ０１，…，Ｂ１５）が、画像データの圧縮伸長プロセスを実行する際の基本単位となる。従って、画像データの圧縮伸長動作は、コンポーネント毎、また、タイル１１２毎に、独立に行われる。
【００４２】
画像データの符号化時には、各コンポーネント１１１の各タイル１１２のデータが、図１の色空間変換・逆変換部１０１に入力され、色空間変換を施された後、２次元ウェーブレット変換・逆変換部１０２で２次元ウェーブレット変換（順変換）が施されて、周波数帯に空間分割される。
【００４３】
図３には、デコンポジションレベル数が３の場合の、各デコンポジションレベルにおけるサブバンドを示している。即ち、原画像のタイル分割によって得られたタイル原画像（０ＬＬ）（デコンポジションレベル０）に対して、２次元ウェーブレット変換を施し、デコンポジションレベル１に示すサブバンド（１ＬＬ，１ＨＬ，１ＬＨ，１ＨＨ）を分離する。そして引き続き、この階層における低周波成分１ＬＬに対して、２次元ウェーブレット変換を施し、デコンポジションレベル２に示すサブバンド（２ＬＬ，２ＨＬ，２ＬＨ，２ＨＨ）を分離する。順次同様に、低周波成分２ＬＬに対しても、２次元ウェーブレット変換を施し、デコンポジションレベル３に示すサブバンド（３ＬＬ，３ＨＬ，３ＬＨ，３ＨＨ）を分離する。図３では、各デコンポジションレベルにおいて符号化の対象となるサブバンドを、網掛けで表してある。例えば、デコンポジションレベル数を３としたとき、網掛けで示したサブバンド（３ＨＬ，３ＬＨ，３ＨＨ，２ＨＬ，２ＬＨ，２ＨＨ，１ＨＬ，１ＬＨ，１ＨＨ）が符号化対象となり、３ＬＬサブバンドは符号化されない。
【００４４】
次いで、指定した符号化の順番で符号化の対象となるビットが定められ、図１に示す量子化・逆量子化部１０３で対象ビット周辺のビットからコンテキストが生成される。
【００４５】
この量子化の処理が終わったウェーブレット係数は、個々のサブバンド毎に、「プレシンクト」と呼ばれる重複しない矩形に分割される。これは、インプリメンテーションでメモリを効率的に使うために導入されたものである。図４に示したように、一つのプレシンクトは、空間的に一致した３つの矩形領域からなっている。更に、個々のプレシンクトは、重複しない矩形の「コード・ブロック」に分けられる。これは、エントロピー・コーディングを行う際の基本単位となる。
【００４６】
ウェーブレット変換後の係数値は、そのまま量子化し符号化することも可能であるが、ＪＰＥＧ２０００では符号化効率を上げるために、係数値を「ビットプレーン」単位に分解し、画素あるいはコード・ブロック毎に「ビットプレーン」に順位付けを行うことができる。
【００４７】
ここで、図５はビットプレーンに順位付けする手順の一例を示す説明図である。図５に示すように、この例は、原画像（３２×３２画素）を１６×１６画素のタイル４つで分割した場合で、デコンポジションレベル１のプレシンクトとコード・ブロックの大きさは、各々８×８画素と４×４画素としている。プレシンクトとコード・ブロックの番号は、ラスター順に付けられており、この例では、プレシンクトが番号０から３まで、コード・ブロックが番号０から３まで割り当てられている。タイル境界外に対する画素拡張にはミラーリング法を使い、可逆（５，３）フィルタでウェーブレット変換を行い、デコンポジションレベル１のウェーブレット係数値を求めている。
【００４８】
また、タイル０／プレシンクト３／コード・ブロック３について、代表的な「レイヤ」構成の概念の一例を示す説明図も図５に併せて示す。変換後のコード・ブロックは、サブバンド（１ＬＬ，１ＨＬ，１ＬＨ，１ＨＨ）に分割され、各サブバンドにはウェーブレット係数値が割り当てられている。
【００４９】
レイヤの構造は、ウェーブレット係数値を横方向（ビットプレーン方向）から見ると理解し易い。１つのレイヤは任意の数のビットプレーンから構成される。この例では、レイヤ０，１，２，３は、各々、１，３，１，３のビットプレーンから成っている。そして、ＬＳＢ（Least Significant Bit：最下位ビット）に近いビットプレーンを含むレイヤ程、先に量子化の対象となり、逆に、ＭＳＢ（Most Significant Bit：最上位ビット）に近いレイヤは最後まで量子化されずに残ることになる。ＬＳＢに近いレイヤから破棄する方法はトランケーションと呼ばれ、量子化率を細かく制御することが可能である。
【００５０】
図１に示すエントロピー符号化・復号化部１０４では、コンテキストと対象ビットから確率推定によって、各コンポーネント１１１のタイル１１２に対する符号化を行う。こうして、原画像の全てのコンポーネント１１１について、タイル１１２単位で符号化処理が行われる。最後にタグ処理部１０５は、エントロピー符号化・復号化部１０４からの全符号化データを１本の符号列データに結合するとともに、それにタグを付加する処理を行う。
【００５１】
図６には、この符号列データの１フレーム分の概略構成を示している。この符号列データの先頭と各タイルの符号データ（bit stream）の先頭にはヘッダ（メインヘッダ（Main header）、タイル境界位置情報等であるタイルパートヘッダ（tile part header））と呼ばれるタグ情報が付加され、その後に、各タイルの符号化データが続く。なお、メインヘッダ（Main header）には、符号化パラメータや量子化パラメータが記述されている。そして、符号列データの終端には、再びタグ（end of codestream）が置かれる。また、図７は、符号化されたウェーブレット係数値が収容されたパケットをサブバンド毎に表わしたコードストリーム構造を示すものである。図７に示すように、タイルによる分割処理を行っても、あるいはタイルによる分割処理を行わなくても、同様のパケット列構造を持つことになる。
【００５２】
一方、符号化データの復号化時には、画像データの符号化時とは逆に、各コンポーネント１１１の各タイル１１２の符号列データから画像データを生成する。この場合、タグ処理部１０５は、外部より入力した符号列データに付加されたタグ情報を解釈し、符号列データを各コンポーネント１１１の各タイル１１２の符号列データに分解し、その各コンポーネント１１１の各タイル１１２の符号列データ毎に復号化処理（伸長処理）を行う。このとき、符号列データ内のタグ情報に基づく順番で復号化の対象となるビットの位置が定められるとともに、量子化・逆量子化部１０３で、その対象ビット位置の周辺ビット（既に復号化を終えている）の並びからコンテキストが生成される。エントロピー符号化・復号化部１０４で、このコンテキストと符号列データから確率推定によって復号化を行い、対象ビットを生成し、それを対象ビットの位置に書き込む。このようにして復号化されたデータは周波数帯域毎に空間分割されているため、これを２次元ウェーブレット変換・逆変換部１０２で２次元ウェーブレット逆変換を行うことにより、画像データの各コンポーネントの各タイルが復元される。復元されたデータは色空間変換・逆変換部１０１によって元の表色系の画像データに変換される。
【００５３】
以上が、「離散ウェーブレット変換に基づく符号化・復号化アルゴリズム」の概要である。
【００５４】
次に、ＪＰＥＧ２０００のPart６“Compound image file Format”について説明する。ＪＰＥＧ２０００のPart６は、絵や文字などの異なる特性を含む複合的な画像に特化した規格であり、非特許文献１に示す国際標準ＩＳ−１５４４４−６で規定されている。このようなＪＰＥＧ２０００のPart６の中で定められたＪＰＥＧ２０００データのファイル拡張子は、「ＪＰＭ」である。このような構造化文書の一例であるＪＰＭ（JPEG2000 Multi Layer）ファイルは、図８に示すように、コードストリームの位置を示すオフセットを記入するObject Header Box２０１、参照されるコードストリームＢｏｘ２０２及びその他のＢｏｘ２０３から構成されている。このＪＰＭファイルは、そのファイル内でデータを参照するようにしたり、ＢＯＸ情報の順番を規定したり、オフセットによる位置指定ではなく参照する番号により参照できるようにしている。また、図８に示す所定のＢＯＸについては、そのレベルや範囲を維持していれば、その出現回数や出現する順番が変動しても標準互換のＪＰＭファイルとして機能すると規定されている。一例としては、各レイアウトオブジェクト内のオブジェクトに対するコードストリームについては、構造化文書の論理構造を満たし、
１）文書サムネイル（図８中の符号２０３）以降
２）最上位レベルの位置
であれば任意の位置に置いて良いことが規定されている。
【００５５】
続いて、本発明の実施の形態について詳細に説明する。図９は、本発明が適用されるアクセス制御システムを示すシステム構成図である。図９に示すように、アクセス制御システムは、スキャン文書を構造化文書形式で符号化したＪＰＭファイルで格納するサーバコンピュータ（以下、サーバ）１に対して、秘書、配達人、宛先人などが使用するパーソナルコンピュータ（以下、クライアント）２０がネットワーク９を介して接続された構成となっている。
【００５６】
ここで、図１０は本実施の形態のサーバ１およびクライアント２０のハードウェア構成を示すブロック図である。サーバ１およびクライアント２０は、例えばパーソナルコンピュータを主体に構成されている。図１０に示すように、このようなサーバ１およびクライアント２０は、コンピュータの主要部であって各部を集中的に制御するＣＰＵ（Central Processing Unit）２を備えている。このＣＰＵ２には、ＢＩＯＳなどを記憶した読出し専用メモリであるＲＯＭ（Read Only Memory）３と、各種データを書換え可能に記憶するＲＡＭ（Random Access Memory）４とがバス５で接続されている。
【００５７】
さらにバス５には、各種のプログラム等を格納するＨＤＤ（Hard Disk Drive）６と、配布されたプログラムであるコンピュータソフトウェアを読み取るための機構としてＣＤ（Compact Disc）−ＲＯＭ７を読み取るＣＤ−ＲＯＭドライブ８と、ネットワーク９を介して外部の他のコンピュータ等と通信により情報を伝達するための通信制御装置１０と、ＣＰＵ２に対する各種命令や情報入力するためのキーボードやマウスなどの入力装置１１と、処理経過や結果等を表示するＣＲＴ（Cathode Ray Tube）、ＬＣＤ（Liquid Crystal Display）などの表示装置１２とが、図示しないＩ／Ｏを介して接続されている。
【００５８】
なお、サーバ１のＨＤＤ６には、各種文書をスキャンして構造化文書形式で符号化したＪＰＭファイルが記憶される。
【００５９】
ＲＡＭ４は、各種データを書換え可能に記憶する性質を有していることから、ＣＰＵ２の作業エリアとして機能してバッファ等の役割を果たす。
【００６０】
図１０に示すＣＤ−ＲＯＭ７は、この発明の記憶媒体を実施するものであり、ＯＳ（Operating System）や各種のプログラムが記憶されている。ＣＰＵ２は、ＣＤ−ＲＯＭ７に記憶されているプログラムをＣＤ−ＲＯＭドライブ８で読み取り、ＨＤＤ６にインストールする。
【００６１】
なお、記憶媒体としては、ＣＤ−ＲＯＭ７のみならず、ＤＶＤなどの各種の光ディスク、各種光磁気ディスク、フレキシブルディスクなどの各種磁気ディスク等、半導体メモリ等の各種方式のメディアを用いることができる。また、通信制御装置１０を介してインターネットなどからプログラムをダウンロードし、ＨＤＤ６にインストールするようにしてもよい。この場合に、送信側のサーバでプログラムを記憶している記憶装置も、この発明の記憶媒体である。なお、プログラムは、所定のＯＳ（Operating System）上で動作するものであってもよいし、その場合に後述の各種処理の一部の実行をＯＳに肩代わりさせるものであってもよいし、所定のアプリケーションソフトやＯＳなどを構成する一群のプログラムファイルの一部として含まれているものであってもよい。
【００６２】
このシステム全体の動作を制御するＣＰＵ２は、このシステムの主記憶として使用されるＨＤＤ６上にロードされたプログラムに基づいて各種処理を実行する。
【００６３】
次に、サーバ１のＨＤＤ６にインストールされている各種のプログラムがＣＰＵ２に実行させる機能のうち、本実施の形態のサーバ１が備える特長的な機能について説明する。
【００６４】
まず、アクセス制御システムにおける処理動作について簡単に説明する。ここでは、図１１に示すように、組織がスキャン担当部門、秘書や配達人、宛先人になっている状況を想定している。図１１に示すように、外部から宛先人に対して手紙が来ると、スキャン担当部門によってその手紙がスキャンされ、構造化文書形式で符号化したＪＰＭファイルでサーバ１に記憶される。次に、スキャン担当部門は、手紙が来ていることを宛先人に対して通知する。このシステムでは、宛先人に対してメールを配達する秘書や配達人が使用しているクライアント２０に対してメール（共有スキャン文書）が来ていることを通知する。このときに、秘書や配達人に共有スキャン文書の全ての内容が見えてしまうと、メール本文も見えることになってしまう。このようにメール本文が宛先人以外の人間に見えてしまうとセキュリティおよびプライバシーの面で問題となる。そこで、本実施の形態においては、共有スキャン文書に対して図１１に示すような役割毎のマスクをかけることで、秘書や配達人が使用しているクライアント２０においては、宛先人や差出人が記載されているヘッダ部分しか表示できないように制御する。すなわち、マスクに対応した部分の情報が可視化されることになる。
【００６５】
秘書や配達人は、マスクによってメール（共有スキャン文書）の差出人と宛先人の部分しか見ることが出来ないが、宛先人にメールが来ていることを通知する点では、この情報のみで良いことがわかる。これによって、秘書や配達人は、宛先人にメールが来ていることを通知する。
【００６６】
一方、宛先人は、秘書や配達人のように差出人と宛先人のみの情報だけ見えれば良いというわけにはいかない。宛先人には、メール（共有スキャン文書）が全て見えなければならないため、マスクは全領域となり、宛先人が使用しているクライアント２０においては、図１１のようにメール（共有スキャン文書）の全てが見えるように制御する。
【００６７】
なお、本システムにおいては、メール（共有スキャン文書）が直接クライアントである秘書、配達人、宛先人に対して送信されるものではなく、サーバ１に記憶されている状態である。メール（共有スキャン文書）が来たことの通知だけを秘書や配達人、宛先人に送信する。そして、通知を受けた秘書や配達人、宛先人は一定のプロトコルによってサーバ１にあるメール（共有スキャン文書）を見に行くという形態をとってもよい。ＳＭＴＰ（Send Mail Transfer Protocol）のようにメールの本体自身を宛先人に送るプロトコルでも良いが、クライアントサーバ形式のプロトコルでは、アクセスが発生したときに共有スキャン文書を送る。このように構成とすることで、クライアントが必要な時にアクセスが生じるため、同じ役割をもった複数の秘書や配達人に同報する際に発生するトラフィックを分散させることができる。さらにＪＰＩＰ（JPEG2000 Interactivity Tools，APIs and Protocols）であればクライアント２０の表示領域に関連した部分符号のみをアクセスするように構成することができるため、ネットワーク９のトラフィックを減少させることができる。
【００６８】
ところで、本実施の形態においては、アクセスを制御するマスクはアクセスを段階的に制御する多値情報（例えば、国際標準ＩＳ１５４４４−１（ＪＰＥＧ２０００基本方式））により符号化されている。また、マスクがＪＰＥＧ２０００基本方式により符号化されている場合、ページ毎、横及び縦の領域毎、解像度毎、原画に書かれている色毎、原画の位置に対して独立にアクセス制御することができる。原画の位置に対して独立にアクセス制御する場合には、アクセスを制御するマスクをタイル分割してタイル毎に独立にアクセス制御するか、または、ウェーブレット変換係数をプレシンクト分割してプレシンクト毎に独立に、あるいはこれらの組み合わせでアクセス制御するようにすればよい。
【００６９】
また、マスクがＪＰＥＧ２０００基本方式により符号化されている場合、アクセスを制御するマスクは画素の深さ方向に独立にアクセス制御することも可能である。より具体的には、アクセスを制御するマスクは、ビットプレーン毎に独立にアクセス制御するか、もしくは、サブビットプレーン毎に独立にアクセス制御することが可能である。
【００７０】
なお、アクセスを制御するマスクはアクセスを段階的に制御する多値情報に限るものではなく、アクセスのＯＮ／ＯＦＦを制御する２値情報に従って符号化されているものであっても良い。
【００７１】
以上、概要を説明したが、このような処理を行うには、サーバ１、秘書や配達人が使用しているクライアント２０、宛先人が使用しているクライアント２０といった３つの装置でそれぞれ何らかの処理をさせる必要がある。そこで、３つの装置で実行される下記に示す本発明の４点のポイントについて順に説明する。
１）マスクオブジェクトの削除
２）マスクオブジェクトの追加
３）マスクオブジェクトの入れ替え
４）ユーザの役割ごとに固有なマスクオブジェクトの発行
【００７２】
「マスクオブジェクトの削除」は、サーバ１で行われる処理である。図１２は、サーバ１の「マスクオブジェクトの削除」にかかる機能構成を示すブロック図である。図１２に示すように、サーバ１は、データを読み込むデータ読込手段３１と、符号化されたデータの構造解析を行う構造解析手段３２と、マスクのコードストリームの位置と長さを特定する位置・長さ特定手段３３と、マスクのコードストリームを削除する削除手段３４と、マスクのコードストリームを参照するために位置と長さを記録している部分を更新する更新手段３５と、データを出力するデータ出力手段３６と、を備えている。なお、マスクのコードストリームを削除する削除手段３４は必ずしも必須構成要件ではなく、更新手段３５により同等の効果を得ることも可能である。
【００７３】
構造化文書形式において符号化されたマスクオブジェクトは、レンダリングの際に対応する画素に対してレンダリングする値を前景部分で示す値とするか、あるいは背景部分で示す値とするかを切り替える機能を持つ。図１２に示すサーバ１では、図１３に示す手順でマスクオブジェクトが削除される。
【００７４】
まず、符号化されたデータを読み込むと（ステップＳ１）、符号化されたデータの構造解析を行い（ステップＳ２）、構造解析結果に基づいてマスクに該当するコードストリームの位置と長さを特定する（ステップＳ３）。このマスクは、文書全体あるいは該当するページ内に１つとは限らず、一般的には複数存在するのが通例である。
【００７５】
続いて、位置と長さが特定されたマスクのコードストリームを削除し（ステップＳ４）、各レイアウトオブジェクトに存在するマスクを参照するために位置と長さを記録している部分を更新する（ステップＳ５）。コードストリームの位置は“OFFSET”、コードストリームの長さは“LENGTH”で決定される。なお、LENGTH＝０とするだけでも目的とする動作は得られるので、OFFSET値は必ずしも更新しなければならないわけではない。また、ステップＳ４の動作を行わずに、ステップＳ５でLENGTH＝０とするだけでもマスクオブジェクトを削除する動作は可能である。すなわち、削除手段３４でマスクのコードストリームを削除することなく、更新手段３５が、マスクオブジェクトのコードストリームの少なくとも長さ“LENGTH”を正常でない値（例えば、LENGTH＝０）に更新するものであっても良い。
【００７６】
こうして得られたマスクが削除されたデータは、ステップＳ６においてデータ出力される。
【００７７】
以上が、サーバ１で行われる「マスクオブジェクトの削除」の処理の説明である。
【００７８】
次いで、「マスクオブジェクトの追加」および「マスクオブジェクトの入れ替え」について説明する。「マスクオブジェクトの追加」および「マスクオブジェクトの入れ替え」は、クライアント２０で行われる処理である。図１４は、クライアント２０の「マスクオブジェクトの追加」および「マスクオブジェクトの入れ替え」にかかる機能構成を示すブロック図である。図１４に示すように、クライアント２０は、データを読み込むデータ読込手段５１と、符号化されたデータの構造解析を行う構造解析手段５２と、マスクのコードストリームを追加または入れ替えする追加／入れ替え手段５３と、マスクのコードストリームを参照している情報を更新する更新手段５４と、データを出力するデータ出力手段５５と、を備えている。
【００７９】
図１４に示すクライアント２０では、図１５に示す手順でマスクオブジェクトが追加または入れ替えられる。
【００８０】
まず、符号化されたデータを読み込むと（ステップＳ１１）、符号化されたデータの構造解析を行い、マスクを参照しているヘッダ情報の位置を確認する（ステップＳ１２）。
【００８１】
次いで、役割ごとのマスクに対するコードストリームの追加または入れ替えを行い（ステップＳ１３）、追加または入れ替えを行ったマスクのコードストリームを参照している情報を更新する（ステップＳ１４）。
【００８２】
この関係は既にサーバ１でマスクの削除を行ったときと逆の概念であり、図１６に示すように、マスクが削除された文書に対して役割毎のマスクを追加または入れ替えることにより、マスクに対応した部分の情報が可視化される。その様子を、図１６の（ａ）では２次元の文書上で示し、１次元の符号上での対応を図１６の（ｂ）に示している。図１６の（ｂ）に示すように、１次元の符号上のコードストリームの位置は“OFFSET”、コードストリームの長さは“LENGTH”で決定されている。
【００８３】
「ユーザの役割ごとに固有なマスクオブジェクトの発行」は、クライアント２０で行われる処理である。ここでは、秘書や配達人、宛先人が使用しているクライアント２０にインストールされているアプリケーションを起動する際に、ログイン画面でパスワードを入力し、認証が行われた後、マスクが割り当てられる。
【００８４】
図１７は、クライアント２０の「ユーザの役割ごとに固有なマスクオブジェクトの発行」にかかる機能構成を示すブロック図である。図１７に示すように、クライアント２０は、正規ユーザであることを認証するユーザ認証手段４１と、認証手段４２と、マスク発行手段４３と、を備えている。
【００８５】
認証手段４２は、ユーザ権限認証手段として機能するものであって、サーバ１に記憶されているメール（共有スキャン文書）を表示するためのマスクの制御をするために、ユーザの組織における役割、ユーザの名称、ユーザの権限などを認証する。
【００８６】
マスク発行手段４３は、認証手段４２におけるユーザの組織役割、名称、権限などの認証結果に基づいて、マスクの発行を制御する。例えば、ユーザが秘書や配達人であるクライアント２０ならば差出人、宛先人の部分しか表示できないようにマスクを制御したり、ユーザが宛先人であるクライアント２０ならば全ての部分が見えるようにマスクを制御するといった属性（役職）に応じた処理をさせる。図１８にその手順を示す。
【００８７】
まず、正規ユーザであることを認証し（ステップＳ２１）、ユーザの組織役割、名称権限を認証する（ステップＳ２２）。最後に、ユーザの組織役割、名称、権限に従った特定のマスクを発行する（ステップＳ２３）。
【００８８】
ここで、図１９を参照し、サーバ１及び２つのクライアント２０で構成されるアクセス制御システムの動作を説明する。
【００８９】
図１９に示すように、サーバ１側では、サービス開始後、文書の読み込み待ち状態になる（ステップＳ１０１）。スキャン担当部門によって文書画像が読み込まれ、全ての文書の読み込み処理が終了したことをチェックすると（ステップＳ１０２のＹｅｓ）、構造化文書形式で圧縮符号化を行った後（ステップＳ１０３）、マスクオブジェクトの削除を行う（ステップＳ１０４）。
【００９０】
この操作にあたっては構造解析手段３２がステップＳ１０３で作成したデータの構造解析を行い、そこに書かれているヘッダ情報から位置・長さ特定手段３３に従い、位置と長さを特定し、削除手段３４でそのマスクオブジェクトを削除する。なお、上記説明ではマスクオブジェクトの削除で説明したが、長さを示すパラメータを０にするだけでマスクオブジェクトのコードストリーム自体は削除しないやり方でも問題は無く、全て本発明の範囲内であることは言うまでもない。
【００９１】
次に、サーバ１側では、受信待機状態にしておくとともに、クライアント２０への通知を行い（ステップＳ１０５）、ステップＳ１０２に戻り、次の文書に対しても同様にステップＳ１０３〜ステップＳ１０５の動作を行う。そして、サーバ１は、クライアント２０からの通知の受信に待機する（ステップＳ１０６）。なお、ステップＳ１０２において全文書が終了したら、次の文書の読み込み待ち（ステップＳ１０１）に移行し、待機することは言うまでもない。
【００９２】
一方、秘書や配達人が使用しているクライアント２０側では、ログインすると図１７で示したように、ユーザの組織役割、名称、権限などの認証結果に基づくマスクが割り当てられる（ステップＳ２０１）。具体的には、図１７に示すように、まず組織の中で予め登録された正規ユーザであることを認証するユーザ認証手段４１によって認証された後、そのユーザの組織役割、名称、権限を認証手段４２で認証する。例えば、組織役割及び名称が、
秘書課    山田    マスク１
として登録してあるクライアント２０である場合において、「山田」本人がログインした時には正規ユーザとして認証し、それ以外の場合は否認し、マスク発行手段４３が「マスク１」をそのユーザ宛てに割り当てる。なお、「マスク１」はユーザ毎に違ったものでも良いし、同じ組織役割やグループによって共通のマスクでも良いことはいうまでもない。
【００９３】
なお、本実施の形態では各クライアント２０内部でローカルにマスクを割り当てる形式で説明するが、ネットワーク９上に存在する共有サーバ（図示せず）で組織全体の観点から各ユーザの役割、権限を識別し、それに対応したマスクを発行する形式であっても本発明の範囲に含まれることは言うまでも無い。
【００９４】
この状態で着信待ち状態で待機し、サーバ１側からのクライアント２０への通知に対応して着信通知が行われると（ステップＳ２０２）、全文書について終了するまで（ステップＳ２０３のＹｅｓ）、サーバ１から取得したデータとステップＳ２０１で割り当てられたマスクをマージする（ステップＳ２０４）。
【００９５】
マージ処理は、図１６の（ａ）の２次元の文書上で示すように、該当するページの左上（原点）から主走査方向、副走査方向のオフセット（ｘ、ｙ）位置に、マスクを入れる操作である。より具体的には、データ読込手段３１がステップＳ２０１において割り当てられたマスクとサーバ１側のステップＳ１０４において「マスクが削除されたデータ」とを読み込む。次に、構造解析手段５２が、マスクが削除されたデータの構造解析を行い、マスクのコードストリームを追加してよい位置（先頭番地  OFFSET）を特定すると、追加／入れ替え手段５３に従ってLENGTHで示される長さの割り当てられたマスクを「マスクが削除されたデータ」に追加する。次に、追加したマスクデータを参照させるため、上記（Ｘ，Ｙ）の位置にレンダリングされるレイアウトオブジェクトを定義し、そこで追加したマスクを参照する様に更新手段５４により、OFFSET，LENGTHを記入することにより、追加された役割毎のマスクの参照ができるようにし、データ出力手段５５によりファイル出力を行う。
【００９６】
なお、上述の説明ではマスクをマージする方式でステップＳ２０４を説明したが、サーバ１側のステップＳ１０３での符号化方式が外部データを参照する機能も定義されている場合には、必ずしもマスクをマージすることなく、更新手段５４がこのユーザの役割毎のマスクをネットワーク９上で一意に特定できるＵＲＩ（Universal Resource Identifier）等の形式で更新すれば、追加／入れ替え手段５３を省略することができることは言うまでも無く、それらもすべて本発明の範囲内である。
【００９７】
こうして出来上がった構造化文書は、サーバ１側のステップＳ１０３で圧縮、符号化した構造と互換性をもつため、それに対応した伸長器で伸長、レンダリングすることにより（ステップＳ２０５のＮｏ，ステップＳ２０６）、クライアント２０上に描画される。
【００９８】
続くステップＳ２０７においては、ステップＳ２０６においてレンダリングされた画像に対しては、適宜パン、ズームなどのインタラクティブな操作がユーザにより実行される。ステップＳ２０６〜Ｓ２０７の操作は、秘書や配達人であるユーザが宛先人を理解できるまで繰り返される。なお、先に挙げたＪＰＩＰの場合は、ユーザのパン、ズームによって表示領域に対応する部分符号を随時サーバ１から取り寄せるため、ステップＳ２０６の伸長、レンダリングの操作が発生するが、サーバ１側のステップＳ１０３で作成したデータを全てアクセスするＦＴＰ（File Transfer Protocol）のような方式ではステップＳ２０６が不要となるが、それらも全て本発明の範囲内である。
【００９９】
ステップＳ２０５においてインタラクティブな操作を終了、すなわち秘書や配達人であるユーザが宛先人を理解すると（ステップＳ２０５のＹｅｓ）、ステップＳ２０８に進み、宛先人で指定されたユーザに通知する様にサーバ１に通知した後、ステップＳ２０３に戻り、全ての文書が終了したと判断するまで（ステップＳ２０３のＹｅｓ）、ステップＳ２０４〜Ｓ２０８を繰り返す。
【０１００】
一方、宛先人が使用しているクライアント２０側では、先の秘書や配達人と同様に、既にログインしていればステップＳ２０１において役割毎のマスクが割り当てられており、サーバ１より着信通知が到着し（ステップＳ２０２）、サーバ１から取得したデータとステップＳ２０１で割り当てられたマスクをマージする（ステップＳ２０４）。ここで、宛先人は文書の全体が見えるようマスクが設定されているため、前記秘書や配達人が使用しているクライアント２０上で描画された場合と異なり文書の内容全てが描画される。こうしてステップＳ２０７においてインタラクティブな操作の後、ステップＳ２０８においてサーバ１への通知（保存、廃棄など）が行われ、サーバ１は通知された操作を実行することにより、本発明の動作は終了する。
【０１０１】
このように本実施の形態によれば、サーバにおいて共有文書の一部である構造化文書におけるマスクオブジェクトを削除するとともに、クライアントのユーザの権限に応じ、構造化文書の各レイアウトオブジェクトを構成するマスクオブジェクトを発行し、サーバから受け取ったマスクオブジェクトが削除された共有文書データに追加することにより、クライアントのユーザの権限に応じて共有文書に書かれた情報を読めなくすることにより、共有文書の一部に対するアクセス制御を実現することができる、という効果を奏する。
【０１０２】
また、本実施の形態によれば、クライアントのユーザの権限に応じ、構造化文書の各レイアウトオブジェクトを構成するマスクオブジェクトを発行し、サーバから受け取った共有文書データのマスクオブジェクトと入れ替えることにより、クライアントのユーザの権限に応じて共有文書に書かれた情報を読めなくすることにより、共有文書の一部に対するアクセス制御を実現することができる、という効果を奏する。
【０１０３】
なお、本実施の形態においては、サーバ１が格納するスキャン文書を国際標準ＩＳ１５４４４−６（ＪＰＭ方式）に従った構造化文書であるＪＰＭファイルとしたが、これに限るものではなく、Ａｄｏｂｅ  Ｓｙｓｔｅｍｓ社のＰＤＦ（Portable  Document  Format）に従った構造化文書であっても良い。
【産業上の利用可能性】
【０１０４】
本発明は、大量文書の部分的なアクセス制御方法として有用であり、セキュリティの用途にも適用できる。
【図面の簡単な説明】
【０１０５】
【図１】本発明の前提となる離散ウェーブレット変換に基づく符号化・復号化方式の基本となる階層符号化アルゴリズムを実現するシステムの機能ブロック図である。
【図２】原画像の各コンポーネントの分割された矩形領域を示す説明図である。
【図３】デコンポジションレベル数が３の場合の、各デコンポジションレベルにおけるサブバンドを示す説明図である。
【図４】プレシンクトを示す説明図である。
【図５】ビットプレーンに順位付けする手順の一例を示す説明図である。
【図６】符号列データの１フレーム分の概略構成を示す説明図である。
【図７】符号化されたウェーブレット係数値が収容されたパケットをサブバンド毎に表わしたコードストリーム構造を示す説明図である。
【図８】ＪＰＭファイルのデータ構成を示す模式図である。
【図９】アクセス制御システムを示すシステム構成図である。
【図１０】サーバおよびクライアントのハードウェア構成を示すブロック図である。
【図１１】アクセス制御システムにおける処理動作を示す模式図である。
【図１２】サーバの「マスクオブジェクトの削除」にかかる機能構成を示すブロック図である。
【図１３】サーバの「マスクオブジェクトの削除」にかかる処理の流れを示すフローチャートである。
【図１４】クライアントの「マスクオブジェクトの追加」および「マスクオブジェクトの入れ替え」にかかる機能構成を示すブロック図である。
【図１５】サーバの「マスクオブジェクトの追加」および「マスクオブジェクトの入れ替え」にかかる処理の流れを示すフローチャートである。
【図１６】符号上でのマスクの追加とレンダリングされるイメージの対応を示す模式図である。
【図１７】クライアントの「ユーザの役割ごとに固有なマスクオブジェクトの発行」にかかる機能構成を示すブロック図である。
【図１８】クライアントの「ユーザの役割ごとに固有なマスクオブジェクトの発行」にかかる処理の流れを示すフローチャートである。
【図１９】アクセス制御システムにおける処理の流れを示すフローチャートである。
【符号の説明】
【０１０６】
１      サーバ
２０      クライアント
３２      構造解析手段
３３      位置・長さ特定手段
３４      削除手段
３５      更新手段
３６      データ出力手段
４２      ユーザ権限認証手段
４３      マスク発行手段
５２      構造解析手段
５３      入替手段
５３      追加手段
５４      更新手段
５５      データ出力手段
【図１】
2008003687.tif 000003
【図２】
2008003687.tif 000004
【図３】
2008003687.tif 000005
【図４】
2008003687.tif 000006
【図５】
2008003687.tif 000007
【図６】
2008003687.tif 000008
【図７】
2008003687.tif 000009
【図８】
2008003687.tif 000010
【図９】
2008003687.tif 000011
【図１０】
2008003687.tif 000012
【図１１】
2008003687.tif 000013
【図１２】
2008003687.tif 000014
【図１３】
2008003687.tif 000015
【図１４】
2008003687.tif 000016
【図１５】
2008003687.tif 000017
【図１６】
2008003687.tif 000018
【図１７】
2008003687.tif 000019
【図１８】
2008003687.tif 000020
【図１９】
2008003687.tif 000021