(57)【要約】【課題】  ファイルに複数のアノテーションが含まれ、検索に利用したいアノテーションがその一部であるような場合に、その一部についてのインデックス登録が自動で行われる仕組みを提供することを目的とする。【解決手段】  ファイルを管理するファイル管理システムは、ファイルに含まれる複数のアノテーションのそれぞれの情報から生成された中間データと、ファイルに含まれるアノテーションからインデックス登録対象となるアノテーションを抽出するための条件とに基づいて、前記中間データに含まれる前記条件を満たさない一部のアノテーションの情報については前記登録対象のインデックスの項目に対応付けて登録することなく、該中間データに含まれる前記条件を満たすその他のアノテーションの情報を前記登録対象のインデックスの項目に対応付けて登録する。【選択図】  図１３
2018041337.tif 000002
【特許請求の範囲】
【請求項１】
ファイルを管理するファイル管理システムであって、
ファイルに含まれるアノテーションからインデックス登録対象となるアノテーションを抽出するための条件と、登録対象のインデックスの項目とを含む設定に従い、登録されるファイルに含まれるアノテーションの情報を前記登録対象のインデックスの項目に対応付けて、前記ファイル管理システムが管理する記録部に登録する登録手段を有し、
前記登録手段は、前記ファイルに含まれる複数のアノテーションのそれぞれの情報から生成された中間データと前記条件とに基づいて、該中間データに含まれる前記条件を満たさない一部のアノテーションの情報については前記登録対象のインデックスの項目に対応付けて登録することなく、該中間データに含まれる前記条件を満たすその他のアノテーションの情報を前記登録対象のインデックスの項目に対応付けて登録することを特徴とするファイル管理システム。
【請求項２】
前記中間データは、ファイルに含まれる複数のアノテーションの情報としての文字列を用いて生成されるデータであり、
前記登録手段は、前記中間データに含まれる文字列から、前記条件としての正規表現と合致する文字列を抽出し、該抽出された文字列を前記登録対象のインデックスの項目に対応付けて登録することを特徴とする請求項１に記載のファイル管理システム。
【請求項３】
前記登録手段により登録されたインデックスを用いて、前記ファイル管理システムで管理されるファイルの検索が行われることを特徴とする請求項１または２に記載のファイル管理システム。
【請求項４】
前記登録対象のインデックスの項目として、任意の項目を設定可能であることを特徴とする請求項１乃至３のいずれか１項に記載のファイル管理システム。
【請求項５】
前記ファイルに含まれるアノテーションからインデックス登録対象となるアノテーションを抽出するための条件として、アノテーションの型を更に設定可能であることを特徴とする請求項１乃至４のいずれか１項に記載のファイル管理システム。
【請求項６】
前記ファイル管理システムは、文書管理アプリケーションが動作する情報処理装置であることを特徴とする請求項１乃至５のいずれか１項に記載のファイル管理システム。
【請求項７】
ファイルを管理するファイル管理システムの制御方法であって、
ファイルに含まれるアノテーションからインデックス登録対象となるアノテーションを抽出するための条件と、登録対象のインデックスの項目とを含む設定に従い、登録されるファイルに含まれるアノテーションの情報を前記登録対象のインデックスの項目に対応付けて、前記ファイル管理システムが管理する記録部に登録する登録工程を有し、
前記登録工程では、前記ファイルに含まれる複数のアノテーションのそれぞれの情報から生成された中間データと前記条件とに基づいて、該中間データに含まれる前記条件を満たさない一部のアノテーションの情報については前記登録対象のインデックスの項目に対応付けて登録されることなく、該中間データに含まれる前記条件を満たすその他のアノテーションの情報が前記登録対象のインデックスの項目に対応付けて登録されることを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイル管理システム、及び制御方法に関する。
【背景技術】
【０００２】
従来から、文書管理システムでは、文書などのファイルに関連付けられるインデックスを利用したファイル管理が行われている。ここで、インデックスとは、データベース上に登録される文字列やファイルの場所などの索引データを指す。インデックスの情報には、カテゴリ（インデックスの項目を指す）とインデックス値（インデックスの項目に対して設定する値を指す）とが含まれる。ユーザーは、インデックスを利用して文書の検索を行い、所望の文書ファイルを特定することができる。
【０００３】
また、文書管理システムでは、サーバーで管理される文書に対して、アノテーションと呼ばれる付加情報を付与することで、クライアント装置で文書を編集・更新することができる。アノテーションには、注釈、コメント、オブジェクトなどがある。アノテーションを利用することで、元の文書のデータを書き換えることなくデータを付加して、文書を更新することができる。
【０００４】
特許文献１には、文書のアノテーションの情報をインデックスに登録する方法が記載されている。特許文献１に記載の情報処理装置は、文書ファイルから抽出したアノテーションの情報を、検索キーワードというインデックス項目に対応するインデックス値として登録する。このようにアノテーションの情報をインデックスに登録することで、ユーザーは、アノテーションのデータを検索して所望の文書ファイルを特定することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−１８２０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述した特許文献１では、一つの文書ファイルから抽出したアノテーションの情報を分けることなく一纏めにして、検索キーワードというインデックス項目に対応するインデックス値として登録していた。従って、文書に付加されるアノテーションの数が多いほど、１つのインデックス項目に対応するインデックス値として登録される文字数が多くなる。登録される文字数が増えると、検索を実行する際に、検索される対象のインデックスの値と、検索で指定する文字列との照合の負荷が増え、結果的に検索処理に多くの時間がかかる。
【０００７】
本発明は、ファイルに複数のアノテーションが含まれ、検索に利用したいアノテーションがその一部であるような場合に、その一部についてのインデックス登録が自動で行われる仕組みを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明は、ファイルを管理するファイル管理システムであって、ファイルに含まれるアノテーションからインデックス登録対象となるアノテーションを抽出するための条件と、登録対象のインデックスの項目とを含む設定に従い、登録されるファイルに含まれるアノテーションの情報を前記登録対象のインデックスの項目に対応付けて、前記ファイル管理システムが管理する記録部に登録する登録手段を有し、前記登録手段は、前記ファイルに含まれる複数のアノテーションのそれぞれの情報から生成された中間データと前記条件とに基づいて、該中間データに含まれる前記条件を満たさない一部のアノテーションの情報については前記登録対象のインデックスの項目に対応付けて登録することなく、該中間データに含まれる前記条件を満たすその他のアノテーションの情報を前記登録対象のインデックスの項目に対応付けて登録することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ファイルに複数のアノテーションが含まれ、検索に利用したいアノテーションがその一部であるような場合に、その一部についてのインデックス登録を自動で行うことができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態に係るファイル管理システムの構成例を示す図である。
【図２】クライアント端末のハードウェア構成の一例を示す図である。
【図３】ソフトウェア構成の一例を示す図である。
【図４】文書編集アプリケーションのＵＩの一例を示す図である。
【図５】文書管理アプリケーションのＵＩの一例を示す図である。
【図６】ファイルメニューのＵＩの一例を示す図である。
【図７】注釈の抽出設定のＵＩの一例を示す図である。
【図８】抽出設定の新規追加のＵＩの一例を示す図である。
【図９】抽出設定の編集のＵＩの一例を示す図である。
【図１０】削除確認のＵＩの一例を示す図である。
【図１１】エクスポートのＵＩの一例を示す図である。
【図１２】ファイルおよびインデックス保存処理の一例を示すフローチャートである。
【図１３】インデックス登録処理の一例を示すフローチャートである。
【図１４】抽出設定テーブルの一例を示す図である。
【図１５】中間データの一例を示す図である。
【図１６】抽出設定の新規追加のＵＩの一例を示す図である。
【図１７】正規表現チェックＵＩの一例を示す図である。
【図１８】インデックスの登録処理の一例を示すフローチャートである。
【図１９】正規表現チェック処理の一例を示すフローチャートである。
【図２０】抽出設定テーブルの一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１２】
（実施例１）
図１は、本発明の実施の形態に係るファイル管理システムの構成例を示す図である。
【００１３】
図１において、クライアント端末１０１、ファイルサーバー１０２は、ネットワーク１１０を介して通信可能に接続されている。なお、クライアント端末１０１とファイルサーバー１０２は、それぞれ複数台接続されていても構わない。ネットワーク１１０は、例えば、インターネット等のＬＡＮ、ＷＡＮ、電話回線、専用デジタル回線等のいずれであり、またこれらの組み合わせにより実現される、いわゆる通信ネットワークである。ネットワーク１１０は、データの送受信が可能であればよく、有線、無線どちらでも構わない。
【００１４】
また、クライアント端末１０１は、例えば、デスクトップパソコン、ノートパソコン、モバイルパソコン、タブレット端末等から成るが、プログラムの実行環境が内蔵されたスマートフォンであってもよい。クライアント端末１０１では、アプリケーションやプリンタードライバー等のプログラムを実行する環境が内蔵されている。ファイルサーバー１０２は、文書ファイルを管理するサーバーである。クライアント端末１０１とファイルサーバー１０２は、ネットワーク１１０を通じて互いにアクセス可能である。なお、本実施例のファイル管理システムには、少なくともクライアント端末１０１が含まれるものとする。
【００１５】
図２は、クライアント端末１０１として機能する情報処理装置のハードウェア構成例を示す図である。
【００１６】
図２において、ＣＰＵ２０２は、ＨＤＤ２０５に格納されているアプリケーションプログラム、ＯＳ等を実行し、ＲＡＭ２０３にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。ＲＯＭ２０４は、基本Ｉ／Ｏプログラム等の各種データを記憶する。ＲＡＭ２０３は、ＣＰＵ２０２の主メモリ、ワークエリア等として機能する。ＨＤＤ２０５は、大容量メモリとして機能する外部記憶装置であり、アプリケーションやＷｅｂブラウザー等のアプリケーションプログラム、ＯＳ、関連プログラム等を格納している。ディスプレイ２０６は、キーボード２０７から入力したコマンド等を表示したりするものである。インターフェース２０８は、外部装置Ｉ／Ｆであり、プリンター、ＵＳＢ機器、周辺機器を接続する。キーボード／マウス２０７は、ユーザーからの指示入力を受け付ける。システムバス２０１は、クライアント端末１０１内の各コンポーネントを接続するバスである。ネットワークインターフェースカード（ＮＩＣ）２０９は、該インターフェース２０９、ネットワーク１１０を介して外部装置とのデータのやり取りを行う。
【００１７】
なお、上記コンピューターの構成はその一例であり、図２の構成例に限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてＲＯＭ２０４、ＲＡＭ２０３、ＨＤＤ２０５などで変更することも可能である。本実施例中で特に明記しない場合は、フローチャートの各ステップなどの処理は、ＲＯＭ２０４等に記憶されているプログラムをＲＡＭ２０３等にロードし、ＣＰＵ２０２で実行することによって実現されるものとする。また、以降において、ファイル管理システムの一例として文書管理システムを用いて説明を行う。
【００１８】
図２を用いて、クライアント端末１０１のハードウェア構成の一例を説明した。なお、ファイルサーバー１０２のハードウェア構成では、上述した２０１乃至２０５、２０８、２０９が少なくとも含まれる。
【００１９】
図３は、クライアント端末１０１およびファイルサーバー１０２のソフトウェア構成の一例を示す図である。
【００２０】
３０１は、文書管理システムを構成するサーバーアプリケーションを示す。本実施例の文書管理システムでは、フォルダー構造を用いて文書管理を行うことを前提とする。サーバーアプリケーションは、文書管理システムの文書データの保管および各文書に対するインデックス情報の管理などを行うソフトウェアである。サーバーアプリケーション３０１は、ファイルサーバー１０２にインストールされ、後述するクライアント端末のアプリケーションからの要求に応じて文書データ、インデックスの登録を行う。なお、インデックスを保存する記録部は、ファイルサーバー１０２内にあってもよいし、クライアント端末１０１や他の不図示のサーバー内にあってもよい。
【００２１】
３０２は、データ送受信部であり、クライアント端末のアプリケーションからの要求を受信し、要求の内容に応じてデータ管理部３０３へ文書データの処理を指示する。３０３はデータ管理部で、データ送受信部３０２の指示を受けて後述する文書データベース３０４へ文書データの入出力や検索を行う。３０４は文書データベースで、文書データの保管と各文書データとインデックスデータを管理している。
【００２２】
３０５は、ファイルサーバー１０２が管理する文書を、クライアント端末１０１で編集、印刷、保存することを可能にする文書編集アプリケーションである。文書編集アプリケーション３０５は、クライアント端末１０１にインストールされ、ユーザーからの要求に応じて、文書管理システムや後述する文書管理アプリケーション３０９が管理する文書を編集して保存することが可能である。また、文書編集アプリケーション３０５は、クライアント端末１０１にインストールされているＯＳのファイルシステムで管理されている文書に対しても編集、保存が可能である。
【００２３】
３０６は、ＵＩ部であり、後述する図４で示すユーザーインターフェースの構築や、ユーザーからの各種入力操作を受け付けて、対応する処理を後述する処理実行部３０７に指示する。３０７は、処理実行部であり、ＵＩ部３０６の指示に応じて文書の各種編集、印刷、保存処理を実行する。３０８は、文書管理システム連携部であり、文書管理システムへ文書の保存を行う際に、文書管理システムの機能を呼び出して、文書の保存やインデックスの登録を実行する。
【００２４】
３０９は、ファイルサーバー１０２と連携し、ファイルサーバー１０２が管理する文書にアクセスすることを可能にする文書管理アプリケーションである。文書管理アプリケーション３０９は、クライアント端末１０１にインストールされ、各種文書管理システムやＯＳのファイルシステムが管理する文書にアクセスを可能にして、ユーザーからの要求に応じて文書の各種操作を行うことが可能である。
【００２５】
３１０は、ＵＩ部であり、後述する図５で示すユーザーインターフェースの構築や、ユーザーからの各種入力操作を受け付けて、対応する処理を後述する処理実行部３１１に指示する。３１１は、処理実行部であり、ＵＩ部３１０の指示に応じて文書の閲覧、検索、移動、コピーなどの各種操作を実行する。３１２は、文書管理システムプラグインであり、文書管理システムのサーバーアプリケーション３０１と連携して文書管理システムが管理している文書にアクセス可能にして、処理実行部３１１が実行する各種操作を処理する。
【００２６】
図４は、文書編集アプリケーションＵＩ４００のユーザーインターフェースの一例を示している。
【００２７】
４０１は、編集メニューであり、文書編集アプリケーションが処理可能な各種編集操作を実行するための編集コントロールを表示する。図４では、タブ形式の編集メニューを示しており、アノテーション追加を行う編集コントロールを配置したアノテーションタブと印刷設定を行う編集コントロールを配置した印刷タブを示す。アノテーションとは、文書の編集等によって文書ファイルに付加されるメタデータを指す。
【００２８】
４０２乃至４０５はそれぞれ、オブジェクト、スタンプ、テキスト注釈、電子印鑑であり、文書ファイルに対して付加可能な各種アノテーションを示す。尚、文書編集アプリケーション３０５で編集（付加）した４０２乃至４０５のアノテーションから抽出設定テーブル１４００に従って抽出した文字列がインデックス登録される。抽出設定テーブル１４００については後述する。
【００２９】
４０６は、文書構造ツリーであり、編集中の文書の文書構造（章とページの構造）を示している。図中では編集中の文書Ｄｏｃｕｍｅｎｔ１は１章目のＴｅｓｔ１にページを２つ、２章目のＴｅｓｔ２にページを２つという構成であることを示している。この文書構造ツリーで章名称の変更や、章の追加などの文書構造の編集を行うことが可能である。
【００３０】
４０７は作業領域であり、編集状態に応じた文書内容を表示する文書表示領域で構成される。４０８は文書の印刷プレビューを表示する領域である。
【００３１】
図５は、文書管理アプリケーションＵＩ５００のユーザーインターフェースの一例を示している。尚、文書管理アプリケーション３０９は、単独のアプリケーションとしてクライアント端末上で起動することが可能である。
【００３２】
５０１は、ファイルメニューを示している。５０２は、文書管理アプリケーション３０９が管理している文書管理システムへのアクセスをナビゲートするナビゲーションペインを示している。ナビゲーションペインには、文書管理システムの保存領域がツリー表示され、ユーザーの指定に応答して保存領域にアクセス可能な構成となっている。ナビゲーションペイン５０２は、文書管理アプリケーションが管理する物理的に別の文書管理システムを統一的に表示可能な構成となっている。
【００３３】
５０３は、ナビゲーションペイン５０２で指定した保存領域の場所（パス）を表示するアドレスバーを示している。また、５０４はナビゲーションペイン５０２で指定した保存領域に保存されているファイルまたはフォルダーを一覧表示するファイルリストペインを示している。図５では、選択されたＣｏｍｐａｎｙフォルダー内にＳａｍｐｌｅＦｉｌｅ１、ＳａｍｐｌｅＦｉｌｅ２の文書データと、Ｄｉｖｉｓｉｏｎ１のフォルダーが表示されている例を示している。ファイルリストペイン５０４に表示されたファイルを指定することで、文書管理アプリケーション３０９は、ファイルに対する各種操作を実行可能となる。
【００３４】
５０５は、アウトプットボタンで本ボタンを選択するか又はファイルをドラック＆ドロップすることで特定の条件に基づいたメールの送信が可能となる。５０６は閉じるボタンである。
【００３５】
以上のように、文書管理アプリケーション３０９からナビゲーションペイン５０２で、所望のフォルダーなどを選択してファイルリストペイン５０４に文書を表示する。更に表示した文書をダブルクリックすることで、文書編集アプリケーション３０５が起動しアノテーションの編集及び編集後の文書及びインデックスの保存が可能となる。
【００３６】
次に、図６〜１１を用いて、文書に付加されたアノテーションの抽出設定の編集方法並びに抽出設定のエクスポート方法に関して説明する。
【００３７】
図６は、文書管理アプリケーションＵＩ５００のファイルメニュー５０１を選択時に表示するファイルメニューのＵＩの一例を示している。ファイルメニュー５０１を選択すると、処理実行部３１１がＵＩ部３１０にメニューリストを表示する。メニューリストの中のツール６０１を選択する、処理実行部３１１がＵＩ部３１０にメニューリストの子要素を表示する。メニューリストの子要素には、注釈の抽出設定６０２があり本メニューを選択すると、処理実行部３１１がＵＩ部３１０に注釈の抽出設定ＵＩ７００を表示する。
【００３８】
図７は、注釈の抽出設定ＵＩ７００の一例を示している。本ＵＩでは、ＵＩ部３１０へのユーザー操作をトリガーとして処理実行部３１１がＵＩ部３１０に各種ＵＩを表示するもとする。
【００３９】
７０１は、注釈の抽出設定の一覧を表示するリストビューである。リストビュー７０１では、抽出設定として設定された、ライブラリー７０２、プロパティー７０３、正規表現７０４を表示する。ライブラリー７０２とは、文書を管理する単位である。プロパティー７０３とは、サーバーアプリケーション３０１で設定できる文書と関連付けて保存できるインデックスの項目と同義である。正規表現７０４は、文字列パターンであり、所定のアノテーション文字列と合致するか否かを判断する際に利用する。尚、正規表現７０４は、文字列パターンとして他の任意の文字列表現（具体的な文字列を含む）でもよい。図７では、抽出設定として、ライブラリー名“文書管理システム”、プロパティー名“案件番号”、正規表現“｛ａ−ｚＡ−Ｚａ−ｚＡ−Ｚ｝・・・”が登録済みであることを示している。
【００４０】
新規追加７０５は、抽出設定を新規で追加する際に押下するボタンである。新規追加７０５を押下すると、抽出設定の新規追加ＵＩ８００を表示する。編集７０６は、既存の抽出設定の設定値を変更する際に押下するボタンである。編集７０６を押下すると、抽出設定の編集ＵＩ９００を表示する。削除７０７は、抽出設定を削除する際に押下するボタンである。削除７０７を押下すると、削除確認ＵＩ１０００を表示する。エクスポート７０８は、抽出設定を外部出力する際に押下するボタンである。エクスポート７０８を押下すると、エクスポートＵＩ１１００を表示する。７１０は閉じるボタンである。
【００４１】
図８は、抽出設定の新規追加ＵＩ８００の一例を示している。本ＵＩでは、ＵＩ部３１０へのユーザー操作をトリガーとして処理実行部３１１がＵＩ部３１０に各種ＵＩを表示するものとする。使用するライブラリー８０１は、設定の対象となるライブラリー名を示す項目である。参照８０２を押下するとライブラリー選択画面（不図示）を表示しライブラリーの選択が可能となる。
【００４２】
保存するプロパティーの項目８０３では、後述する条件に合致したアノテーションを登録するプロパティー名（インデックス項目）が表示されて、ユーザーは指定可能である。ここでは、ユーザー任意のインデックス項目を設定可能である。抽出する文字列の正規表現８０４は、アノテーション文字列にから文字を抽出する際の条件を正規表現で入力するフィールドである。入力した正規表現に基づいてアノテーションからの文字列抽出及び指定インデックスへの登録を行う。
【００４３】
大文字と小文字を区別する８０５では、正規表現と併用して大文字と小文字を区別するか否かをチェックボックスで指定する。チェックボックスを外すと、大文字と小文字を区別しないでアノテーションと正規表現１４０４とが合致するか否かの判断処理を行う。
【００４４】
ＯＫ８０６は、設定した値で、抽出設定を保存するためのボタンである。ＯＫ８０６を押下すると、文書管理アプリケーション３０９のＵＩ部３１０から指示を受けた処理実行部３１１が、ＨＤＤ２０５の後述する注釈の抽出設定テーブル１４００に設定値を保存する。ここで、正規表現８０４で入力した文字列の書式が正しくない場合、エラーダイアログ（不図示）を表示し、ユーザーに正規表現８０４の書式が正しくないことを通知する。キャンセル８０７は、抽出設定の新規追加ＵＩ８００での設定をキャンセルするためのボタンである。キャンセル８０７を押下すると、注釈の抽出設定ＵＩ７００に戻る。８０８は閉じるボタンである。
【００４５】
図９は、抽出設定の編集ＵＩ９００の一例を示している。本ＵＩでは、ＵＩ部３１０へのユーザー操作をトリガーとして処理実行部３１１がＵＩ部３１０に各種ＵＩを表示するものとする。ＯＫ９０６以外は図８の対応する８０１〜８０８の設定項目と同義のため説明を省略する。ＯＫ９０６は、設定した値で、編集対象の抽出設定の項目値を変更するためのボタンである。ＯＫ９０６を押下すると、後述する注釈の抽出設定テーブル１４００の編集対象の値を書き換え保存する。
【００４６】
図１０は、削除確認ＵＩ１０００の一例を示している。１００１はＵＩに表示する削除確認メッセージである。ＯＫ１００２は、抽出設定項目の削除を行うためのボタンである。ＯＫ１００２を押下すると、後述する注釈の抽出設定テーブル１４００から対象の抽出設定の削除を行う。キャンセル１００３は、削除をキャンセルするためのボタンである。キャンセル１００３を押下すると、注釈の抽出設定ＵＩ７００に戻る。
【００４７】
図１１は、エクスポートＵＩ１１００の一例を示している。１１０１は抽出設定のエクスポート先を選択するフォルダーのツリービューである。新しいフォルダーの作成１１０２は、ツリービュー上のフォルダーに新規でフォルダーを作成するためのボタンである。ＯＫ１１０３は、選択したフォルダーに抽出設定のエクスポートの実行を行うためのボタンである。ＯＫ１１０３を押下すると、選択したフォルダーに抽出設定が記載した設定エクスポートファイル（不図示）を生成する。キャンセル１１０４は、エクスポート処理をキャンセルするためのボタンである。キャンセル１１０４を押下すると、注釈の抽出設定ＵＩ７００に戻る。
【００４８】
次に、図１２及び図１３を用いて、文書編集アプリケーション３０５又は文書管理アプリケーション３０９からで文書を編集し、サーバーアプリケーション３０１に文書及びインデックスを登録する際の処理フローについて説明する。
【００４９】
図１２は、ファイルおよびインデックス保存処理の一例を示すフローチャートである。文書編集アプリケーション３０５や文書管理アプリケーション３０９で文書の編集、アノテーションの編集等を行い、編集した文書はサーバーアプリケーション３０１に保存される。図１２のフローチャートに示す各動作（ステップ）は、ハードウェア構成２００のＣＰＵ２０２がＨＤＤ２０５に記憶された制御プログラムを実行することにより実現される。
【００５０】
Ｓ１２０１は、文書管理アプリケーション３０９においてユーザーがＵＩ部３１０を介してファイルサーバー１０２への登録指示を行うと、処理実行部３１１が保存対象の文書の注釈の有無をチェックする。注釈がない場合、ステップＳ１２０６に進む。Ｓ１２０６は、処理実行部３１１の指示に基づき、文書管理システムプラグイン３１２を介してサーバーアプリケーション３０１への文書の保存を実行する。サーバーアプリケーション３０１では、データ送受信部３０２が受信した文書を、データ管理部３０３を介して、文書データベース３０４に格納して文書の保存処理が完了する。注釈がある場合、Ｓ１２０２に進む。
【００５１】
Ｓ１２０２では、処理実行部３１１が、ＨＤＤ２０５に注釈の抽出設定が存在するか否かをチェックする。抽出設定が存在するか否かは、注釈の抽出設定テーブル１４００に、抽出設定項目のレコードが存在するか否かで判断する。注釈の抽出設定のレコードが存在しない場合、Ｓ１２０６に進む。注釈の抽出設定のレコードが存在する場合、Ｓ１２０３に進む。
【００５２】
Ｓ１２０３では、処理実行部３１１が、保存対象の文書が注釈の抽出設定がされたライブラリーの文書か否かを判断する。注釈の抽出設定されたライブラリーの文書でない場合、Ｓ１２０６に進む。注釈の抽出設定されたライブラリーの文書の場合、Ｓ１２０４に進む。Ｓ１２０４は、インデックスの登録処理である。Ｓ１２０４の処理に関して、図１３の注釈抽出インデックス登録のフローチャートを使って説明する。
【００５３】
Ｓ１２０５は、処理実行部３１１が文書に含まれる全てのアノテーションをひとまとめにして文書管理システムプラグインを介して、サーバーアプリケーション３０１に登録する。この処理は、注釈の抽出設定を行っていない場合でも、文書に含まれる全てのアノテーションを１つのインデックスに登録しておくことができる。ここでのアノテーションをインデックスに登録する処理は従来技術と同じである。
【００５４】
図１３は、文書管理アプリケーション３０９の処理実行部３１１が、注釈の抽出設定に基づき、データを抽出し文書管理システムプラグイン３１２を介してサーバーアプリケーション３０１へのインデックス登録処理に関するフローチャートである。尚、図１３のフローチャートに示す各動作（ステップ）は、ハードウェア構成２００のＣＰＵ２０２がＨＤＤ２０５に記憶された制御プログラムを実行することにより実現される。
【００５５】
Ｓ１３０１では、処理実行部３１１が文書からインデックス登録対象の候補となる全てのアノテーションのそれぞれから文字列を取得（抽出）する。Ｓ１３０２では、処理実行部３１１がアノテーションから取得した文字列を結合し中間データ１５００を作成する。
【００５６】
ここで、図１５を用いて中間データ１５００の説明をする。中間データ１５００は、文書に含まれる複数のアノテーションから取得した文字列を区切り子で連結して作成するデータである。１５０１〜１５０５は個々にアノテーションから取得した文字列を示している。アノテーションには、テキスト、テキストボックス、コメント、スタンプ、電子印鑑、テキスト注釈などがあり、その全てをインデックス登録対象候補とする。尚、区切り子は、カンマ以外にも他の文字でもよく、又区切り子自体を使用しないで結合させてもよい。
【００５７】
図１３の説明に戻る。Ｓ１３０３では、処理実行部３１１がＨＤＤ２０５に保持している注釈の抽出設定テーブル１４００から抽出設定を取得する。抽出設定テーブル１４００については、図１４を用いて後述する。
【００５８】
Ｓ１３０４及びＳ１３１１のループ処理では、処理実行部３１１が取得した抽出設定が複数ある場合に、Ｓ１３０５からＳ１３０９の処理を抽出設定数分繰り返し行う。また、Ｓ１３０５及びＳ１３１０のループ処理では、中間データ１５００に含まれる区切り子で区切られた複数の文字列のそれぞれに対する判断処理（Ｓ１３０６からＳ１３０９）を繰り返し行う。
【００５９】
Ｓ１３０６では、中間データ１５００に含まれる対象文字列と抽出設定とを比較する。Ｓ１３０７で、比較の結果、対象の文字列が抽出設定に合致しない場合にはＳ１３０９に進む。Ｓ１３０９で、中間データの文字列を指す位置を次の文字列が対象となるように進める。前述したように、ここで中間データ１５００に含まれる複数の文字列の最後の文字列に対する処理が完了していない場合にはＳ１３０６に戻り、次の対象文字列と抽出設定と合致するかの判断処理が繰り返される。
【００６０】
Ｓ１３０７で、対象文字列が抽出設定に合致する場合、Ｓ１３０８に進む。Ｓ１３０８では、処理実行部３１１が、文書管理システムプラグイン３１２を介してサーバーアプリケーション３０１に対象文字列を、登録対象のインデックス項目に対応付けてインデックス登録する。
【００６１】
図１３で示すフローチャートの処理により、文書に含まれる複数のアノテーションのうちの抽出設定に合致する一部のアノテーションの文字列を抽出してインデックス登録することができる。一部のアノテーションの文字列を抽出して１つのインデックス項目に対応するインデックス値として登録する。その場合、複数のアノテーションの文字列をひとまとめにして１つのインデックス項目に対応するインデックス値として登録する場合と比較して、インデックス検索にかかる時間を短くすることができる。
【００６２】
ここで、図１４で示す抽出設定テーブル１４００について説明する。ＩＤ１４０１は、テーブル１４００で管理される抽出設定の識別を識別するためのＩＤである。プロパティー１４０３は、インデックス項目を示し、正規表現１４０４は、インデックス項目に対応するインデックス値を抽出するための条件を示す。以下、具体例を用いてインデックス登録を説明する。文書管理アプリケーションＵＩ５００の５０２のツリービューにおいて、ライブラリー“ＮＷ＿１”１４０２にある文書“ＳａｍｐｌｅＦｉｌｅ１”をサーバーアプリケーション３０１に保存するとする。その際に、注釈の抽出設定テーブル１４００において、ライブラリー名が一致するレコードであるＩＤ１１１１１１（１４０５）の設定を注釈の抽出設定として用いる。そして正規表現１４０４に合致する文字列を中間データ１５００から取得する。例えば、“ＢＢＢ５６７８”１５０１が、正規表現“｛ａ−ｚＡ−Ｚａ−ｚＡ−Ｚ｝｛３｝￥ｄ｛３，４｝”１４０４に合致した場合を想定する。その場合、文字列１５０１“ＢＢＢ５６７８”が、プロパティー“案件番号”（インデックス項目）に対応するインデックス値として、サーバーアプリケーション３０１に登録される。
【００６３】
以上説明したように、本実施例では、ファイルに含まれる複数のアノテーションが含まれ、検索に利用したいアノテーションがその一部であるような場合に、その一部についてのインデックスを登録した。これにより、従来のように、ファイルに含まれる複数のアノテーションを全てインデックスに登録する場合と比較して、そのインデックスを利用する検索にかかる時間を短くすることができる。
【００６４】
（実施例２）
次に、本発明の第２の実施形態について説明する。第１の実施形態で説明した注釈の抽出設定の新規追加ＵＩ８００に加えてアノテーション型を指定できるＵＩ及処理フローに関して述べる。尚、その他の構成について第１の実施形態で説明したものと同様であるため説明は省略する。
【００６５】
図１６は、抽出設定の新規追加ＵＩ１６００である。図１６では、図８で示した抽出設定の新規追加ＵＩ８００に対して、１６０３と１６０６に追加されている。１６０３は、アノテーション型の選択を行うためのコンポボックスである。アノテーション型には、テキスト、テキストボックス、コメント、スタンプ、電子印鑑等があり、インデックスとして利用したい型が決まっている場合、特定の型のアノテーションを選択して中間データ１５００を作成することが可能である。尚、アノテーション型の選択方法は、コンポボックスの他にリストボックス等を用いて複数のアノテーション型を選択することも可能である。チェック１６０６については、実施例３で後述する。
【００６６】
図２０は、実施例２の抽出設定テーブルの例を示す図である。図２０では、図１４の抽出設定テーブルに、アノテーション型２００６の項目が追加されている。
【００６７】
次に、アノテーション型を指定した場合のインデックス登録の処理フローに関して図１８を用いて説明する。
【００６８】
図１８は、図１６でアノテーション型を指定した際のインデックス登録チャート１８００である。図１８のフローチャートに示す各動作（ステップ）は、ハードウェア構成２００のＣＰＵ２０２がＨＤＤ２０５に記憶された制御プログラムを実行することにより実現される。ここでは、インデックス登録フローチャート１３００との差分である、Ｓ１８０１とＳ１８０２に関して述べる。Ｓ１８０１では、処理実行部３１１がＨＤＤ２０５に保存されている注釈の抽出設定テーブル２０００のアノテーション型２００６の値を取得する。Ｓ１８０２では、取得したアノテーション型２００６に一致するデータを取得する。以降の処理は、インデックス登録フローチャート１３００の処理と同一なので処理を省略する。
【００６９】
実施例２では、アノテーション型を指定することで、インデックス対象とする文字列を絞ることで中間データ１５００のサイズが小さくなり、正規表現に合致するか否かの判断処理が早くなり、結果としてインデックス登録処理にかかる時間が短くなる。
【００７０】
（実施例３）
次に、本発明の第３の実施形態について説明する。第１の実施形態で説明した抽出設定の新規追加ＵＩ８００に加えて正規表現のチェック機能を実行できるＵＩ及処理フローに関して述べる。尚、その他の構成について第１の実施形態で説明したものと同様であるため説明は省略する。
【００７１】
図１６は、抽出設定の新規追加ＵＩ１６００である。チェック１６０６は、正規表現のチェックを実行するための正規チェックＵＩを表示するためのボタンである。チェック１６０６を押下すると、処理実行部３１１がＵＩ部３１０に正規表現チェックＵＩ１７００を表示する。
【００７２】
図１７は、抽出設定の新規追加ＵＩ１６００で入力した正規表現のチェックを実行するためのＵＩである。１７０１は、抽出する文字列の正規表現１６０５で入力した値をデフォルト値として表示する。１７０２は、大文字と小文字を区別する１６０７で入力した値をデフォルト値として表示する。１７０３は、正規表現のチェック対象の文字列を入力するテキストボックスである。例では、“Ａ２３１１ｂ１２１２，ｒｅｗ４３４ｔｒｗ２３２，あいうえお”という文字列が入っている。１７０４は、正規表現のチェックを実行した結果を表示するテキストボックスである。例では、“Ａ２３１１ｂ１２１２，ｒｅｗ４３４ｔｒｗ２３２，あいうえお”を表示し、正規表現に合致する文字列については、１７０５の“Ａ２３１１ｂ１２１２”のように強調表示を行う。尚、正規表現に適合する際の文字列の表現に関しては、文字装飾、文字色、その他文字の表示方法を変更させてもよい。実行１７０６は、入力値に基づいて正規表現の適合チェックを実行するためのボタンである。ここで実行１７０６を押下した際の処理フローを、図１９を用いて説明する。
【００７３】
図１９は、図１７で実行１７０６を押下した際に実行する正規表現チェックフローチャート１９００である。図１９のフローチャートに示す各動作（ステップ）は、ハードウェア構成２００のＣＰＵ２０２がＨＤＤ２０５に記憶された制御プログラムを実行することにより実現される。
【００７４】
Ｓ１９０１では、処理実行部３１１がＵＩ部３１０に入力された正規表現１７０１を取得する。次にＳ１９０２では、処理実行部３１１がＵＩ部３１０に入力された対象文字列１７０３を取得する。Ｓ１９０３では、処理実行部３１１において対象文字列１７０３と正規表現１７０１と合致するかどうかの判定処理を対象文字列の文字数分繰り返し実施する。Ｓ１９０４では、対象文字列１７０３が正規表現１７０１と合致するか否かを判断する。Ｓ１９０５では、合致しない場合、Ｓ１９０７に進みＵＩ部３１０を介して結果１７０４に文字列を通常表示する。Ｓ１９０８では、対象文字列の位置を進める。合致する場合、Ｓ１９０６に進み、ＵＩ部３１０を介して結果１７０４に合致した文字列を強調表示する。以上の処理フローにより、処理実行部３１１がＵＩ部３１０を介して、結果１７０４に適合チェックの処理結果の表示を行う。
【００７５】
実施例３では、正規表現及び対象文字列をチェック用のＵＩを介してチェックすることで、事前に正規表現の書式チェックが可能となり、正規表現の不備による不要な手戻りを防止できる。
【００７６】
（他の実施例）
本発明は、上述した実施形態を適宜組み合わせることにより構成された装置あるいはシステムやその方法も含まれるものとする。
【００７７】
ここで、本発明は、上述した実施形態の機能を実現する１つ以上のソフトウェア（プログラム）を実行する主体となる装置あるいはシステムである。また、その装置あるいはシステムで実行される上述した実施形態を実現するための方法も本発明の１つである。また、そのプログラムは、ネットワークまたは各種記憶媒体を介してシステムあるいは装置に供給され、そのシステムあるいは装置の１つ以上のコンピューター（ＣＰＵやＭＰＵ等）によりそのプログラムが読み出され、実行される。つまり、本発明の１つとして、さらにそのプログラム自体、あるいは当該プログラムを格納したコンピューターにより読み取り可能な各種記憶媒体も含むものとする。また、上述した実施形態の機能を実現する回路（例えば、ＡＳＩＣ）によっても、本発明は実現可能である。
【符号の説明】
【００７８】
１０１  クライアント端末
１０２  ファイルサーバー
１１０  ネットワーク
２０２  ＣＰＵ
３０９  文書管理アプリケーション
３１１  処理実行部
【図１】
2018041337.tif 000003
【図２】
2018041337.tif 000004
【図３】
2018041337.tif 000005
【図４】
2018041337.tif 000006
【図５】
2018041337.tif 000007
【図６】
2018041337.tif 000008
【図７】
2018041337.tif 000009
【図８】
2018041337.tif 000010
【図９】
2018041337.tif 000011
【図１０】
2018041337.tif 000012
【図１１】
2018041337.tif 000013
【図１２】
2018041337.tif 000014
【図１３】
2018041337.tif 000015
【図１４】
2018041337.tif 000016
【図１５】
2018041337.tif 000017
【図１６】
2018041337.tif 000018
【図１７】
2018041337.tif 000019
【図１８】
2018041337.tif 000020
【図１９】
2018041337.tif 000021
【図２０】
2018041337.tif 000022