以下、本発明の実施形態について図面に基づき詳細に説明する。
図1のネットワーク構成図に例示するように、本実施形態における情報処理システム10は、情報処理装置12と、複数の利用者端末(クライアント)14(14−1〜14−n)を含んで構成される。情報処理装置12と、クライアント14とは、ローカル・エリア・ネットワーク(LAN)などのネットワーク16に接続されており、情報処理装置12と、クライアント14とは通信することができるようになっている。
図1に例示するクライアント14は、例えば、CPU等の制御装置、ハードディスク等の記憶装置、ディスプレイ等の出力装置、キーボード、マウス等の入力装置、ネットワークボード等の通信装置を備えた公知のパーソナルコンピュータにより構成されている。また、クライアント14には公知のWebブラウザがインストールされている。
図2は、本実施形態に係る情報処理装置12のハードウェア構成を例示する図である。
情報処理装置12は、制御部20、記憶部22、通信部24を含んで構成される。制御部20、記憶部22、通信部24は、バス26を介して接続される。
制御部20はCPU等のプログラム制御デバイスであり、情報処理装置12にインストールされるプログラムに従って動作する。本実施形態では、情報処理装置12には、Webアプリケーションであるプログラムがインストールされている。なお、このプログラムは、例えば、CD−ROM、DVD−ROMなどのコンピュータ可読な情報伝達媒体に格納することができ、情報伝達媒体を介して、あるいは、インターネットなどの通信ネットワークを介して情報処理装置12に供給される。
なお、情報処理装置12には、Webサーバプログラムもインストールされている。そのため、クライアント14においてWebブラウザを起動して、そこから上記Webサーバプログラムにアクセスすることにより、各種画面がクライアント14に備えられたディスプレイ等の出力装置にWebブラウザを介して表示されるようになっている。
記憶部22は、RAM等の記憶素子やハードディスクなどである。記憶部22には、制御部20によって実行されるプログラムなどが記憶される。また、記憶部22は、制御部20のワークメモリとしても動作する。
図3は、本実施形態において、記憶部22に記憶されている処理対象情報30の一例を概念的に示した説明図である。
図3に例示するように、本実施形態においては、例えば、記憶部22に、名称が「フォルダA」、「文書a」、「文書b」、「文書c」、「文書d」、「フォルダB」である、ファイルやフォルダなどの6つの処理対象情報30が記憶されている。そして、名称が「フォルダA」である処理対象情報30に、名称が「文書a」、「文書b」、「文書c」、「文書d」、「フォルダB」である5つの処理対象情報30が関連付けられている。より具体的には、本実施形態においては、例えば、名称が「フォルダA」という処理対象情報30であるフォルダ内に、5つの処理対象情報30が記憶されている。
なお、図3に例示されている、処理対象情報30に関連付けられている、名称出力条件32や、名称一覧出力条件34については後述する。
通信部24は、例えば、ネットワークインタフェースなどであり、制御部20から入力される指示に従って、ネットワーク16を介して、クライアント14などへ情報を送信する。また、この通信部24は、ネットワーク16を介して受信される情報を制御部20に出力する。
次に、情報処理装置12で実現される機能について説明する。本実施形態に係る情報処理装置12は、機能的には、図4の機能ブロック図に例示するように、処理対象情報記憶部40、個別処理条件記憶部41、個別処理条件取得部42、群処理条件記憶部43、群処理条件取得部44、特定個別処理条件選出部45、特定情報生成部46、特定情報記憶部47、判断部48、群処理実行部49、特定情報更新部50を含むものとして機能する。これらの要素は、コンピュータである情報処理装置12にインストールされたプログラムを、情報処理装置12に含まれるCPU等の制御部20で実行することにより実現されている。
処理対象情報記憶部40は記憶部22を主として実現される。処理対象情報記憶部40には、例えば、ファイルやフォルダなどといった複数の処理対象情報30が記憶される。
図5は、図3の説明図に例示されている、本実施形態における処理対象情報30のデータ構造の一例を示す図である。図5に例示するように、処理対象情報30は、処理対象情報識別子(処理対象情報ID)51と、処理対象情報30の名称を示す名称情報52とを含んでいる。
また、本実施形態においては、図6に例示する、情報関連情報53も処理対象情報記憶部40に記憶されている。情報関連情報53は、例えば、フォルダやファイルについての親子関係などといった、処理対象情報30間の関連を示す情報である。情報関連情報53は、第1処理対象情報識別子(図6の例では、親情報識別子(親情報ID)54)と第2処理対象情報識別子(図6の例では、子情報識別子(子情報ID)55)とを含んでいる。
個別処理条件記憶部41は記憶部22を主として実現される。個別処理条件記憶部41は、予め定められた個別処理の実行が許可される利用者の条件である個別処理条件を記憶する。個別処理条件は、それぞれの処理対象情報30に関連付けられている。ここで、個別処理とは、処理対象情報記憶部40が記憶する、例えば、ファイルやフォルダなどといった個々の処理対象情報30に基づく処理をいう。具体的には、例えば、個々のファイルやフォルダの名称を取得して、取得した名称をメモリ等の記憶部22に記憶されている情報や、クライアント14が備えるディスプレイ等の出力装置などに出力(追加)する処理(名称出力処理)や、個々のファイル自体をクライアント14が備える記憶装置に出力する処理などをいう。そして、個別処理条件とは、このような個別処理の実行が許可された利用者の条件である。
図7は、本実施形態における個別処理条件の一例である名称出力条件32のデータ構造の一例を示す図である。図7に例示するように、名称出力条件32は、名称出力対象情報識別子(名称出力対象情報ID)56と、名称出力許可利用者情報57とを含んでいる。名称出力対象情報ID56は、名称情報52が示す名称の出力要求に応じて名称を出力する対象となる処理対象情報30に含まれる処理対象情報ID51を示している。また、名称出力許可利用者情報57は、名称出力対象情報ID56に対応する処理対象情報ID51を含む処理対象情報30について、名称出力処理の実行が許可される利用者を示している。
また、名称出力許可利用者情報57は、図7に例示するように、名称出力処理の実行が許可される個々の利用者を示す情報でも、名称出力処理の実行が許可される、1又は複数の利用者に関連付けられた利用者群を示す情報でも構わない。このように、個別処理条件は、個別処理の実行が許可される1又は複数の利用者に関連付けられた利用者群の条件であっても構わない。
個別処理条件取得部42は制御部20を主として実現される。個別処理条件取得部42は、個別処理条件記憶部41が記憶する個別処理条件(例えば、名称出力条件32)を取得する。
群処理条件記憶部43は記憶部22を主として実現される。群処理条件記憶部43は、群処理の実行が許可される利用者の条件である群処理条件を記憶する。ここで、群処理とは、利用者の要求に応じて、利用者が充足する個別処理条件に関連づけられた処理対象情報30に基づく個別処理を順次実行する処理である。具体的には、例えば、記憶部22に記憶されている名称一覧情報に、1つのフォルダ内のフォルダやファイルの名称を順次出力(追加)して、名称が順次出力(追加)された名称一覧情報をクライアント14が備えるディスプレイ等の出力装置に出力する処理(名称一覧出力処理)や、1つのフォルダに記憶されたフォルダやファイルを順次クライアント14が備える記憶装置に出力する処理などをいう。
図8は、本実施形態における群処理条件の一例である名称一覧出力条件34のデータ構造の一例を示す図である。名称一覧出力条件34は、名称一覧出力対象情報識別子(名称一覧出力対象情報ID)58と、名称一覧出力許可利用者情報59とを含んでいる。名称一覧出力対象情報ID58は、情報関連情報53に含まれる子情報ID55に対応する処理対象情報30に含まれる名称情報52が示す名称を、順次、名称一覧情報に出力する要求に応じる際における、親情報ID54に対応する処理対象情報30に含まれる処理対象情報ID51を示している。また、名称一覧出力許可利用者情報59は、名称一覧出力対象情報ID58に対応する処理対象情報ID51を含む処理対象情報30について、名称一覧出力処理の実行が許可される利用者を示している。
また、名称一覧出力許可利用者情報59は、図8に例示するように、名称一覧出力処理の実行が許可される個々の利用者を示す情報でも、名称一覧出力処理の実行が許可される、1又は複数の利用者に関連付けられた利用者群を示す情報でも構わない。このように、群処理条件は、群処理の実行が許可される1又は複数の利用者に関連付けられた利用者群の条件であっても構わない。
なお、処理対象情報30には、群処理条件(名称一覧出力条件34)と、個別処理条件(名称出力条件32)の両方が関連付けられていてもよい。また、この場合、処理対象情報30に関連付けられている群処理条件(名称一覧出力条件34)が、その処理対象情報30に関連付けられている個別処理条件(名称出力条件32)に対応するものであってもよい。すなわち、1つの情報が、処理対象情報30に関連付けられた群処理条件(名称一覧出力条件34)でもあり、個別処理条件(名称出力条件32)でもあるようにしても構わない。
群処理条件取得部44は制御部20を主として実現される。群処理条件取得部44は、群処理条件記憶部43が記憶する群処理条件(例えば、名称一覧出力条件34)を取得する。
特定個別処理条件選出部45は制御部20を主として実現される。特定個別処理条件選出部45は、群処理条件取得部44により取得された群処理条件と、個別処理条件取得部42により取得された各個別処理条件との関係に基づいて、各個別処理条件のうちで群処理条件を充足する利用者が充足するべき個別処理条件である特定個別処理条件を選出する。本実施形態においては、特定個別処理条件選出部45は、親情報ID54に対応する名称一覧出力対象情報ID58に関連付けられた名称一覧出力条件34と、親情報ID54に対応する名称出力対象情報ID56に関連付けられた名称出力条件32との関係に基づいて、名称出力条件32のうちから、特定名称出力条件(例えば、名称出力対象情報ID56が「2」、「3」、「5」である名称出力条件32)を選出する。なお、特定個別処理条件選出部45が、名称出力対象情報ID56が「2」、「3」、「5」である名称出力条件32を特定名称出力条件として選出する処理の流れについては後述する。
特定情報生成部46は制御部20を主として実現される。特定情報生成部46は、特定個別処理条件選出部45が選出した特定個別処理条件に関連付けられた処理対象情報30を特定する特定情報を生成する。
図9は、本実施形態において特定情報生成部46が生成する特定情報の一例である、名称出力条件32についての確認省略対象情報60のデータ構造の一例を示す図である。確認省略対象情報60は、名称出力条件32の確認を省略する対象となる名称出力対象情報ID56を示す省略対象情報識別子(省略対象情報ID)61を含んでいる。この省略対象情報ID61は、名称出力条件32の確認を省略する対象となる名称出力対象情報ID56に対応する処理対象情報ID51でもある。このように、確認省略対象情報60などの特定情報は、特定個別処理条件に関連付けられた処理対象情報30の識別子を含んでもよい。
本実施形態においては、特定個別処理条件選出部45が、名称出力対象情報ID56が「2」、「3」、「5」である名称出力条件32を特定名称出力条件として選出しているので、特定情報生成部46は、省略対象情報ID61が「2」、「3」、「5」である3つの確認省略対象情報60を生成する。
特定情報記憶部47は記憶部22を主として実現される。特定情報記憶部47は、特定情報生成部46により生成された特定情報(例えば、確認省略対象情報60)を記憶する。
判断部48は制御部20を主として実現される。判断部48は、群処理の実行前に、利用者が群処理条件(例えば、名称一覧出力条件34)を充足するか否かを判断する。
群処理実行部49は制御部20を主として実現される。群処理実行部49は、利用者が群処理条件を充足すると判断部48が判断する場合に(すなわち、利用者により要求された群処理の群処理条件を利用者が充足する場合に)、当該群処理の要求を受け付けた時点よりも前の時点から特定情報記憶部47に記憶されていた特定情報(例えば、確認省略対象情報60)により特定される処理対象情報30に基づく個別処理を順次実行する。
本実施形態においては、利用者が名称一覧出力条件34を充足する場合に、名称一覧出力処理の要求を受け付けた時点よりも前の時点から特定情報記憶部47に記憶されていた確認省略対象情報60に含まれる省略対象情報ID61に対応する名称出力対象情報ID56を含む名称出力条件32に含まれる名称出力対象情報ID56に対応する処理対象情報ID51を含む処理対象情報30について、処理対象情報30に含まれる名称情報52が示す名称を、記憶部22に記憶されている名称一覧情報に出力(追加)する処理を順次実行する。
なお、群処理実行部49が実行する処理の流れについては後述する。
特定情報更新部50は制御部20を主として実現される。特定情報更新部50は、特定情報記憶部47により記憶された特定情報を更新する。特定情報更新部50は、処理対象情報30の更新や、個別処理条件の更新や、群処理条件の更新を検出して、検出した更新に応じて、特定情報を更新してもよい。また、特定情報更新部50は、予め定められた間隔で、上記の更新を確認するなどして、確認された更新に応じて特定情報を更新してもよい。また、特定情報更新部50は、特定情報を更新する時機を示す時機情報を受け付け、時機情報が示す時機に特定情報を更新してもよい。具体的には、例えば、利用者から日時や時刻を示す情報を受け付け、この情報が示す日時や時刻に特定情報を更新してもよい。本実施形態では、特定情報更新部50は、処理対象情報30に対する更新を検出して、確認省略対象情報60を更新する。
次に、特定個別処理条件選出部45が、名称出力対象情報ID56が「2」、「3」、「5」である名称出力条件32を特定名称出力条件として選出する処理の流れの一具体例を図10に例示するフロー図を参照しながら説明する。
まず、特定個別処理条件選出部45は、情報関連情報53において示されたそれぞれの親情報ID54に対応する処理対象情報ID51を含む処理対象情報30(以下、親情報と呼ぶ。)と、子情報ID55に対応する処理対象情報ID51を含む処理対象情報30(以下、子情報と呼ぶ。)との組合せについて、親情報に含まれる処理対象情報ID51に対応する名称一覧出力対象情報ID58を含む名称一覧出力条件34と、子情報に含まれる処理対象情報ID51に対応する名称出力対象情報ID56を含む名称出力条件32を取得する(S101)。
そして、特定個別処理条件選出部45は、S101に例示する処理において取得した名称出力条件32のうちから、S101に例示する処理において取得した名称一覧出力条件34を充足するすべての利用者が充足する名称出力条件32を特定名称出力条件として選出する(S102)。このように、特定個別処理条件選出部45は、個別処理条件と群処理条件との包含関係に基づいて、特定個別処理条件を選出してもよい。また、特定個別処理条件選出部45は、個別処理条件を充足することが群処理条件を充足するための必要条件である場合は、この個別処理条件を特定個別処理条件として選出してもよい。
ここでは、名称一覧出力対象情報ID58が「1」である名称一覧出力条件34の名称一覧出力許可利用者情報59は「第1利用者群」と「第1利用者」である。
そして、親情報ID54が「1」である情報関連情報53の、子情報ID55は、「2」、「3」、「4」、「5」、「6」である。
そして、名称出力対象情報ID56が「2」、「3」、「4」、「5」、「6」である名称出力条件32のうち、名称出力許可利用者情報57が「第1利用者群」と「第1利用者」の両方を含むものは、名称出力対象情報ID56が「2」、「3」、「5」である名称出力条件32である。
そのため、特定個別処理条件選出部45は、ここでは、名称出力対象情報ID56が「2」、「3」、「5」である名称出力条件32を特定名称出力条件として選出する。
そして、特定情報生成部46は、S102に例示する処理において選出された特定名称出力条件に含まれる名称出力対象情報ID56に対応する省略対象情報ID61を含む確認省略対象情報60を生成する(S103)。具体的には、例えば、特定情報生成部46は、省略対象情報ID61が「2」、「3」、「5」である確認省略対象情報60を生成する。
そして、特定情報記憶部47は、S103に例示する処理において特定情報生成部46が生成した確認省略対象情報60を、処理対象情報ID51が「1」である処理対象情報30に関連付けて記憶する(S104)。
次に、処理対象情報ID51が「1」である処理対象情報30に関連付けられた処理対象情報30の名称の一覧を表示する、図11に例示する名称一覧表示画面62の出力要求を利用者から受け付けて(具体的には、例えば、「フォルダA」内のファイルやフォルダの名称の一覧を示す名称一覧表示画面62の出力要求を利用者から受け付けて)、名称一覧表示画面62をクライアント14が備えるディスプレイなどの出力装置に出力するまでの処理の流れを、図12に例示するフロー図を参照しながら説明する。
まず、情報処理装置12の制御部20が、親情報ID54が「1」である情報関連情報53の、子情報ID55に対応する処理対象情報ID51を含む処理対象情報30の名称一覧表示画面62の出力要求を利用者から受け付ける(S201)。
そして、判断部48は、名称一覧表示画面62の出力要求を行った利用者が、名称一覧出力条件34を充足するか否かを判断する(S202)。具体的には、例えば、判断部48は、名称一覧出力対象情報ID58が「1」である名称一覧出力条件34に含まれる名称一覧出力許可利用者情報59に、名称一覧表示画面62の出力要求を行った利用者が含まれるか否かを判断する。
そして、名称一覧表示画面62の出力要求を行った利用者が、名称一覧出力条件34を充足する場合は(S202:Y)、群処理実行部49が、処理対象情報ID51が「1」である処理対象情報30に関連付けられた確認省略対象情報60が少なくとも1つ生成されているか否かを確認する(S203)。
一方、名称一覧表示画面62の出力要求を行った利用者が、名称一覧出力条件34を充足しない場合は(S202:N)、処理を終了する。
そして、処理対象情報ID51が「1」である処理対象情報30に関連付けられた確認省略対象情報60が少なくとも1つ生成されている場合は(S203:Y)、群処理実行部49は、親情報ID54が「1」である情報関連情報53に含まれるすべての子情報ID55について、この子情報ID55に対応する省略対象情報ID61を含む確認省略対象情報60が生成されているか否かを確認する(S204)。
そして、親情報ID54が「1」である情報関連情報53に含まれるすべての子情報ID55について、この子情報ID55に対応する省略対象情報ID61を含む確認省略対象情報60が生成されている場合には(S204:Y)、群処理実行部49は、親情報ID54が「1」であるすべての情報関連情報53に含まれる子情報ID55に対応する処理対象情報ID51を含む処理対象情報30を取得して、取得した処理対象情報30に含まれる名称情報52が示す名称を取得する(S205)。
一方、親情報ID54が「1」である情報関連情報53に含まれるすべての子情報ID55について、この子情報ID55に対応する省略対象情報ID61を含む確認省略対象情報60が生成されていない場合は(S204:N)、群処理実行部49は、親情報ID54が「1」である情報関連情報53に含まれる子情報ID55のうち、確認省略対象情報60に含まれる省略対象情報ID61に示されていない子情報ID55に対応する名称出力対象情報ID56を含む名称出力条件32を取得する(S206)。このように、群処理実行部49は、利用者の要求に応じて群処理を実行する際に、特定情報により特定される処理対象情報30以外の処理対象情報30に関連付けられた個別処理条件(例えば、名称出力条件32)を、その利用者が充足するか否かを確認し、個別処理条件(例えば、名称出力条件32)をその利用者が充足する場合は、その処理対象情報30に基づく個別処理(例えば、名称出力処理)を実行するようにしてもよい。
そして、群処理実行部49は、S206に例示する処理において、判断部48が取得した名称出力条件32のうち、名称一覧表示画面62の出力要求を行った利用者が充足する名称出力条件32に対応する処理対象情報30の名称、及び、確認省略対象情報60に対応する処理対象情報30の名称を取得する(S207)。すなわち、群処理実行部49は、S206に例示する処理において、判断部48が取得した名称出力条件32のうち、名称一覧表示画面62の出力要求を行った利用者が充足する名称出力条件32に含まれる名称出力対象情報ID56に対応する処理対象情報ID51を含む処理対象情報30を取得する。また、群処理実行部49は、確認省略対象情報60に含まれる省略対象情報ID61に対応する処理対象情報ID51を含む処理対象情報30も取得する。そして、群処理実行部49は、取得したこれらの処理対象情報30に含まれる名称情報52が示す名称を取得する。
S202に例示する処理によって、処理対象情報ID51が「1」である処理対象情報30に関連付けられた確認省略対象情報60が生成されていないことが確認された場合は(S203:N)、群処理実行部49は、親情報ID54が「1」であるすべての情報関連情報53に含まれる子情報ID55に対応する名称出力対象情報ID56を含む名称出力条件32を取得する(S208)。
そして、特定情報生成部46は、この名称出力条件32に基づいて、確認省略対象情報60をS101〜S104に例示する処理などによって生成し、特定情報記憶部47は、この確認省略対象情報60を記憶する(S209)。
そして、群処理実行部49は、名称一覧表示画面62の出力要求を行った利用者が充足する名称出力条件32に対応する処理対象情報30の名称を取得する(S210)。すなわち、名称一覧表示画面62の出力要求を行った利用者を示す名称出力許可利用者情報57を含む名称出力条件32に含まれる名称出力対象情報ID56に対応する処理対象情報ID51を含む処理対象情報30を取得して、この処理対象情報30に含まれる名称情報52が示す名称を取得する。
そして、群処理実行部49は、図11に例示するような名称一覧表示画面62に対応する名称一覧情報を生成して、メモリ等の記憶部22に記憶し、この名称一覧情報に、S205、S207、又は、S210に例示する処理において取得した処理対象情報30の名称を順次出力(追加)して、これらの名称が順次出力(追加)された名称一覧情報に基づいて、図11に例示するような名称一覧表示画面62を生成して、クライアント14が備えるディスプレイ等の出力装置に出力する(S211)。このとき、図11に例示するように、群処理実行部49は、名称が「フォルダ」を含む処理対象情報30についてはフォルダのアイコンを、出力する名称が「ファイル」を含む処理対象情報30についてはファイルのアイコンを、併せて名称一覧表示画面62上に出力するなど、名称に応じた目印を併せて出力するようにしてもよい。
次に、図12のフロー図に例示する処理の流れに沿って、「フォルダA」内のファイルやフォルダの名称の一覧を示す名称一覧表示画面62の出力要求を第1利用者から受け付けて、名称一覧表示画面62をクライアント14が備えるディスプレイなどの出力装置に出力するまでの処理の流れの一例を、より具体的に説明する。ここで、第1利用者は、第1利用者群にも第2利用者群にも属していないこととする。
情報処理装置12の制御部20が、第1利用者から名称一覧表示画面62の出力要求を受け付ける(S201)。
そして、判断部48が、名称一覧表示画面62の出力要求を行った第1利用者が、名称一覧出力条件34を充足すると判断し(S202:Y)、群処理実行部49が、処理対象情報ID51が「1」である処理対象情報30に関連付けられた確認省略対象情報60が少なくとも1つ生成されているか否かを確認する(S203)。
ここでは、処理対象情報ID51が「1」である処理対象情報30に関連付けられた確認省略対象情報60が少なくとも1つ生成されているので(S203:Y)、群処理実行部49は、親情報ID54が「1」である情報関連情報53に含まれるすべての子情報ID55である「2」、「3」、「4」、「5」、「6」のすべてについて、これらの値を省略対象情報ID61として含む確認省略対象情報60が生成されているか否かを確認する(S205)。
ここでは、図9に例示するように、省略対象情報ID61が「2」、「3」、「5」である確認省略対象情報60しか生成されていないので(S205:N)、群処理実行部49は、親情報ID54が「1」である情報関連情報53に含まれる子情報ID55のうち、確認省略対象情報60に含まれる省略対象情報ID61(ここでは、「2」、「3」、「5」)に示されていない子情報ID55に対応する名称出力対象情報ID56(ここでは、「4」、「6」)を含む名称出力条件32を取得する(S206)。
そして、群処理実行部49が、S206に例示する処理において、判断部48が取得した、名称出力対象情報ID56が「4」、「6」である名称出力条件32のうち、第1利用者を示す名称出力許可利用者情報57を含む名称出力条件32に含まれる名称出力対象情報ID56に対応する処理対象情報ID51を含む処理対象情報30である、処理対象情報ID51が「4」である処理対象情報を取得する。また、群処理実行部49は、確認省略対象情報60に含まれる省略対象情報ID61に対応する処理対象情報ID51を含む処理対象情報30である、処理対象情報ID51が「2」、「3」、「5」である処理対象情報30も取得する。そして、群処理実行部49は、取得したこれらの処理対象情報30に含まれる名称情報52が示す名称である、「Bフォルダ」、「a文書」、「b文書」、「c文書」を取得する(S207)。
そして、群処理実行部49は、名称一覧表示画面62に対応する名称一覧情報を生成して、メモリ等の記憶部22に記憶し、この名称一覧情報に、先に取得した処理対象情報30の名称である「Bフォルダ」、「a文書」、「b文書」、「c文書」という文字列などを順次出力(追加)して、これらの名称が順次出力(追加)された名称一覧情報に基づいて、図11に例示するような名称一覧表示画面62を生成して、クライアント14が備えるディスプレイ等の出力装置に出力する(S211)。
次に、特定情報更新部50が処理対象情報30に対する更新を検出して、確認省略対象情報60を更新する処理の流れの一例を、図13、及び、図14に例示するフロー図を参照しながら説明する。
まず、特定情報更新部50は、検出した更新の内容が、処理対象情報30の追加であるか否かを確認する(S301)。
そして、検出した更新の内容が、処理対象情報30の追加である場合は(S301:Y)特定情報更新部50は、追加された処理対象情報30を子情報とする情報関連情報53を取得する(S302)。すなわち、特定情報更新部50は、追加された処理対象情報30に含まれる処理対象情報ID51に対応する子情報ID55を含む情報関連情報53を取得する。
そして、特定情報更新部50は、S302に例示する処理において取得した情報関連情報53に含まれる子情報ID55に対応する名称出力対象情報ID56を含む名称出力条件32を充足することが、S302に例示する処理において取得した情報関連情報53に含まれる親情報ID54に対応する名称一覧出力対象情報ID58を含む名称一覧出力条件34を充足するための必要条件であるか否かを確認する(S303)。
S303に例示する処理において、必要条件ではないことが確認された場合は(S303:N)、処理を終了する。
S303に例示する処理において、必要条件であることが確認された場合は(S303:Y)、特定情報更新部50は、追加された処理対象情報30に含まれる処理対象情報ID51に対応する省略対象情報ID61を含む確認省略対象情報60が存在しなければ、確認省略対象情報60を生成して(S304)、処理を終了する。
S301に例示する処理において、特定情報更新部50が検出した更新の内容が、処理対象情報30の追加ではないと確認された場合には(S301:N)、特定情報更新部50は、検出した更新の内容が、処理対象情報30に含まれる処理対象情報ID51に対応する名称出力対象情報ID56を含む名称出力条件32の変更であるか否かを確認する(S305)。
特定情報更新部50が検出した更新の内容が処理対象情報30に含まれる処理対象情報ID51に対応する名称出力対象情報ID56を含む名称出力条件32の変更である場合は(S305:Y)、特定情報更新部50は、変更された名称出力条件32に対応する処理対象情報30を子情報とする情報関連情報53を取得する(S306)。すなわち、特定情報更新部50は、変更された名称出力条件32に含まれる名称出力対象情報ID56に対応する子情報ID55を含む情報関連情報53を取得する。
そして、特定情報更新部50は、取得した情報関連情報53について、子情報ID55に対応する名称出力対象情報ID56を含む名称出力条件32を充足することが、親情報ID54に対応する名称一覧出力対象情報ID58を含む名称一覧出力条件34を充足するための必要条件であるか否かを確認する(S307)。
S307に例示する処理において、必要条件であることが確認された場合は(S307:Y)、特定情報更新部50は、変更された名称出力条件32に含まれる名称出力対象情報ID56に対応する省略対象情報ID61を含む確認省略対象情報60が存在しなければ、確認省略対象情報60を生成して(S308)、処理を終了する。
S307に例示する処理において、必要条件ではないことが確認された場合は(S307:N)、特定情報更新部50は、変更された名称出力条件32に含まれる名称出力対象情報ID56に対応する省略対象情報ID61を含む確認省略対象情報60が存在すれば、その確認省略対象情報60を削除して(S309)処理を終了する。
S305に例示する処理において、特定情報更新部50が検出した更新の内容が処理対象情報30に含まれる処理対象情報ID51に対応する名称出力対象情報ID56を含む名称出力条件32の変更でないことが確認された場合は(S305:N)、特定情報更新部50は、検出した更新の内容が処理対象情報30の削除であるか否かを確認する(S310)。
ここで、特定情報更新部50が検出した更新の内容が処理対象情報30の削除でない場合は(S310:N)、処理を終了する。
特定情報更新部50が検出した更新の内容が処理対象情報30の削除である場合は(S310:Y)、特定情報更新部50は、削除された処理対象情報30の処理対象情報ID51に対応する省略対象情報ID61を含む確認省略対象情報60が存在すれば、その確認省略対象情報60を削除して(S311)、処理を終了する。
なお、本発明は上記実施形態に限定されるものではない。
例えば、特定情報は、特定個別処理条件に関連付けられた処理対象情報30以外の処理対象情報30の識別子を含んでもよい。このような特定情報として、例えば、図15に例示するような、省略対象外情報識別子(省略対象外情報ID)64を含む確認省略対象外情報63が挙げられる。このように、特定情報生成部46が特定個別処理条件に関連付けられた処理対象情報30以外の処理対象情報30の識別子を生成してもよい。また、特定情報記憶部47が、特定情報生成部46により生成された識別子を記憶してもよい。
また、特定情報は、省略対象情報ID61を含む確認省略対象情報60と、省略対象外情報ID64を含む確認省略対象外情報63とを含む情報であってももちろん構わない。
例えば、図10に例示するフロー図中のS102に例示する処理において、特定個別処理条件選出部45が、特定名称出力条件を選出するだけでなく、特定名称出力条件として選出されなかった名称出力条件32を特定外名称出力条件として選出して、S103に例示する処理において、特定情報生成部46が、確認省略対象情報60だけでなく、特定外名称出力条件に含まれる名称出力対象情報ID56に対応する省略対象外情報ID64を含む確認省略対象外情報63を生成するようにして、確認省略対象外情報63を生成してもよい。
もちろん、上記の確認省略対象外情報63の生成方法はあくまでも一例にすぎない。
このとき、図12のフロー図のS204に例示する処理において、群処理実行部49が、親情報ID54が「1」である情報関連情報53に含まれるすべての子情報ID55について、子情報ID55に対応する省略対象情報ID61を含む確認省略対象情報60が生成されているか否かを確認せずに、S206に例示する処理において、群処理実行部49は、確認省略対象外情報63が生成されていれば、確認省略対象外情報63に含まれる省略対象外情報ID64に対応する名称出力対象情報ID56を含む名称出力条件32を取得するようにしてもよい。このように、群処理実行部49は、利用者の要求に応じて群処理を実行する際に、その群処理の要求を受け付けた時点よりも前の時点から特定情報記憶部47に記憶されていた識別子により特定される処理対象情報30に関連付けられた個別処理条件(例えば、名称出力条件32)を、その利用者が充足するか否かを確認し、個別処理条件(例えば、名称出力条件32)をその利用者が充足する場合は、処理対象情報30に基づく個別処理(例えば、名称出力処理)を実行するようにしてもよい。
また、例えば、図13に例示するフロー図中のS303に例示する処理において、必要条件であることが確認された場合は(S303:Y)、S304に例示する処理において、特定情報更新部50は、追加された処理対象情報30に含まれる処理対象情報ID51に対応する省略対象情報ID61を含む確認省略対象情報60がなければ、確認省略対象情報60を生成し、追加された処理対象情報30に含まれる処理対象情報ID51に対応する省略対象外情報ID64を含む確認省略対象外情報63が存在すれば、その確認省略対象外情報63を削除し、処理を終了してもよい。
また、例えば、図13に例示するフロー図中のS303に例示する処理において、必要条件ではないことが確認された場合は(S303:N)、追加された処理対象情報30に含まれる処理対象情報ID51に対応する省略対象外情報ID64を含む確認省略対象外情報63が存在すれば、その確認省略対象外情報63を削除し、処理を終了してもよい。
また、例えば、図13に例示するフロー図中のS307に例示する処理において、必要条件であることが確認された場合は(S307:Y)、図13に例示するフロー図中のS308に例示する処理において、特定情報更新部50は、変更された名称出力条件32に含まれる名称出力対象情報ID56に対応する省略対象情報ID61を含む確認省略対象情報60が存在しなければ、確認省略対象情報60を生成して処理を終了してもよい。このとき、変更された名称出力条件32に含まれる名称出力対象情報ID56に対応する省略対象外情報ID64を含む確認省略対象外情報63が存在すれば、その確認省略対象外情報63を削除して処理を終了してもよい。
また、例えば、図13に例示するフロー図中のS307に例示する処理において、必要条件ではないことが確認された場合は(S307:N)、図13に例示するフロー図中のS309に例示する処理において、特定情報更新部50は、変更された名称出力条件32に含まれる名称出力対象情報ID56に対応する省略対象外情報ID64を含む確認省略対象外情報63が存在しなければ、確認省略対象外情報63を生成して、変更された名称出力条件32に含まれる名称出力対象情報ID56に対応する省略対象情報ID61を含む確認省略対象情報60が存在すれば、その確認省略対象情報60を削除して処理を終了してもよい。
例えば、図14に例示するフロー図中のS311に例示する処理において、削除された処理対象情報30の処理対象情報ID51に対応する省略対象情報ID61を含む確認省略対象情報60が存在すれば、特定情報更新部50は、その確認省略対象情報60を削除して処理を終了してもよい。このとき、削除された処理対象情報30の処理対象情報ID51に対応する省略対象外情報ID64を含む確認省略対象外情報63が存在すれば、特定情報更新部50は、その確認省略対象外情報63を削除して、処理を終了してもよい。
なお、本発明は上記実施形態にも限定されるものではない。
例えば、群処理は、定型的な検索処理などの他の処理であっても、もちろん構わない。
具体的には、例えば、所定の検索条件を充足する処理対象情報30の名称の一覧を表示する名称一覧表示画面62の出力要求を利用者から受け付けるような実施形態が考えられる。
このとき、例えば、検索要求に応じて情報処理装置12の制御部20が検索フォルダや分類フォルダなどといった名称のフォルダ(実際のフォルダであっても仮想的なフォルダであっても構わない)を生成して、生成されたフォルダに複数の処理対象情報30を関連付けるようにしてもよい。そして、特定情報生成部46が、検索処理の実行が許可された利用者の条件(群処理条件の一例)と、各処理対象情報30の名称の出力処理の実行が許可された利用者の条件(個別処理条件の一例)とに基づいて、特定情報(例えば、確認省略対象情報60)を生成するようにしてもよい。そして、特定情報記憶部51が、この特定情報(例えば、確認省略対象情報60)を生成されたフォルダに関連付けて記憶するようにしてもよい。
また、個別処理条件が、利用者群を示す情報に関連付けられている場合には、特定個別処理条件選出部45が、群処理条件と、各個別処理条件に基づいて示される、個々の利用者についての、個別処理の実行が許可される条件との関係に基づいて、群処理条件を充足する利用者が充足するべき個別処理条件である特定個別処理条件を選出するようにしても構わない。
また、群処理条件が、利用者群を示す情報に関連付けられている場合には、特定個別処理条件選出部45が、群処理条件に基づいて示される、個々の利用者についての、群処理の実行が許可される条件と、各個別処理条件との関係に基づいて、特定個別処理条件を選出してもよい。
具体的には、例えば、名称出力条件32に含まれる名称出力許可利用者情報57や、名称一覧出力条件34に含まれる名称一覧出力許可利用者情報59が、利用者群を示す情報である場合には、利用者群に関連付けられた個々の利用者についての、名称一覧出力条件34と、名称出力条件32との関係(例えば、名称一覧出力許可利用者情報59に示されている利用者がすべて、名称出力許可利用者情報57に示されている利用者に含まれているか否か)に基づいて、特定個別処理条件選出部45が、特定名称出力条件を選出するようにしても構わない。
また、上記実施形態では、各種情報のデータ構造は表形式により表現しているが、この表現はあくまでも一例であり、他のデータ構造により実装してももちろん構わない。
また、情報処理システム10は、特定情報更新部50を有さない構成としてもよい。
また、処理対象情報記憶部40、個別処理条件記憶部41、群処理条件記憶部43、特定情報記憶部47のうちのいくつかを情報処理システム10外の別のコンピュータに設け、情報処理装置12と通信部24を介して通信する構成とした、分散型情報処理システムに本発明を適用してもよい。
また、情報処理装置12は、一つの筐体により構成されていても、複数の筐体により構成されていてもよい。
また、情報処理装置12とクライアント14の役割分担や、情報処理装置12にインストールされるプログラムの実装方式は、上記実施形態に限られない。例えば、情報処理装置12にインストールされるプログラムはWebアプリケーションでなく、クライアント・サーバアプリケーションなどであってももちろん構わない。
また、上記実施形態では情報処理装置12で生成された画面をクライアント14に出力したが、情報処理装置12自体に画面を出力するようにしても、もちろん構わない。
また、上記実施形態では処理対象情報30の一例として、フォルダやファイルを挙げたが、フォルダやファイル以外の処理対象情報30に対して、本発明を適用してもよい。
10 情報処理システム、12 情報処理装置、14 利用者端末(クライアント)、16 ネットワーク、20 制御部、22 記憶部、24 通信部、26 バス、30 処理対象情報、32 名称出力条件、34 名称一覧出力条件、40 処理対象情報記憶部、41 個別処理条件記憶部、42 個別処理条件取得部、43 群処理条件記憶部、44 群処理条件取得部、45 特定個別処理条件選出部、46 特定情報生成部、47 特定情報記憶部、48 判断部、49 群処理実行部、50 特定情報更新部、51 処理対象情報識別子(処理対象情報ID)、52 名称情報、53 情報関連情報、54 親情報識別子(親情報ID)、55 子情報識別子(子情報ID)、56 名称出力対象情報識別子(名称出力対象情報ID)、57 名称出力許可利用者情報、58 名称一覧出力対象情報識別子(名称一覧出力対象情報ID)、59 名称一覧出力許可利用者情報、60 確認省略対象情報、61 省略対象情報識別子(省略対象情報ID)、62 名称一覧表示画面、63 確認省略対象外情報、64 省略対象外情報識別子(省略対象外情報ID)。