説明

文書作成支援装置及びプログラム

【課題】文書内容に応じて操作制限が設定されるシステムにおいて、意図された開示範囲に適した操作制限が設定されるような内容を有する文書の作成を支援する。
【解決手段】文書解析結果記憶部120は、文書を文書の構成要素である文字列に分解して解析することで抽出される文書の特徴量を記憶する。ポリシー設定ルール記憶部150は、文書の特徴量に関する適合条件と、この適合条件を満たす文書に対する操作の制限を表す操作制限情報と、の組で表されるポリシー設定ルールを記憶する。ポリシー適用解析部130は、文書解析結果記憶部120中の対象文書の特徴量を用いて、ポリシー設定ルールの適合条件が満たされるか否かを判定する。ポリシー表示処理部180は、対象文書が満たす適合条件と、その適合条件に関連付けられる操作制限情報と、を対応づけて表示させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文書作成支援装置及びプログラムに関する。
【背景技術】
【0002】
電子文書(以下、単に「文書」とも呼ぶ)を管理するシステムでは、不正アクセスや情報漏えいを防止するため、一般に、各文書について、その文書に対する各ユーザ又は各グループの権限、例えば閲覧可能/不可、書込可能/不可など、の操作権限を示す情報が設定される。このような操作権限の情報はセキュリティポリシと呼ばれることがある。電子文書を管理するシステムは、ユーザから文書に対する操作の要求を受けた場合、その文書について設定されたセキュリティポリシに基づいて、その操作がそのユーザの権限内のものであるか否かを判定し、その操作を許可するか否かを判定する。
【0003】
このようなアクセス制限を行なうシステムにおいて、文書の内容に応じてその文書のセキュリティポリシを設定する技術がある。
【0004】
例えば、特許文献1に開示されるデータ監視装置は、パーソナルコンピュータからプリンタドライバを介してプリンタに転送される印刷データを監視し、当該印刷データ中に特定の文字列及び画像などが含まれているか否かを判定する。このデータ監視装置は、監視している印刷データが特定の文字列などを含む場合、プリンタドライバに対して当該印刷データの転送の停止を指示する。
【0005】
また例えば、特許文献2に開示される文書管理装置は、文書に対応するキーワードの入力を受け付け、キーワードとセキュリティレベルとの組を蓄積するキーワードレベル蓄積部を参照することで、当該文書に対するセキュリティレベルを決定する。
【0006】
【特許文献1】特開2000−253241号公報
【特許文献2】特開2006−338147号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
文書の内容に応じてセキュリティポリシが設定されるシステムでは、文書の内容によっては、その文書の作成者が意図する文書の開示範囲と異なるセキュリティポリシが文書に設定される場合がある。
【0008】
本発明は、文書の内容に応じてセキュリティポリシが設定されるシステムにおいて、意図された開示範囲に適したセキュリティポリシが設定されるような内容を有する文書の作成を支援する技術を提供することを目的とする。
【課題を解決するための手段】
【0009】
請求項1に係る発明は、文書の特徴量であって当該文書を当該文書の構成要素である文字列に分解して解析することで当該文字列に基づいて抽出される特徴量を記憶する文書特徴量記憶部と、文書の特徴量に関する適合条件と、当該適合条件を満たす特徴量を有する文書に対する操作の制限を表す操作制限情報と、を関連付けて記憶する操作制限情報記憶部と、対象文書について前記文書特徴量記憶部に記憶された前記特徴量が、前記操作制限情報記憶部に記憶された前記適合条件を満たすか否かを判定する判定部と、前記判定部において満たされると判定された適合条件を特定する情報と、当該適合条件に関連付けられた前記操作制限情報と、を対応づけて表示装置に表示させる処理を行う操作制限情報表示処理部と、を備えることを特徴とする文書作成支援装置である。
【0010】
請求項2に係る発明は、請求項1に係る発明において、前記対象文書を表示装置に表示させる処理を行う文書表示処理部であって、前記操作制限情報表示処理部の処理対象である前記適合条件について、前記対象文書のうち当該適合条件を満たす特徴量に関連する文字列と、当該文字列以外の前記対象文書中の文字列と、を異なる態様で表示させる処理を行う文書表示処理部、をさらに備える。
【0011】
請求項3に係る発明は、請求項1又は2に係る発明において、前記適合条件は、1以上の論理式によって構成され、前記操作制限情報表示処理部の処理対象である前記適合条件を表示装置に図式的に表示させる処理を行う適合条件表示処理部であって、当該適合条件を構成する各論理式について、前記対象文書の前記特徴量を用いて当該論理式を評価した結果の真偽値に応じた態様で表示させる処理を行う適合条件表示処理部、をさらに備える。
【0012】
請求項4に係る発明は、請求項2に係る発明において、前記適合条件は、1以上の論理式によって構成され、前記操作制限情報表示処理部の処理対象である前記適合条件を表示装置に図式的に表示させる処理を行う適合条件表示処理部であって、当該適合条件を構成する各論理式について、前記対象文書の前記特徴量を用いて当該論理式を評価した結果の真偽値に応じた態様で表示させる処理を行う適合条件表示処理部、をさらに備え、前記文書表示処理部は、さらに、前記適合条件表示処理部によって表示される前記論理式のうち少なくとも1つを特定する指示を取得し、前記対象文書のうち、前記指示において特定された論理式の評価に用いられた前記特徴量に関連する文字列を、前記対象文書中の他の文字列と区別可能な態様で表示させる処理を行う。
【0013】
請求項5に係る発明は、請求項1から4のいずれか1項に係る発明において、前記操作制限情報は、文書に対して実行可能な操作の種類を表す情報であり、前記判定部において複数の前記適合条件が満たされると判定された場合に、当該複数の適合条件のそれぞれに関連付けられた前記操作制限情報のうち、実行可能な操作の種類の数が最小である操作制限情報を、前記対象文書の操作制限情報として設定する設定部、をさらに備え、前記操作制限情報表示処理部は、さらに、前記設定部が前記対象文書の操作制限情報として設定した操作制限情報を特定する情報を表示装置に表示させる処理を行う。
【0014】
請求項6に係る発明は、請求項5に係る発明において、前記対象文書中の特定の文字列を指定する指示を取得し、取得した指示において指定された文字列を前記対象文書から削除したと仮定する仮文書に対して、前記判定部及び前記設定部による処理を行った場合に、前記設定部が前記仮文書の操作制限情報として設定する操作制限情報を特定する情報を表示装置に表示させる処理を行う仮操作制限情報表示処理部、をさらに備える。
【0015】
請求項7に係る発明は、請求項1から6のいずれか1項に係る発明において、前記操作制限情報は、利用者ごとに実行可能な操作の種類を表す情報を含む。
【0016】
請求項8に係る発明は、文書の特徴量であって当該文書を当該文書の構成要素である文字列に分解して解析することで当該文字列に基づいて抽出される特徴量を記憶する文書特徴量記憶部と、文書の特徴量に関する適合条件と、当該適合条件を満たす特徴量を有する文書に対する操作の制限を表す操作制限情報と、を関連付けて記憶する操作制限情報記憶部と、を参照可能なコンピュータに、対象文書について前記文書特徴量記憶部に記憶された前記特徴量が、前記操作制限情報記憶部に記憶された前記適合条件を満たすか否かを判定する判定ステップと、前記判定ステップにおいて満たされると判定された適合条件を特定する情報と、当該適合条件に関連付けられた前記操作制限情報と、を対応づけて表示装置に表示させる処理を行う表示処理ステップと、を実行させることを特徴とするプログラムである。
【発明の効果】
【0017】
請求項1又は8に係る発明によると、ある文書について、どのような適合条件を満たすことによってどのような操作制限情報が設定されるかをユーザに提示することができる。
【0018】
請求項2に係る発明によると、文書中のどの部分によって適合条件が満たされるかをユーザに提示することができる。
【0019】
請求項3に係る発明によると、ある文書に関して満たされる適合条件について、この適合条件を構成する各論理式の真偽値をユーザに提示することができる。
【0020】
請求項4に係る発明によると、適合条件を構成する論理式の中からユーザが指定した論理式について、文書において対応する文字列をユーザに提示することができる。
【0021】
請求項5に係る発明によると、文書に対して設定され得る操作制限情報の候補と、その候補のうち実際に文書に対して設定される操作制限情報と、をユーザに提示することができる。
【0022】
請求項6に係る発明によると、文書の所定の部分を変更した場合にその文書に設定され得る操作制限情報をユーザに提示することができる。
【0023】
請求項7に係る発明によると、ある文書について利用者ごとに与えられる操作権限をユーザに提示することができる。
【発明を実施するための最良の形態】
【0024】
図1に、本発明の1つの実施形態の文書作成支援装置を含む文書管理システムの構成例を示す。このシステムは、ポリシーサーバ10、文書管理サーバ20、及びクライアント端末30を備える。ポリシーサーバ10、文書管理サーバ20、及びクライアント端末30は、インターネットやローカル・エリア・ネットワーク等のネットワーク40を介して互いに接続される。
【0025】
文書管理サーバ20は、文書DB(データベース)202に登録される文書を管理する。文書管理サーバ20は、クライアント端末30からの要求に応じて、文書に関するサービスを提供する。例えば、文書DB202に未登録の文書を新規に文書DB202に登録するサービスや、文書DB202中の文書に対する操作を実行したり、文書DB202中の文書を出力したりするサービスを提供する。
【0026】
ポリシーサーバ10は、本発明の1つの実施形態の文書作成支援装置として機能するサーバ装置である。ポリシーサーバ10は、文書管理サーバ20において管理される文書に対するアクセス制限に関する処理を行う。例えば、ポリシーサーバ10は、文書に対し、その文書内容に応じて操作制限情報を設定する処理を行う。また、ポリシーサーバ10は、各文書について設定した操作制限情報を管理する。この操作制限情報に従って、文書管理サーバ20は文書に対するアクセス制限を行なう。例えば、文書管理サーバ20は、クライアント端末30から文書に対する操作の実行要求を受けると、要求対象の文書について設定されている操作制限情報をポリシーサーバ10から取得し、取得した操作制限情報に基づいて、要求された操作の実行の可否を決定する。
【0027】
なお、図1では、ポリシーサーバ10と文書管理サーバ20とを別個のサーバ装置として図示するが、ポリシーサーバ10及び文書管理サーバ20の機能を1つのサーバ装置に実現してもよい。また、クライアント端末30が文書管理サーバ20から取得した文書の操作の実行要求をポリシーサーバ10が直接受け付け、該文書に設定されている操作制限情報に基づき、要求された操作の実行の可否を決定するようにしてもよい。
【0028】
図2は、ポリシーサーバ10の内部構成の一例を示すブロック図である。ポリシーサーバ10は、文書テキスト解析部100、解析元データ記憶部110、文書解析結果記憶部120、ポリシー適用解析部130、ユーザ所属グループ情報記憶部140、ポリシー設定ルール記憶部150、コーパス160、ポリシー適用結果記憶部170、ポリシー表示処理部180、及び文書表示処理部190を備える。
【0029】
文書テキスト解析部100は、ある文書に対する操作制限情報の設定要求を受けると、その設定要求に含まれる対象文書について、文書の構成要素である文字列に分解して解析する処理を行う。例えば、自然言語処理の分野で一般的に用いられる形態素解析や構文解析の手法を用いて対象文書の解析を行なう。本実施形態では、文書テキスト解析部100は、解析元データ記憶部110を参照し、対象文書のテキストを形態素の文字列に分解して解析する。
【0030】
解析元データ記憶部110は、文書テキスト解析部100における解析に必要な情報を記憶する記憶部である。解析元データ記憶部110は、例えば、解析辞書112及びシソーラス114を備える。解析辞書112は、例えば、日本語の文字列を単語へ分解する電子辞書情報であり、分解した単語に構成形態を示す情報を関連付けることを可能とする。シソーラス114も同様に、単語の文書における役割や関係性を判断する材料となる情報である。解析辞書112又はシソーラス114には、例えば、各単語に関連付けて、その単語の品詞や、単語の意味による分類を表すクラス情報など、各単語の特性を表す情報が登録される。
【0031】
図3に、文書テキスト解析部100で解析される対象文書のテキスト、及び、その解析結果のテキストを例示する。図3(a)は、対象文書のテキストの例を示す。図3(b)は、対象文書を文書テキスト解析部100が解析した結果、形態素に分解されたテキストの例を示す。図3(b)では、文字列における各単語の境界を「/」で表し、各文の境界を「//」で表す。
【0032】
文書テキスト解析部100は、図3(b)に例示するように対象文書を形態素に分解すると、分解後の各形態素に対応する各文字列(以下、「単語」と呼ぶ)について、解析元データ記憶部110を参照し、品詞やクラス情報など、その単語の特性を表す情報を取得する。
【0033】
また、文書テキスト解析部100は、分解後の各単語に基づいて、対象文書の特徴量を抽出する。特徴量は、対象文書を特徴づけるための情報である。例えば、各単語の対象文書中の出現回数及び出現位置が対象文書の特徴量として抽出される。
【0034】
文書解析結果記憶部120は、文書テキスト解析部100が対象文書を処理した結果を表す情報を記憶する記憶部である。図4に、文書解析結果記憶部120に記憶される情報の内容の一例を示す。
【0035】
図4は、図3に例示する文書を対象文書として文書テキスト解析部100が処理を行った場合に文書解析結果記憶部120に記憶されるデータ内容の例である。図4を参照すると、文書解析結果記憶部120には、対象文書を形態素に分解した結果の各単語に対応づけて、「品詞」、「クラス」、「出現回数」、及び「出現位置」の各項目が記憶されている。「品詞」の項目には、対応する単語の品詞を示す情報が記憶される。「クラス」の項目には、対応する単語の意味による分類を表す情報が記憶される。「品詞」及び「クラス」の各項目に記憶される値は、対応する単語について文書テキスト解析部100が解析辞書112又はシソーラス114を参照することで取得する値である。「出現回数」の項目には、対応する単語の対象文書中での出現回数が記憶され、「出現位置」の項目には、対応する単語の対象文書中での位置を表す情報が記憶される。
【0036】
なお、図4の例は、1つの対象文書の解析結果だけを示すが、文書解析結果記憶部120には、複数の対象文書の解析結果が記憶されていてよい。また、文書解析結果記憶部120は、図4の例の表のように対象文書の各単語に関する情報を記憶するとともに、図3(b)の例のような対象文書の解析結果テキストを記憶していてもよい。
【0037】
ポリシー適用解析部130は、文書テキスト解析部100が解析した対象文書について操作制限情報を設定する処理を行う。ポリシー適用解析部130は、文書解析結果記憶部120、ポリシー設定ルール記憶部150、ユーザ所属グループ情報記憶部140、及びコーパス160を参照して対象文書について操作制限情報を設定する。この操作制限情報は、対象文書に対する各ユーザの操作権限を表す情報である。
【0038】
ポリシー設定ルール記憶部150は、どのような文書に対してどのような操作制限情報を設定するかを規定する規則であるポリシー設定ルールを記憶する。ポリシー設定ルールの具体例を以下に示す。
【0039】
[例1]
01 <ruleset ID = "新製品広報">
02 <rule score = 2>
03 <matching-pattern>
04 <and>
05 <word class = "project code"/>
06 <or>
07 <sequence distance = 3>
08 <word>"市場導入"</word>
09 <word>"計画"</word>
10 </sequnce>
11 <sequence distance = 3>
12 <word>"開発"</word>
13 <word>"計画"</word>
14 </sequnce>
15 </or>
16 </and>
17 </matching-pattern>
18 <applying-policy>
19 <pattern>
20 <users>
21 <group ID = "development" />
22 <group ID = "marketing" />
23 <user ID = EMPLOYEE#00826 />
24 </users>
25 <operations LEVEL = 3 />
26 </pattern>
27 <pattern>
28 <users>
29 <group ID = "printer business unit" />
30 </users>
31 <operations LEVEL = 1 />
32 </pattern>
33 </applying-policy>
34 </rule>
35 <rule score = 1>
36
37 </rule>
38 <rule score = 3>
39 …
40 </rule>
41 </ruleset>
42 <defopreration LEVEL = 3 >
43 <read /> <edit /> <print />
44 </defoperation>
45 <defopreration LEVEL = 1 >
46 <read />
47 </defoperation>
【0040】
上記[例1]において、各行の左端2桁の数字は説明のための行番号を表す。[例1]は、複数のルールを含む1つのルールセットを示す。1つのルールは、文書の特徴量に関する適合条件(以下、「マッチングパターン」とも呼ぶ)と、この適合条件を満たす文書について適用される操作制限情報(以下、「適用ポリシー」とも呼ぶ)と、の組によって構成される。
【0041】
[例1]の第01行は、このルールセットの名称が「新製品広報」であることを示す。第01行から第41行は、ルールセット「新製品広報」の内容の記述である。ルールセット「新製品広報」は、3つのルールを含み、第02行から第34行の記述、第35行から第37行の記述、及び第38行から第40行の記述のそれぞれが各ルールの内容に対応する。
【0042】
各ルールには、ルールの優先度を表すスコア値が設定される。ルールの優先度は、そのルールを適用する対象の文書の機密度に対応する値である。[例1]及び以下の説明では、各ルールのスコア値は、そのルールの優先度が高い程、つまり、そのルールの適用対象の文書の機密度が高い程、大きな値に設定されるものとする。[例1]では、第02行から第34行が表すルールのスコア値は「2」(第02行)、第35行から第37行が表すルールのスコア値は「1」(第35行)、及び、第38行から第40行が表すルールのスコア値は「3」(第38行)に設定されている。
【0043】
以下、[例1]の第02行から第34行を参照し、ルールを構成する適合条件及び操作制限情報の具体例について説明する。第03行<matching-pattern>から第17行</matching-pattern>までは、このルールの適合条件を表す。適合条件は、文書解析結果記憶部120に記憶される文書の特徴量を用いて評価される論理式によって構成される。
【0044】
第04行の<and>は、ブール演算のAND演算子を表し、引数(子要素)として、第05行に記述される式、及び、第06行から第15行に記述される式をとる。
【0045】
第05行の<word class = "project code"/>は、「特定のクラス(単語の意味による分類)を有する単語が文書中に存在する」という条件を表す。ここで、「word」は、子要素に示される単語が文書中に存在すれば真(TRUE)、存在しなければ偽(FALSE)を評価値として返す演算子である。よって、第05行の論理式の評価値は、「project code」というクラスを有する単語が文書中に存在すれば真、存在しなければ偽となる。例えば、図3の例の対象文書についての図4に例示する解析結果を用いて第05行の論理式を評価する場合、図4の表には、「クラス」の項目に「project code」の値を有する単語「P08-021-XP」が存在する。つまり、クラス「project code」の単語が対象文書中に存在する。よって、図3及び図4の例の場合、第05行の論理式の評価値は真となる。
【0046】
第06行の<or>は、ブール演算のOR演算子を表し、その子要素は、第07行から第10行に記述される式、及び、第11行から第14行に記述される式である。
【0047】
第07行から第10行、及び、第11行から第14行の論理式は、いずれも、「sequence」演算子による演算を表す。「sequence」演算子は、1以上の「word」演算子の式を子要素とする。「sequence」演算子の論理式中での子要素の記述順に、各子要素で指定される単語が文書中に出現する場合、当該論理式の評価値は真となり、その他の場合の評価値は偽となる。「sequence」演算子の式では、「distance」属性が指定されることがある。このときには、子要素の記述順に、各子要素で指定される単語が「distance」属性で指定される間隔(ある形態素と他の形態素との間に出現する形態素の数)以内で文書中に出現する場合に、評価値が真となる。「distance」属性が指定されているときには、各子要素で指定される単語が子要素の記述順に出現しない場合、又は、子要素の記述順に出現する場合であって単語同士の間隔が「distance」属性で指定される間隔よりも大きい場合に、評価値が偽となる。
【0048】
以上より、第07行から第10行の論理式は、「『市場導入』という単語及び『計画』という単語がこの順に文書中に出現し、かつ、『市場導入』という単語と『計画』という単語との間に存在する単語(形態素)の個数が『3』以内である」という条件を表す。また、第11行から第14行の論理式は、「『開発』という単語及び『計画』という単語がこの順に文書中に出現し、かつ、『開発』という単語と『計画』という単語との間に存在する単語(形態素)の個数が『3』以内である」という条件を表す。
【0049】
以上で説明した第04行から第16行の論理式で表される適合条件を満たす文書について、第18行<applying-policy>から第33行</applying-policy>で表される操作制限情報(適用ポリシー)が適用される。ここで、適用ポリシーは、個々のユーザ、又は、あるグループに所属するユーザについて、適用対象の文書に関して与えられる操作権限のレベルを表す。[例1]の第18行から第33行の適用ポリシーの記述では、<pattern>と</pattern>との間の部分の記述によって、1つの操作権限のレベルと、そのレベルの操作権限を与えられるユーザ又はグループと、の対応づけを表す。例えば、第19行<pattern>から第26行</pattern>は、第20行<users>から第24行</users>が表すユーザ又はグループの所属ユーザに対して、第25行<operations LEVEL = 3 />で表されるレベル「3」の操作権限を与えることを示す。また、第27行<pattern>から第32行</pattern>は、第28行<users>から第30行</users>が表す所属グループのユーザに対して、第31行<operations LEVEL = 1 />で表されるレベル「1」の操作権限を与えることを示す。
【0050】
[例1]では、適用ポリシーの記述に含まれる操作権限レベルの具体的な内容は、ルールセットの記述(第01行〜第41行)とは別に、第42行から第47行で定義されている。第42行から第44行は、操作権限レベル「3」が、「read(閲覧)」、「edit(編集)」、及び「print(印刷)」の3種類の操作の実行を許可するレベルであることを示す。第45行から第47行は、操作権限レベル「1」が、「read(閲覧)」1種類の操作の実行のみを許可するレベルであることを示す。
【0051】
以上で説明した[例1]のようなルールセットを用いて、対象文書について、ユーザごとの操作権限を表す操作制限情報を設定することができる。
【0052】
また、ルールセットの他の例を以下に示す。
【0053】
[例2]
01 <ruleset ID = "詳細仕様">
02 <rule score = 5>
03 <matching-pattern>
04 <or>
05 <COUNT>
06 <WORD CLASS = "最高速度">
07 5
08 </COUNT>
09 <RATIO>
10 <WORD CLASS = "最高速度">
11 0.01
12 </RATIO>
13 <SIGNIFICANCE>
14 <WORD CLASS = "最高速度">
15 3.5
16 </SIGNIFICANCE>
17 </or>
18 </matching-pattern>
19 <applying-policy>
20 <pattern>
21 <users>
22
23 </users>
24 <operations LEVEL = 1 />
25 </pattern>
26
27 </applying-policy>
28 </rule>
29 </ruleset>
30 <defopreration LEVEL = 1 >
31 <read />
32 </defoperation>
【0054】
[例2]は、1つのルールを含むルールセット(名称は「詳細仕様」)を表す。このルールセットに含まれるルールには、スコア値「5」が設定されている(第02行)。[例2]のルールは、第03行〜第18行の適合条件と、第19行〜第27行の適用ポリシーと、から構成される。
【0055】
[例2]の第03行〜第18行を参照し、このルールの適合条件は、第05行〜第08行、第09行〜第12行、及び第13行〜第16行のそれぞれが表す3つの論理式のOR演算(第04行)で表される。
【0056】
第05行〜第08行は、「最高速度」というワードクラスを有する単語が文書中に5回以上出現する場合に真、当該単語の出現回数が5回未満である場合に偽の評価値を返す論理式を表す。第05行の「COUNT」演算子は、第1子要素([例2]では、第06行)で指定される単語の文書中の出現回数が第2子要素([例2]では、第07行)で表される値以上であるか否かによって評価値の真偽が決まる演算子である。
【0057】
第09行〜第12行は、「最高速度」というワードクラスを有する単語の文書構成比率が1%以上である場合に真、1%未満である場合に偽の評価値を返す論理式を表す。第09行の「RATIO」演算子は、第1子要素([例2]では、第10行)で指定される単語の文書構成比率が第2子要素([例2]では、第07行)で表される値以上であるか否かによって評価値の真偽が決定される演算子である。単語の文書構成比率は、例えば、文書解析結果記憶部120を参照して当該単語の出現回数と対象文書の大きさとを取得し、対象文書の単位長さ(例えば、1ページ)辺りの当該単語の割合を計算することで求められる。
【0058】
第13行〜第16行は、「最高速度」というワードクラスを有する単語の出現頻度が通常の平均の3.5倍以上である場合に真、3.5倍未満である場合に偽の評価値を返す論理式を表す。第13行の「SIGNIFICANCE」演算子は、第1子要素([例2]では、第14行)で指定される単語の文書構成比率が第2子要素([例2]では、第15行)で表される値以上であるか否かによって評価値の真偽が決定される演算子である。単語の出現頻度は、例えば、対象文書のテキスト量を用いて当該単語の出現回数を正規化することで求められる。各単語の出現頻度の通常の平均は、コーパス160に予め登録されており、コーパス160を参照することで求められる。
【0059】
以上の3つの論理式のいずれかが真となる場合に、[例2]のルールの適合条件は真となり、第19行〜第27行の適用ポリシーに従って対象文書の操作制限情報が設定される。
【0060】
以上、ポリシー設定ルール記憶部150に記憶されるポリシー設定ルールについて説明した。
【0061】
ユーザ所属グループ情報記憶部140は、各ユーザの所属グループを記憶する。図5に、ユーザ所属グループ記憶部に記憶される情報の内容の例を示す。図5の例では、各ユーザのユーザID(識別情報)に対応づけて、そのユーザの所属グループの識別情報が記憶される。図5を参照し、例えば、ユーザID「EMPLOYEE#00123」のユーザは、「executive-board」、「development」、及び「printer business unit」の3つのグループに所属する。なお、ユーザ所属グループ情報記憶部140は、各ユーザに対応づけて当該ユーザが所属するグループを記憶する代わりに、各グループに対応づけて、そのグループに所属するユーザを記憶するものであってもよい。ユーザと所属グループとを関連付ける情報を記憶していればよい。ユーザ所属グループ情報記憶部140を参照することで、ポリシー適用解析部130は、ポリシー設定ルール中の適用ポリシーにおいて指定されるグループに所属するユーザを特定する。
【0062】
ポリシー適用結果記憶部170は、ポリシー適用解析部130による処理の結果を記憶する。ポリシー適用結果記憶部170は、例えば、各ユーザのユーザIDに対応づけて、対象文書に関して当該ユーザに与えられる操作権限と、この操作権限の決定に用いられたルールを特定する情報と、を記憶する。
【0063】
また、ポリシー適用解析部130において複数のルールに関して対象文書を評価した結果、対象文書が複数のルールの適合条件を満たす場合がある。このような場合、適合条件が満たされる複数のルールそれぞれの適用ポリシーに従って各ユーザに与えられる操作権限を求めると、1名のユーザに対して、上述の各ルールに対応する複数種類の操作権限が求められる。この場合、1名のユーザについて求められた複数種類の操作権限は、当該ユーザに与えられる操作権限の候補としてポリシー適用結果記憶部170に記憶される。また、ポリシー適用解析部130は、1名のユーザについて求められた複数の操作権限の候補の中から、対象文書についてのアクセス制限において実際に適用する操作権限を決定し、決定した操作権限を特定する情報をポリシー適用結果記憶部170に記憶させる。
【0064】
図6は、ポリシー適用結果記憶部170に記憶される情報の内容の例を示す。図6に例示する表は、ユーザ、スコア、操作、適用ルール、適用対象、及び採用の各項目を備える。図6の表の1行の情報は、対象文書に関して1名のユーザに与えられる操作権限の候補を表す情報と、この操作権限の候補を求める際に用いられたルールに関する情報と、を含むレコードに対応する。
【0065】
図6を参照し、ユーザの項目には、対象文書の操作者となり得るユーザのユーザIDが記憶される。スコアの項目には、対応するユーザの操作権限の候補を求める際に用いられたルールのスコア値が記憶される。操作の項目の値は、対応するユーザの対象文書に関する操作権限の候補を表し、各種の操作(図6の例では、「閲覧」、「編集」、「印刷」、及び「複写」)の実行を許可するか否かを表す。図6の表では、各操作の種類の項目に「○」が設定されていればその種類の操作の実行を許可し、項目が空(値の設定なし)であればその種類の操作の実行を許可しないことを示す。適用ルールの項目には、対応するユーザの操作権限の候補の決定に用いられたルールを表す情報が記憶される。図6の表では、適用ルールの項目の値として、操作権限の候補を求める際に用いられたルールを含むルールセットの名称が記憶される。適用対象の項目には、用いられたルールの適合条件を満たす要素となった対象文書中の単語が記憶される。採用の項目は、各ユーザについて求められた操作権限の候補のうち、対象文書のアクセス制限において実際に適用される操作権限を示す。図6の例では、実際に適用される操作権限に対応する「採用」の項目の値に「○」が設定される
【0066】
ポリシー適用結果記憶部170は、さらに、各ユーザの操作権限の候補を求める際に用いられたルールの適合条件について、その適合条件を構成する各論理式の評価値を記憶する。図7は、適合条件の各論理式について記憶される評価値の例を示す。図7は、上述の[例1]のルールの適合条件(第03行〜第17行)及びこの適合条件を構成する各論理式の評価値の例である。図7では、理解を容易にするために、適合条件を構成する論理式を木構造で示す。図7を参照し、適合条件の論理式を表す木構造の各ノードに関連付けて、そのノードを根とする部分木で表される論理式の評価値(true又はfalse)が記憶される。以下、適合条件の論理式を表す木構造の部分木で表される論理式、つまり、適合条件の論理式中の演算子が用いる子要素を、適合条件の「サブパターン」と呼ぶこともある。なお、ポリシー適用結果記憶部170は、木構造と異なる他のデータ構造で各論理式の評価値を記憶しておいてもよい。
【0067】
さらに、ポリシー適用結果記憶部170は、適用されたルールの各適合条件の論理式中、評価値が真である「word」演算子の式について、各式で指定される単語の対象文書中の出現位置を記憶しておいてもよい。例えば、該当する単語について、その単語の出現位置の文書解析結果記憶部120における格納位置を記憶しておく。なお、適合条件の論理式中、評価値が真である「word」演算子の各式で指定される単語は、対応するルールに関して図6の表の「適用対象」の項目に記憶される単語に相当する。
【0068】
ポリシー表示処理部180は、ポリシー適用結果記憶部170に記憶された情報を表示装置に表示させる処理を行う。本実施形態では、ポリシー表示処理部180は、表示の内容及び態様を表す指示情報を生成してクライアント端末30に対して送信する。クライアント端末30は、この指示情報に従って表示を行なう。
【0069】
図8は、図6に例示するデータ内容がポリシー適用結果記憶部170に記憶されている場合に、ポリシー表示処理部180の処理によってクライアント端末30の表示装置に表示される画面の例を示す。図8の表は、図6に例示する表に含まれる各項目に加えて、「詳細」及び「表示」の各項目を含む。
【0070】
「詳細」項目は、表の各行に対応するルールの適合条件の詳細な情報の表示をユーザが望む場合に、その旨を表すユーザの指示を受け付けるメニュー項目である。図8の例の表示画面において、ある行の「詳細」項目中の矢印ボタンを、ユーザがクライアント端末30の入力装置を用いて選択すると、ポリシー表示処理部180は、この選択指示をクライアント端末30から受け取る。そして、選択された「詳細」項目の行に対応するルールの適合条件の詳細情報を図式的に表示させる指示情報を生成し、生成した指示情報をクライアント端末30に対して送信する。ポリシー表示処理部180からの指示情報に応じて、クライアント端末30の表示装置には、例えば図7のように、適合条件の木構造及び各サブパターンの評価値が表示される。
【0071】
「詳細」項目が選択された場合の適合条件の表示態様は、図7の例に限られない。例えば、木構造の代わりに、折りたたみリストを用いて適合条件の論理式を表しても良い。また、図7では、各サブパターンの評価値を表す文字列「true」又は「false」を各ノードに対応づけて表示するが、このような文字列を用いずに、評価値に従って異なる色で各ノードを表示させてもよい。例えば、評価値が真であるサブパターンのノードを緑色、評価値が偽であるサブパターンのノードを灰色で表示させる。
【0072】
「表示」項目は、表の各行に対応するルールの適合条件を満たす要素となった対象文書中の部分(単語)の表示をユーザが望む場合に、その旨を表すユーザの指示を受け付けるメニュー項目である。図8の例の表示画面において、ある行の「表示」項目中の矢印ボタンを、ユーザがクライアント端末30の入力装置を用いて選択すると、この選択指示は、ポリシーサーバ10の文書表示処理部190によって受け付けられ、この選択指示に応じた処理が行われる。
【0073】
文書表示処理部190は、対象文書を表示装置に表示させる処理を行う。本実施形態では、文書表示処理部190は、ポリシー適用結果記憶部170及び文書解析結果記憶部120を参照し、対象文書に対するあるユーザの操作権限の候補を求める際に用いられたルールの適合条件を満たす単語について、対象文書中の位置を特定可能な態様で対象文書をクライアント端末30の表示装置に表示させる処理を行う。文書表示処理部190は、例えば、図8の例で「表示」項目が選択された場合にクライアント端末30から取得される上述の選択指示に従って、選択されたルールの適合条件を満たす単語(つまり、図6及び図8の表の「適用対象」の項目中の単語)と対象文書中の他の単語とを異なる態様で表示させるよう指示する指示情報を生成する。そして、生成した指示情報をクライアント端末30に送信する。
【0074】
図9は、文書表示処理部190の処理によってクライアント端末30の表示装置に表示される対象文書の例である。図9は、図8の表の行R3の「表示」項目中の矢印ボタンがユーザにより選択された場合に表示される対象文書の例を示す。図9を参照し、図8の表の行R3に対応するルールの適合条件の「適用対象」である「P08-021-XP」、「市場導入」、及び「計画」の各単語には、対象文書のテキストにおいて下線を引いた状態で表示される。図9の例ではまた、指定されたルール(図8の行R3)以外のルールであって、指定されたルールと同じユーザに関連付けられたルール(図8の行R1,R2,R4)の各適合条件を満たす単語については、<>で挟んで表示される。
【0075】
また、文書表示処理部190は、ルールの適合条件のサブパターンに関連する単語を強調して対象文書を表示させる処理を行ってもよい。例えば、図8の表の「詳細」項目の選択によって表示される適合条件の木構造(図7)において、1つのノードをユーザが選択した場合、文書表示処理部190は、この選択指示をクライアント端末30から取得し、選択されたノードを根とする部分木に対応する論理式(サブパターン)を満たす対象文書中の単語を強調して対象文書を表示させる。
【0076】
図10は、図7の例の木構造の表示においてノードND1が選択された場合に、文書表示処理部190の処理によってクライアント端末30の表示装置に表示される対象文書の例を示す。図7のノードND1が表すサブパターンは、「word class = project code」である。これを満たす対象文書中の単語は、図4に例示する対象文書の解析結果を参照すると、クラスに「project code」を有する「P08-021-XP」である。図10において、図7のノードND1のサブパターンを満たす単語である「P08-021-XP」は、他の文字よりも太い文字で表示される。さらに図10では、図9の例と同様、図7の例の木構造に対応する適合条件(図8の行R3に対応)の適用対象の単語については下線を引いた状態で表示され、他の適合条件(図8の行R1,R2,R4に対応)の適用対象の単語については<>で挟んだ状態で表示される。
【0077】
また、以上のように、適合条件を図式的に表示する表示画面において、適合条件のサブパターンが選択される場合、ポリシー表示処理部180の処理により、そのサブパターンを強調して表示させてもよい。例えば、上述の図7の例において、ノードND1を強調して表示させる。
【0078】
なお、文書表示処理部190の処理によって表示される対象文書の態様は、図9及び図10の例に限られない。選択された適合条件又はそのサブパターンの適用対象の単語と、適合条件の適用対象の単語と、いずれの適合条件の適用対象でもない単語と、を互いに区別可能とする態様であればよい。
【0079】
以上で説明したポリシー表示処理部180及び文書表示処理部190によって提示される情報により、ユーザは、対象文書について、どのような適合条件が満たされることによって各ユーザに対してどのような操作権限が設定されるか、及び、対象文書中のどの部分によって適合条件が満たされるか、を知ることができる。
【0080】
なお、図8の表は、ポリシー表示処理部180が表示させる表の態様の一例にすぎない。例えば、図8の表から「採用」の項目を削除し、各ユーザについて実際に適用される操作権限に対応する行を強調表示させてもよいし、又は、他の操作権限の候補に対応する行と異なる色で表示させてもよい。各ユーザについて実際に適用される操作権限及びこの操作権限の決定に用いられたルールを、他の操作権限候補及びルールと区別できる態様で表示させればよい。
【0081】
以下、ポリシーサーバ10が行う処理の詳細を説明する。
【0082】
図11は、ポリシー適用解析部130の処理手順の例を示す。ポリシー適用解析部130は、文書テキスト解析部100から対象文書の解析を終了した旨の通知を受けた場合に、図11に例示する手順の処理を開始する。
【0083】
まず、ステップS10で、ポリシー適用解析部130は、文書テキスト解析結果記憶部から対象文書の解析結果のテキスト(例えば、図3(b))及び対象文書の解析結果を表す情報(例えば、図4の表)を取得する。
【0084】
次に、対象文書について適用する1以上のルールセットをポリシー設定ルール記憶部150から取得し(ステップS12)、取得したルールセットの中から対象ルールセットを1つ選択する(ステップS14)。さらに、対象ルールセットに含まれるルールの中から、1つのルールを選択する(ステップS16)。
【0085】
その後、ステップS18で、ポリシー適用解析部130は、文書解析結果記憶部120から取得した対象文書の解析結果を用いて、ステップS16で選択したルールの適合条件を評価する。例えば、上述の[例1]のスコア値2のルール(第02行〜第34行)をステップS16で選択した場合、対象文書の解析結果を用いて、第04行〜第16行で表される適合条件の論理式を評価する。
【0086】
ステップS20では、ステップS18における適合条件の評価結果が真であるか否かを判定する。評価結果が真であればステップS22及びステップS24の処理を行い、偽であれば、ステップS22及びステップS24の処理を行わずにステップS26に進む。
【0087】
適合条件の評価結果が真である場合に実行されるステップS22では、適合条件を構成する各論理式の評価値をポリシー適用結果記憶部170に記憶させる。すなわち、図7に例示するような各論理式の真偽値をポリシー適用結果記憶部170に記憶させる。また、適合条件を満たす対象文書中の単語の出現位置に関する情報をポリシー適用結果記憶部170に記憶させる。
【0088】
ステップS22の後、ステップS24では、ステップS16で選択したルールの適用ポリシーに従って、ユーザごとの操作権限の候補を求める。例えば、[例1]の第02行〜第34行のルールが選択されている場合、ポリシー適用解析部130は、適用ポリシー(第18行〜第33行)中の各<pattern>について、まず、<users>〜</users>の記述が表すユーザの集合を特定する。ここで、ユーザのユーザIDが記述されていれば([例1]第23行)、当該ユーザIDをユーザ集合に加える。ユーザのグループのIDが記述されていれば([例1]第21行,第22行)、ユーザ所属グループ情報記憶部140を参照し、該当するグループに所属するユーザのユーザIDを取得してユーザ集合に加える。ユーザ集合が特定されると、そのユーザ集合に含まれる各ユーザに対応する情報レコードをポリシー適用結果記憶部170において生成する。例えば、図6の表の例のレコードを生成し、「ユーザ」の項目にユーザ集合中の各ユーザのユーザIDを設定する。また、各レコードの「スコア」、「適用ルール」、及び「適用対象」の各項目に、現在の処理対象のルールのスコア値、ルールセットの名称、及び適合条件を満たす対象文書中の単語、をそれぞれ格納する。そして、ルール中の<defoperation>の記述([例1]第42行〜第47行など)を参照し、現在の処理対象である<pattern>中に記述される操作権限レベル「operations LEVEL」に対応する操作の種類を特定する。その後、ユーザ集合中の各ユーザに対応するポリシー適用結果記憶部170の各レコードの「操作」の項目において、特定した種類の操作を実行許可とする情報を設定する。以上の処理を、選択されたルールの適用ポリシー中の全<pattern>それぞれについて行なうと、ポリシー適用解析部130は、ステップS24の処理を終了する。
【0089】
ステップS26では、対象ルールセット中のすべてのルールについて処理済みであるか否かを判定する。全ルールについて処理済みであれば、ステップS28に進む。未処理のルールが存在すれば、処理はステップS26からステップS16に進み、未処理のルールの中から1つのルールを選択した上で、ステップS18以下の処理を行う。
【0090】
ステップS28では、ステップS12で取得されたルールセットのすべてについて処理済みであるか否かを判定する。全ルールセットについて処理済みであれば、ステップS30へ進む。未処理のルールセットが存在すれば、処理はステップS14に戻り、未処理のルールセットから対象ルールセットを1つ選択し、ステップS16以下の処理を行う。
【0091】
ステップS30では、ポリシー適用解析部130は、各ユーザについて、対象文書のアクセス制限において実際に適用する操作権限を決定する。ステップS10〜S28の処理では、各ユーザについて、複数の操作権限が求められる場合がある。例えば、対象文書について複数のルールの適合条件が満たされる場合、ユーザごとの操作権限を求める処理(ステップS24)が複数回行なわれ、1名のユーザに対応する複数のレコードがポリシー適用結果記憶部170に記憶される。これら複数のレコードのそれぞれには、対応する各ルールの適用ポリシーに従って求められた操作権限が記憶される。このように、1名のユーザについて操作権限(の候補)が複数求められる場合、対象文書のアクセス制限において実際に適用する操作権限を決定する必要がある。
【0092】
ステップS30では、ポリシー適用解析部130は、まず、ポリシー適用結果記憶部170に記憶されたレコードをユーザIDごとに並び替える。同一のユーザIDを有するレコードが複数存在する場合、各レコードの「スコア」の項目の値(適用ルールのスコア値)が最も大きいレコードの操作権限を、実際に適用する操作権限として決定する。スコア値が同一であるレコードが複数存在する場合は、操作権限において実行が許可される操作の種類の数が最も少ないレコードの操作権限を、実際に適用する操作権限として決定する。そして、決定した操作権限に対応するレコードの「採用」の項目の値を「○」に設定する。同一のユーザIDを有するレコードが1つしか存在しない場合は、当該レコードの操作権限を実際に適用する操作権限として決定し、当該レコードの「採用」の項目を「○」に設定する。ステップS30の後、ポリシー適用解析部130は、処理を終了する。
【0093】
図11に例示する手順の処理によると、対象文書について、その特徴量に応じて、各ユーザとそのユーザに与えられる操作権限とを表す操作制限情報が設定されてポリシー適用結果記憶部170に記憶される。また、操作制限情報の設定において用いられたルールに関する情報がポリシー適用結果記憶部170に記憶される。
【0094】
以下、図12を参照し、ポリシー表示処理部180の処理について説明する。図12は、ポリシー表示処理部180が行なう処理手順の例である。ポリシー表示処理部180は、例えば、ポリシー適用解析部130から対象文書について図11の処理を終了した旨の通知を受けた場合に、図12に例示する手順の処理を開始する。あるいは、ポリシー適用解析部130において処理済みの文書のうちの1つを特定するユーザの指示を受けた場合に、この指示によって特定された文書を対象文書として、図12に例示する手順の処理を開始してもよい。
【0095】
図12を参照し、ステップS40で、ポリシー表示処理部180は、対象文書についてポリシー適用解析部130が行なった処理の結果をクライアント端末30の表示装置に表示させる。例えば、ポリシー表示処理部180は、ポリシー適用結果記憶部170から対象文書のポリシー適用結果を取得し、取得した結果の表示態様を表す指示情報を生成してクライアント端末30に対して送信する。以下、ステップS40において、ポリシー表示処理部180は、図8に例示する表の形式で対象文書のポリシー適用結果を表示するよう指示する指示情報を送信するものとして説明する。
【0096】
次に、ステップS42で、選択された適合条件の詳細を表示するよう指示されたか否かを判定する。例えば、図8の例の表において、ある行の「詳細」項目がユーザにより選択された旨を表す選択指示をクライアント端末30から受信しているか否かを判定する。適合条件の詳細表示の指示を受けていれば、ステップS42からステップS44に進む。ステップS42で、適合条件の詳細表示の指示を受けていないと判定された場合、再びステップS42の判定が行われる。
【0097】
ステップS44では、ポリシー適用結果記憶部170を参照し、ステップS42で取得された指示において選択される適合条件について、この適合条件の各サブパターンと、その評価値と、を取得する。次に、ステップS46で、ポリシー表示処理部180は、ステップS44で取得した情報を図式的に表示させる指示情報を生成し、生成した指示情報をクライアント端末30に対して送信する。例えば、図7の例のように、適合条件の論理式を木構造で表し、各ノードの左上に当該ノードを根とする部分木で表されるサブパターンの真偽値を表示するよう指示する指示情報をクライアント端末30に対して送信する。ステップS46の後、処理はステップS42に戻り、ステップS42〜S46の処理を繰り返す。
【0098】
図13は、文書表示処理部190が行なう処理手順の例を示す。文書表示処理部190は、ルールの適合条件を指定して対象文書を表示させることを指示された場合に、図13に例示する手順の処理を開始する。例えば、図8の例の表がクライアント端末30の表示装置に表示されている場合であって図8の表のある行の「表示」項目が選択された旨を表す選択指示をクライアント端末30から取得した場合に、文書表示処理部190は、図13の例の手順の処理を開始する。
【0099】
まずステップS50で、文書表示処理部190は、ユーザにより選択されたルールの適合条件を満たす対象文書中の単語を取得する。例えば、ポリシー適用結果記憶部170から、選択された図8の表の行に対応するレコードを特定し、このレコード中の「適用対象」の項目に含まれる単語を取得する。
【0100】
次に、ステップS52で、文書表示処理部190は、選択されたルール以外のルールの適用対象の単語を取得する。例えば、ポリシー適用結果記憶部170においてステップS50で特定されたレコード中のユーザIDと同一のユーザIDを含む各レコードから、「適用対象」の項目に含まれる単語を取得する。その後、ステップS54で、文書表示処理部190は、文書解析結果記憶部120を参照し、ステップS50及びステップS52で取得した単語のそれぞれについて、対象文書中の出現位置を特定する。
【0101】
次に、ステップS56で、文書表示処理部190は、(a)選択されたルールの適用対象の単語(ステップS50で取得)、(b)その他のルールの適用対象の単語(ステップS52で取得)、及び、(c)いずれのルールの適用対象でもない単語、の3種類の単語を区別可能な態様で対象文書のテキストを表示するよう指示する指示情報をクライアント端末30に対して送信する。例えば、図9の例のように、(a)について下線を付し、(b)について<>で挟み、(c)について文字装飾なしで表示させる指示を行なう。また例えば、(a)、(b)、及び(c)をそれぞれ異なる色で表示させる指示を行なってもよい。
【0102】
ステップS56の後、文書表示処理部190は、処理を終了する。
【0103】
図14は、文書表示処理部190が行なう他の処理の手順の例を示す。文書表示処理部190は、例えば、図7の例のように適合条件がクライアント端末の表示装置に表示されている場合に、1つのノードをユーザが選択した旨を表す選択指示を受けると、図14に例示する処理を開始する。
【0104】
まず、ステップS60で、文書表示処理部190は、ポリシー適用結果記憶部170を参照し、選択されたサブパターンに対応する単語を取得する。
【0105】
次に、ステップS62で、文書解析結果記憶部120を参照し、ステップS60で取得した単語の出現位置を特定する。
【0106】
その後、ステップS64で、文書表示処理部190は、ステップS60で取得した単語と他の単語とを区別可能な態様で対象文書のテキストを表示させることを指示する指示情報をクライアント端末30に対して送信する。例えば、ステップS60で取得した単語を他の文字と比較して太い文字で表示させたり、異なる色で表示させたりする指示を行なう。
【0107】
例えば、図13の例の手順の処理によって対象文書のテキストが表示された後、図13において選択されたルールと同じルールの適合条件のサブパターンが選択されて図14の例の処理が実行された場合、図13の処理結果を反映させた上で、図14のステップS64の表示態様を決定してもよい。例えば、図13のステップS56の(a),(b),(c)と、図14のステップS64の単語と、の4種類の単語を異なる態様で表示させるようにする。
【0108】
また、例えば、ある適合条件のサブパターンが選択された場合に、この適合条件に関して図13の例の処理を行い、かつ、選択されたサブパターンについて図14の処理を行なってもよい。この場合も、図13のステップS56の(a),(b),(c)と、図14のステップS64の単語と、の4種類の単語を異なる態様で表示させる。
【0109】
上述の図10の対象文書テキストの表示例は、以上のように、図13及び図14のいずれか、又は図13及び図14の双方の処理結果を考慮して対象文書を表示させる場合の表示態様の例である。
【0110】
以上で説明したポリシー表示処理部180及び文書表示処理部190の処理により、対象文書についてどのような適合条件が満たされることで、どのような操作制限情報が設定されるかを表す情報が提示される。さらに、対象文書のどの部分(単語)によって適合条件が満たされるかを表す情報が提示される。
【0111】
文書の作成者は、特定のユーザ又は特定のグループに所属するユーザに対して特定の操作権限を与えることを意図して文書を作成する場合がある。しかしながら、ポリシーサーバ10の文書テキスト解析部100及びポリシー適用解析部130の処理により、文書の特徴量に応じた操作制限情報を文書に設定すると、あるユーザ又はグループについて、この文書の作成者が意図した操作権限と異なる操作権限が設定される可能性がある。このような場合に、以上で説明したポリシー表示処理部180及び文書表示処理部190の処理によると、文書の作成者に対して、意図した操作権限と異なる操作権限が設定された要因の判断を可能とする情報を提示できる。
【0112】
ポリシー表示処理部180及び文書表示処理部190は、文書テキスト解析部100及びポリシー適用解析部130による処理結果の文書について、文書の所定の部分を変更したと仮定した場合に設定され得る操作制限情報に関する情報を表示させる処理をさらに行ってもよい。このような処理によると、ポリシー適用解析部130により文書の作成者が意図した操作権限と異なる操作権限が設定された場合に、文書に対してどのような変更を行なえば意図した操作権限が文書に設定されるかを示す情報を文書の作成者に提示することができる。
【0113】
以下、図8及び図15から図17を主に参照し、この場合のポリシー表示処理部180及び文書表示処理部190の処理の例を説明する。
【0114】
例えば、対象文書の作成者のクライアント端末30の表示装置において、対象文書についてポリシー適用解析部130が処理を行なった結果として図8の例の表が表示されているとする。図8の表の「採用」の項目を参照すると、ユーザ「EMPLOYEE#00123」に対して実際に与えられる操作権限は、このユーザの操作権限の候補(行R1,R2,R3,R4)のうち、実行が許可される操作種類の数が最小である行R2の操作権限である。対象文書の作成者が行R2の「詳細」項目を選択すると、ポリシー表示処理部180により、行R2のルールの適合条件を図式的に表す図15の例の木構造がクライアント端末30の表示装置に表示される(図12のステップS42〜S46)。ここで、ユーザが「word class = 価格」のノードND2を指定して「仮OFF」メニューを選択したとする。このメニュー選択の指示を受けると、ポリシー表示処理部180は、図16に例示する手順の処理を開始する。
【0115】
図16を参照し、まずステップS70で、ポリシー表示処理部180は、ポリシー適用結果記憶部170を参照し、表示中の適合条件において選択されたノード(サブパターン)に対応する単語を取得する。本例では、ノードND2「word class = 価格」に対応する単語「価格」及び「XXX円/kg」が取得される。
【0116】
次に、ステップS72で、ポリシー適用結果記憶部170を参照し、表示中の適合条件に対応するレコードと同じユーザIDを有するレコードの中から、ステップS70で取得した単語を適用対象に含まないレコード(ルール)を特定する。そして、ステップS74で、ポリシー表示処理部180は、ステップS72で特定したレコードのうち、実行が許可される操作の種類の数が最小であるレコードを選択する。本例では、適用対象に「価格」及び「XXX円/kg」を含まない行R1,R3,R4のうち、実行が許可される操作種類の数が最小である行R1が選択される。
【0117】
ステップS76で、選択したルールを特定する情報を表示させる。例えば、行R1を他の行R2,R3,R4と異なる色で表示させたり、行R1を選択した旨を表示させたりする。ステップS76の後、処理は終了する。なお、ユーザによる「仮OFF」メニュー選択時に、該ユーザIDを有するレコード全てを新たな仮条件で再評価し、仮に適用するルールを求め、その結果によってノードを追加指定して上記の処理を行うような構成にしてもよい。
【0118】
また、文書表示処理部190は、図15において指定されたノードND2に対応する単語を他の単語と区別可能な態様で対象文書を表示させる処理を行う。例えば、図15の適合条件(図8の行R2に対応)について図13の例の手順の処理を行うとともに、ノードND2(サブパターン)について図14の例の手順の処理を行う。このような文書表示処理部190による処理は、例えば、ポリシー表示処理部180による図16の例の手順の処理の終了後に、文書の作成者が図8の表において行R2の「表示」項目を選択した場合に行われる。
【0119】
図17は、図15の適合条件に関して上述のような処理を文書表示処理部190が行った場合の対象文書のテキストの表示例である。図17を参照すると、図15のノードND2に対応する単語である「価格」及び「XXX円/kg」は、他の文字と比較して太い文字で表示される。また、図17の例では、図15に表示される適合条件の適用対象の単語は下線を付して、他のルールの適合条件の適用対象の単語は<>で挟んで表示される。
【0120】
文書の作成者は、図16のステップS76の表示により、図15のノードND2に対応する単語を対象文書中から削除した場合に、図8のユーザ「EMPLOYEE#00123」に対して行R1の操作権限(「閲覧」操作のみ実行可能)が与えられることを知ることができる。さらに、図18の例の対象文書の表示を参照することで、文書の作成者は、行R1の操作権限をユーザ「EMPLOYEE#00123」に対して与えるために、対象文書中のどの部分(単語)を削除すればよいかを知ることができる。
【0121】
なお、以上で説明したポリシーサーバ10の各部の機能の一部又はすべてをクライアント端末30で実現してもよい。例えば、各クライアント端末30とネットワークを介して接続された記憶装置に、解析元データ記憶部110、ユーザ所属グループ情報記憶部140、ポリシー設定ルール記憶部150、及びコーパス160のそれぞれに記憶される情報を記憶させておき、各クライアント端末30において、文書テキスト解析部100、ポリシー適用解析部130、文書解析結果記憶部120、ポリシー適用結果記憶部170、文書表示処理部190、及びポリシー表示処理部180の各機能を実現してもよい。この場合、クライアント端末30が本発明の1つの実施形態の文書作成支援装置として機能する。
【0122】
以上で説明した実施形態の文書作成支援装置は、典型的には、汎用のコンピュータにて上述の文書作成支援装置の各部の機能又は処理内容を記述したプログラムを実行することにより実現される。コンピュータは、例えば、ハードウエアとして、図18に示すように、CPU(中央演算装置)60、メモリ(一次記憶)62、各種I/O(入出力)インタフェース64などがバス66を介して接続された回路構成を有する。また、そのバス66に対し、例えばI/Oインタフェース64経由で、キーボードやマウスなどの入力装置68、及び、CRT(Cathode Ray Tube)や液晶ディスプレイなどの表示装置70が接続される。また、バス66には、I/Oインタフェース64を介して、HDD(ハードディスクドライブ)72や、CD、DVD、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体を読み取るためのディスクドライブ74が接続される。このようなドライブ72,74は、メモリに対する外部記憶装置として機能する。上述の実施形態の処理内容が記述されたプログラムがCDやDVDなどの記録媒体を経由して、又はネットワーク経由で、HDD72などの固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがメモリ62に読み出されCPU60により実行されることにより、上述の実施形態の処理が実現される。
【図面の簡単な説明】
【0123】
【図1】文書管理システムの構成例を示すブロック図である。
【図2】ポリシーサーバの構成例を示すブロック図である。
【図3】文書テキスト解析部が解析する文書のテキスト及びその解析結果のテキストの例を示す図である。
【図4】文書解析結果記憶部に記憶される情報の内容の例を示す図である。
【図5】ユーザ所属グループ情報記憶部に記憶される情報の内容の例を示す図である。
【図6】ポリシー適用結果記憶部に記憶される情報の内容の例を示す図である。
【図7】ポリシー表示処理部が表示装置に表示させる適合条件の詳細表示の例を示す図である。
【図8】ポリシー表示処理部が表示装置に表示させるポリシー適用結果の例を示す図である。
【図9】文書表示処理部が表示装置に表示させる文書の例を示す図である。
【図10】文書表示処理部が表示装置に表示させる文書の他の例を示す図である。
【図11】ポリシー適用解析部が行なう処理の手順の例を示すフローチャートである。
【図12】ポリシー表示処理部が行なう処理の手順の例を示すフローチャートである。
【図13】文書表示処理部が行なう処理の手順の例を示すフローチャートである。
【図14】文書表示処理部が行なう処理の手順の他の例を示すフローチャートである。
【図15】ポリシー表示処理部が表示装置に表示させる適合条件の詳細表示の他の例を示す図である。
【図16】ポリシー表示処理部が行なう処理の手順の他の例を示すフローチャートである。
【図17】文書表示処理部が表示装置に表示させる文書の他の例を示す図である。
【図18】コンピュータのハードウエア構成の例を示す図である。
【符号の説明】
【0124】
10 ポリシーサーバ、20 文書管理サーバ、30 クライアント端末、62 メモリ、64 インタフェース、66 バス、68 入力装置、70 表示装置、72 HDD、74 ディスクドライブ、100 文書テキスト解析部、110 解析元データ記憶部、112 解析辞書、114 シソーラス、120 文書解析結果記憶部、130 ポリシー適用解析部、140 ユーザ所属グループ情報記憶部、150 ポリシー設定ルール記憶部、160 コーパス、170 ポリシー適用結果記憶部、180 ポリシー表示処理部、190 文書表示処理部、202 文書DB。

【特許請求の範囲】
【請求項1】
文書の特徴量であって当該文書を当該文書の構成要素である文字列に分解して解析することで当該文字列に基づいて抽出される特徴量を記憶する文書特徴量記憶部と、
文書の特徴量に関する適合条件と、当該適合条件を満たす特徴量を有する文書に対する操作の制限を表す操作制限情報と、を関連付けて記憶する操作制限情報記憶部と、
対象文書について前記文書特徴量記憶部に記憶された前記特徴量が、前記操作制限情報記憶部に記憶された前記適合条件を満たすか否かを判定する判定部と、
前記判定部において満たされると判定された適合条件を特定する情報と、当該適合条件に関連付けられた前記操作制限情報と、を対応づけて表示装置に表示させる処理を行う操作制限情報表示処理部と、
を備えることを特徴とする文書作成支援装置。
【請求項2】
前記対象文書を表示装置に表示させる処理を行う文書表示処理部であって、前記操作制限情報表示処理部の処理対象である前記適合条件について、前記対象文書のうち当該適合条件を満たす特徴量に関連する文字列と、当該文字列以外の前記対象文書中の文字列と、を異なる態様で表示させる処理を行う文書表示処理部、
をさらに備えることを特徴とする請求項1に記載の文書作成支援装置。
【請求項3】
前記適合条件は、1以上の論理式によって構成され、
前記操作制限情報表示処理部の処理対象である前記適合条件を表示装置に図式的に表示させる処理を行う適合条件表示処理部であって、当該適合条件を構成する各論理式について、前記対象文書の前記特徴量を用いて当該論理式を評価した結果の真偽値に応じた態様で表示させる処理を行う適合条件表示処理部、
をさらに備えることを特徴とする請求項1又は2に記載の文書作成支援装置。
【請求項4】
前記適合条件は、1以上の論理式によって構成され、
前記操作制限情報表示処理部の処理対象である前記適合条件を表示装置に図式的に表示させる処理を行う適合条件表示処理部であって、当該適合条件を構成する各論理式について、前記対象文書の前記特徴量を用いて当該論理式を評価した結果の真偽値に応じた態様で表示させる処理を行う適合条件表示処理部、
をさらに備え、
前記文書表示処理部は、さらに、前記適合条件表示処理部によって表示される前記論理式のうち少なくとも1つを特定する指示を取得し、前記対象文書のうち、前記指示において特定された論理式の評価に用いられた前記特徴量に関連する文字列を、前記対象文書中の他の文字列と区別可能な態様で表示させる処理を行う、
ことを特徴とする請求項2に記載の文書作成支援装置。
【請求項5】
前記操作制限情報は、文書に対して実行可能な操作の種類を表す情報であり、
前記判定部において複数の前記適合条件が満たされると判定された場合に、当該複数の適合条件のそれぞれに関連付けられた前記操作制限情報のうち、実行可能な操作の種類の数が最小である操作制限情報を、前記対象文書の操作制限情報として設定する設定部、
をさらに備え、
前記操作制限情報表示処理部は、さらに、前記設定部が前記対象文書の操作制限情報として設定した操作制限情報を特定する情報を表示装置に表示させる処理を行う、
ことを特徴とする請求項1から4のいずれか1項に記載の文書作成支援装置。
【請求項6】
前記対象文書中の特定の文字列を指定する指示を取得し、取得した指示において指定された文字列を前記対象文書から削除したと仮定する仮文書に対して、前記判定部及び前記設定部による処理を行った場合に、前記設定部が前記仮文書の操作制限情報として設定する操作制限情報を特定する情報を表示装置に表示させる処理を行う仮操作制限情報表示処理部、
をさらに備えることを特徴とする請求項5に記載の文書作成支援装置。
【請求項7】
前記操作制限情報は、利用者ごとに実行可能な操作の種類を表す情報を含むことを特徴とする請求項1から6のいずれか1項に記載の文書作成支援装置。
【請求項8】
文書の特徴量であって当該文書を当該文書の構成要素である文字列に分解して解析することで当該文字列に基づいて抽出される特徴量を記憶する文書特徴量記憶部と、
文書の特徴量に関する適合条件と、当該適合条件を満たす特徴量を有する文書に対する操作の制限を表す操作制限情報と、を関連付けて記憶する操作制限情報記憶部と、
を参照可能なコンピュータに、
対象文書について前記文書特徴量記憶部に記憶された前記特徴量が、前記操作制限情報記憶部に記憶された前記適合条件を満たすか否かを判定する判定ステップと、
前記判定ステップにおいて満たされると判定された適合条件を特定する情報と、当該適合条件に関連付けられた前記操作制限情報と、を対応づけて表示装置に表示させる処理を行う表示処理ステップと、
を実行させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate


【公開番号】特開2009−193345(P2009−193345A)
【公開日】平成21年8月27日(2009.8.27)
【国際特許分類】
【出願番号】特願2008−33480(P2008−33480)
【出願日】平成20年2月14日(2008.2.14)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】