(57)【要約】【課題】効率的なファイル検索を支援すること。【解決手段】生成手段１ｂは、記憶手段１ａに格納された第１のファイル２を取得して、第１のファイル２に含まれる要素２ａ，２ｂに応じたタグＡ，Ｂを含む第２のファイル３を生成する。そして、生成手段１ｂは、タグＡ，Ｂに基づいて第２のファイル３に含まれる１またはそれ以上の文字列を抽出して、第２のファイル３と抽出した文字列とを対応付けて記憶手段１ａに格納する。検索手段１ｃは、文字列が入力されると、記憶手段１ａを参照して、入力された文字列に対応する第２のファイル３を検索し、検索結果を出力する。【選択図】図１
2013077150.tif 000002
【特許請求の範囲】
【請求項１】
記憶手段に格納された第１のファイルを取得して、前記第１のファイルに含まれる１またはそれ以上の要素に応じた１またはそれ以上のタグを含む第２のファイルを生成し、前記１またはそれ以上のタグに基づいて前記第２のファイルに含まれる１またはそれ以上の文字列を抽出して、前記第２のファイルと抽出した文字列とを対応付けて前記記憶手段に格納し、
文字列が入力されると、前記記憶手段を参照して、入力された文字列に対応する前記第２のファイルを検索し、検索結果を出力する、
処理をコンピュータに実行させるファイル管理プログラム。
【請求項２】
文字列を抽出する際に、該文字列を含むタグを検出し、該タグに応じた属性情報を決定して、前記第２のファイルおよび抽出した文字列に対応付けて前記記憶手段に格納し、
文字列とともに属性情報が入力されると、前記記憶手段を参照し、入力された文字列および属性情報に対応する前記第２のファイルを検索する、
請求項１記載のファイル管理プログラム。
【請求項３】
前記属性情報を決定する際に、前記文字列を含むタグおよび該タグ内の属性に応じた前記属性情報を決定する、請求項２記載のファイル管理プログラム。
【請求項４】
前記第２のファイルを生成する際に、前記第１のファイルの格納場所を示す情報を前記第２のファイルに追加する、請求項１乃至３の何れか一項に記載のファイル管理プログラム。
【請求項５】
前記第２のファイルを生成する際に、前記第１のファイルに含まれる第１の要素と第２の要素との位置関係に基づいて、前記第１の要素を示す第１のタグで囲われた第２のタグまたは前記第１のタグ内の所定の属性に、前記第２の要素の情報を含める、請求項１乃至４の何れか一項に記載のファイル管理プログラム。
【請求項６】
前記記憶手段には、前記第２のファイルが属する分類を対応付けたファイル分類情報が格納されており、
文字列および分類が入力されると、前記記憶手段に記憶された前記ファイル分類情報に基づき、入力された分類で前記検索結果を絞り込む、
請求項１乃至５の何れか一項に記載のファイル管理プログラム。
【請求項７】
前記第２のファイルは、ウェブブラウザにより内容を閲覧可能なファイルである、請求項１乃至６の何れか一項に記載のファイル管理プログラム。
【請求項８】
記憶手段に格納された第１のファイルを取得して、前記第１のファイルに含まれる１またはそれ以上の要素に応じた１またはそれ以上のタグを含む第２のファイルを生成し、前記１またはそれ以上のタグに基づいて前記第２のファイルに含まれる１またはそれ以上の文字列を抽出して、前記第２のファイルと抽出した文字列とを対応付けて前記記憶手段に格納する生成手段と、
文字列が入力されると、前記記憶手段を参照して、入力された文字列に対応する前記第２のファイルを検索し、検索結果を出力する検索手段と、
を有する情報処理装置。
【請求項９】
コンピュータが実行するファイル管理方法であって、
記憶手段に格納された第１のファイルを取得して、前記第１のファイルに含まれる１またはそれ以上の要素に応じた１またはそれ以上のタグを含む第２のファイルを生成し、前記１またはそれ以上のタグに基づいて前記第２のファイルに含まれる１またはそれ以上の文字列を抽出して、前記第２のファイルと抽出した文字列とを対応付けて前記記憶手段に格納し、
文字列が入力されると、前記記憶手段を参照して、入力された文字列に対応する前記第２のファイルを検索し、検索結果を出力する、
ファイル管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はファイル管理プログラム、情報処理装置およびファイル管理方法に関する。
【背景技術】
【０００２】
複数の情報処理装置で扱うファイルをネットワークで接続されたサーバ装置に格納することがある。サーバ装置は、ファイルを一元管理して共有化や冗長化などを行いファイルへのアクセス性や安全性の向上を図る。このようなサーバ装置はファイルサーバと呼ばれることがある。
【０００３】
ファイルサーバは、多数のファイルを記憶する。このため、ファイルサーバはファイルを検索し易くするため、各ファイルに含まれる文字列をインデックスとして抽出する。ファイルサーバは、ユーザにより入力された文字列とインデックスとを用いて、ファイルを高速に検索できる。しかし、テキスト以外の形式のファイルではインデックス抽出や文字列による検索を行えない。そこで、テキスト抽出が困難な登録文書について、登録文書とともにテキスト抽出のための別ファイルをクライアント装置で指定して、サーバ装置にアップロードする提案がある（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２７２１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、ファイルサーバには種々の装置がアクセスし得る。特に、携帯端末装置は、デスクトップ型／ラップトップ型の情報処理装置に比べて表示画面が小さく、一度に表示可能な情報量も少ない。このため、携帯端末装置からの検索依頼を受け得る場合には、ユーザの求めるファイルを、検索結果として的確に提示可能にしたいという要求がある。
【０００６】
例えば、詳細な検索を可能とするために、ユーザがファイルに対して検索用の付加的な情報を別個に用意し、ファイル内テキストに加えて該情報も検索条件として指定可能とすることが考えられる。しかし、この方法では、ファイルに情報を付加するためのユーザの作業負担が生じてしまう。
【０００７】
そこで、効率的なファイル検索を支援する仕組みを実現するために、どのようにしてファイルを管理すればよいかが問題となる。
一側面では、本発明は、効率的なファイル検索を支援するファイル管理プログラム、情報処理装置およびファイル管理方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
一実施態様によれば、ファイル管理プログラムが提供される。このファイル管理プログラムは、記憶手段に格納された第１のファイルを取得して、第１のファイルに含まれる１またはそれ以上の要素に応じた１またはそれ以上のタグを含む第２のファイルを生成し、１またはそれ以上のタグに基づいて第２のファイルに含まれる１またはそれ以上の文字列を抽出して、第２のファイルと抽出した文字列とを対応付けて記憶手段に格納し、文字列が入力されると、記憶手段を参照して、入力された文字列に対応する第２のファイルを検索し、検索結果を出力する、処理をコンピュータに実行させる。
【０００９】
また、一実施態様によれば、情報処理装置が提供される。この情報処理装置は、生成手段と検索手段とを有する。生成手段は、記憶手段に格納された第１のファイルを取得して、第１のファイルに含まれる１またはそれ以上の要素に応じた１またはそれ以上のタグを含む第２のファイルを生成し、１またはそれ以上のタグに基づいて第２のファイルに含まれる１またはそれ以上の文字列を抽出して、第２のファイルと抽出した文字列とを対応付けて記憶手段に格納する。検索手段は、文字列が入力されると、記憶手段を参照して、入力された文字列に対応する第２のファイルを検索し、検索結果を出力する。
【００１０】
また、一実施態様によれば、コンピュータが実行するファイル管理方法が提供される。このファイル管理方法では、記憶手段に格納された第１のファイルを取得して、第１のファイルに含まれる１またはそれ以上の要素に応じた１またはそれ以上のタグを含む第２のファイルを生成し、１またはそれ以上のタグに基づいて第２のファイルに含まれる１またはそれ以上の文字列を抽出して、第２のファイルと抽出した文字列とを対応付けて記憶手段に格納する。文字列が入力されると、記憶手段を参照して、入力された文字列に対応する第２のファイルを検索し、検索結果を出力する。
【発明の効果】
【００１１】
一実施態様によれば、効率的なファイル検索を支援することができる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施の形態に係る情報処理装置を示す図である。
【図２】第２の実施の形態に係る情報処理システムを示す図である。
【図３】ファイルサーバのハードウェア例を示す図である。
【図４】クライアントのハードウェア例を示す図である。
【図５】情報処理システムのソフトウェア例を示す図である。
【図６】ファイルサーバのディレクトリツリーの例を示す図である。
【図７】格納ファイルの例を示す図である。
【図８】表示用ファイルの例を示す図である。
【図９】表示用ファイルの生成例を示す図である。
【図１０】インデックステーブルの例を示す図である。
【図１１】ファイル管理データの例を示す図である。
【図１２】参照履歴データの例を示す図である。
【図１３】検索画面の例を示す図である。
【図１４】表示用ファイル生成処理を示すフローチャートである。
【図１５】ファイル検索処理を示すフローチャートである。
【図１６】表示用ファイルを用いたクライアント制御の例を示す図である。
【発明を実施するための形態】
【００１３】
以下、本実施の形態を図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態に係る情報処理装置を示す図である。情報処理装置１は、種々のファイルを管理する装置である。情報処理装置１は、ＣＰＵ（Central Processing Unit）などのプロセッサとＲＡＭ（Random Access Memory）などのメモリとを備えてもよく、メモリに記憶されたプログラムをプロセッサが実行するコンピュータであってもよい。情報処理装置１は、記憶手段１ａ、生成手段１ｂおよび検索手段１ｃを有する。
【００１４】
記憶手段１ａは、第１のファイル２および第２のファイル３を記憶する。第１のファイル２は、ユーザが記憶手段１ａに格納したオリジナルのファイルである。第１のファイル２は、要素２ａ，２ｂを含む。要素２ａは、例えば表内の文字列“項目Ｘ１”である。要素２ｂは、例えば図である。例えば、ユーザは、自身の操作するクライアント装置から、ネットワークを介して情報処理装置１にアクセスし、第１のファイル２を記憶手段１ａに格納できる。
【００１５】
第２のファイル３は、第１のファイル２に基づいて、生成手段１ｂにより生成されたファイルである。第２のファイル３は、第１のファイル２に含まれる要素２ａ，２ｂに応じたタグＡ，Ｂを含む。タグを含む第２のファイル３の形式としては、例えば、ＨＴＭＬ（HyperText Markup Language）やＸＭＬ（eXtensible Markup Language）などが考えられる。第２のファイル３では、複数のタグを用いて１つの要素が記述されてもよい。
【００１６】
記憶手段１ａは、ＨＤＤ（Hard Disk Drive）などのディスク装置によって実装されてもよい。また、記憶手段１ａとは異なる記憶手段を設けて、第１のファイル２および第２のファイル３を別個の記憶手段に格納してもよい。
【００１７】
生成手段１ｂは、記憶手段１ａに格納された第１のファイル２を取得して、第２のファイル３を生成する。生成手段１ｂは、第１のファイル２内の要素間の位置関係に基づいて、タグ内の属性に値を設定することもできる。例えば、図の要素２ｂの付近に図のタイトルを示す文字列が存在する場合に、該文字列をタグＢ内の“属性Ｙ”に設定する。例えば、ＨＴＭＬでいえば図の要素を示す“＜ｉｍａｇｅ＞”タグ内において、図のタイトルを示す“ｔｉｔｌｅ”属性に“図面Ｚ１”などの文字列を設定することが考えられる。
【００１８】
生成手段１ｂが第１のファイル２を取得するタイミングとしては、例えば、記憶手段１ａに第１のファイル２が格納されたタイミングや所定の時間に達したタイミングなどが考えられる。
【００１９】
生成手段１ｂは、タグＡ，Ｂに基づいて第２のファイル３に含まれる１またはそれ以上の文字列を抽出する。例えば、要素２ａに対して第２のファイル３からタグＡで示される“項目Ｘ１”の文字列を抽出できる。また、例えば、要素２ｂに対して第２のファイル３からタグＢ内の属性“属性Ｙ”で示される“図面Ｚ１”の文字列を抽出できる。ＨＴＭＬの例でいえば、図の要素を示す“＜ｉｍａｇｅ＞”タグ内から、図のタイトルを示す“ｔｉｔｌｅ”属性を検出することで該文字列の抽出を行える。
【００２０】
生成手段１ｂは、第２のファイル３と抽出した文字列とを対応付けて記憶手段１ａに格納する。例えば、第２のファイル３と“項目Ｘ１”の文字列とを対応付けて記憶手段１ａに格納する。また、例えば、第２のファイル３と“図面Ｚ１”の文字列とを対応付けて記憶手段１ａに格納する。このとき、“項目Ｘ１”の文字列を含むタグや“図面Ｚ１”の文字列を含むタグ（および属性）に基づいて、各文字列に文書内での属性情報（例えば、図タイトルなど）を対応付けてもよい。
【００２１】
検索手段１ｃは、文字列が入力されると、記憶手段１ａを参照して、入力された文字列に対応する第２のファイル３を検索し、検索結果を出力する。例えば、ユーザは、自身の操作するクライアント装置から、ネットワークを介して情報処理装置１にアクセスし、ファイルを検索するための検索用の文字列を情報処理装置１に入力できる。例えば、検索手段１ｃは、“項目Ｘ１”という文字列に対する検索結果として、該文字列を含む第２のファイル３を出力する。また、検索手段１ｃは、“図面Ｚ１”という文字列に対する検索結果として該文字列を含む第２のファイル３を出力する。このとき、“図面Ｚ１”という文字列に対して“図タイトル”という属性情報が対応付けられている場合、検索用の文字列とともに該属性情報を取得して、検索を行うこともできる。例えば、該属性情報を指定することで“図タイトル”として文字列“図面Ｚ１”を含むファイルを検索することも可能となる。
【００２２】
情報処理装置１によれば、生成手段１ｂにより、記憶手段１ａに格納された第１のファイル２が取得され、第１のファイル２に含まれる要素２ａ，２ｂに応じたタグＡ，Ｂを含む、第２のファイル３が生成される。生成手段１ｂにより、タグＡ，Ｂに基づいて第２のファイル３に含まれる１またはそれ以上の文字列が抽出される。生成手段１ｂにより、第２のファイル３と抽出された文字列とが対応付けられて記憶手段１ａに格納される。文字列が入力されると、検索手段１ｃにより、記憶手段１ａが参照され、入力された文字列に対応する第２のファイル３が検索され、検索結果が出力される。
【００２３】
これにより、効率的なファイル検索を支援することができる。具体的には、第１のファイル２に基づき第２のファイル３を生成し、タグに基づいて文字列を抽出するので、第１のファイル２から文字列を抽出する場合よりも、詳細なインデックスを作成できる。例えば、タグやタグ内の属性が示す内容に対応付けて、抽出した文字列をインデックスに追加することで、文書内での属性情報を該文字列に与えることができる。具体的には、その文字列に対して、文書のタイトル、図のタイトル、表内の文字列などの属性情報を与えることが考えられる。該文書内での属性情報とともに文字列の検索を行えば、検索結果を一層効率的に絞り込むことが可能となる。更に、上記のような詳細なインデックスを作成する際にタグを用いることで、ユーザに付加的な情報を作成させるのを回避できる。よって、ユーザによる作業の省力化を図れる。
【００２４】
また、第２のファイル３をＨＴＭＬ形式などで生成するので、該検索した第２のファイル３をクライアント装置に送信すれば、クライアント装置では、該装置が備える所定のＷｅｂブラウザによって、第２のファイル３の内容を閲覧することができる。
【００２５】
ここで、クライアント装置が携帯端末装置である場合、他の装置（デスクトップ型の情報処理装置など）で動作可能なアプリケーションを、該携帯端末装置では動作させることが困難なこともある。この場合、オリジナルのファイル（第１のファイル２）を携帯端末装置に提供しても、該ファイルの内容を閲覧するのが困難となり不便なこともある。一方で、携帯端末装置であってもＷｅｂブラウザは利用可能なことが多い。そこで、上記のようにＨＴＭＬ形式などで生成した第２のファイル３を携帯端末装置に提供すれば、携帯端末装置でも容易に該ファイルの内容を閲覧可能となる。
【００２６】
なお、記憶手段１ａ，生成手段１ｂおよび検索手段１ｃを情報処理装置１で実現するものとしたが、これらの各手段を別個の装置上で実現してもよい。例えば、記憶手段１ａをストレージ装置で実現し、生成手段１ｂおよび検索手段１ｃを異なる２つの情報処理装置で実現してもよい。
【００２７】
［第２の実施の形態］
図２は、第２の実施の形態に係る情報処理システムを示す図である。第２の情報処理システムは、クライアント装置で利用するファイルをサーバ装置で一元管理するシステムである。第２の情報処理システムは、ファイルサーバ１００およびクライアント２００，３００を含む。ファイルサーバ１００およびクライアント２００は、ネットワーク１０およびアクセスポイント２０を介して接続されている。ファイルサーバ１００およびクライアント３００はネットワーク１０を介して接続されている。ネットワーク１０はＬＡＮ（Local Area Network）でもよい。ネットワーク１０はインターネットなどの広域ネットワークでもよい。更に、クライアント２００とアクセスポイント２０との間は無線で接続する。該無線による通信は、無線ＬＡＮでもよい。クライアント２００は、基地局（図示を省略）と無線通信し、移動通信網（図示を省略）およびネットワーク１０を介してファイルサーバ１００にアクセスしてもよい。
【００２８】
ファイルサーバ１００は、クライアント２００，３００で使用するファイルを一元的に記憶するサーバ装置である。ファイルサーバ１００は、Ｗｅｂサーバの機能も備えており、ファイル操作を支援するためのＧＵＩ（Graphical User Interface）をクライアント２００，３００に提供する。
【００２９】
クライアント２００は、ユーザが使用するクライアント装置である。クライアント２００は携帯端末装置であり、アクセスポイント２０と無線通信する。クライアント２００はＷｅｂブラウザを備えており、ファイルサーバ１００へのＷｅｂアクセスが可能である。なお、クライアント２００を複数台用意して、複数のユーザが個々に所持して利用してもよい。
【００３０】
クライアント３００は、ユーザが使用するクライアント装置である。クライアント３００は、ラップトップ型のコンピュータである。クライアント３００は、ネットワーク１０に有線または無線で接続し、ファイルサーバ１００にアクセスできる。クライアント３００はＷｅｂブラウザを備えており、ファイルサーバ１００へのＷｅｂアクセスが可能である。
【００３１】
ここで、クライアント３００は、クライアント２００よりも大型であり、クライアント２００と比べて、実装されるハードウェアの性能も高い。このため、動作に高い処理能力を要求されるアプリケーションを利用することができる。
【００３２】
一方で、クライアント２００は、クライアント３００よりも小型である。このため、クライアント２００では、ディスプレイに一度に表示可能な情報もクライアント３００に比べて少ない。また、クライアント３００に比べてハードウェアの性能は低い。このため、クライアント３００で利用可能なアプリケーションであっても、クライアント２００で利用することが困難な場合がある。また、両者で実行されるＯＳ（Operating System）が異なるときは、クライアント３００で利用可能なアプリケーションが、クライアント２００のＯＳでサポートされていないこともある。その場合、クライアント３００のアプリケーションで作成されたファイルをクライアント２００で閲覧することが困難な場合がある。
【００３３】
ファイルサーバ１００は、クライアント３００が格納したファイルをクライアント２００からでも効率的に検索・閲覧できる環境を提供する。以下では、このようなファイル管理を行う情報処理システムの構成を具体的に説明する。
【００３４】
図３は、ファイルサーバのハードウェア例を示す図である。ファイルサーバ１００は、ＣＰＵ１０１、ＲＯＭ（Read Only Memory）１０２、ＲＡＭ１０３、ＨＤＤ１０４、画像信号処理部１０５、入力信号処理部１０６、ディスクドライブ１０７および通信部１０８を有する。各ユニットがファイルサーバ１００のバスに接続されている。クライアント３００もファイルサーバ１００と同様のハードウェアを用いて実装できる。
【００３５】
ＣＰＵ１０１は、ファイルサーバ１００の情報処理を制御するプロセッサである。ＣＰＵ１０１は、ＨＤＤ１０４に記憶されているプログラムやデータの少なくとも一部を読み出し、ＲＡＭ１０３に展開してプログラムを実行する。なお、ファイルサーバ１００は、複数のプロセッサを設けて、プログラムを分散して実行してもよい。
【００３６】
ＲＯＭ１０２は、ファイルサーバ１００の起動時に実行されるＢＩＯＳ（Basic Input / Output System）プログラムなどの所定のプログラムを記憶する。ＲＯＭ１０２は、書き換え可能な不揮発性メモリであってもよい。
【００３７】
ＲＡＭ１０３は、ＣＰＵ１０１が実行するプログラムや処理に用いるデータを一時的に記憶する揮発性メモリである。なお、ファイルサーバ１００は、ＲＡＭ以外の種類のメモリを備えてもよく、複数個のメモリを備えていてもよい。
【００３８】
ＨＤＤ１０４は、ＯＳプログラムやアプリケーションプログラムなどのプログラムおよびデータを記憶する不揮発性の記憶装置である。ＨＤＤ１０４は、ＣＰＵ１０１の命令に従って、内蔵の磁気ディスクに対してデータの読み書きを行う。なお、ファイルサーバ１００は、ＨＤＤ以外の種類の不揮発性の記憶装置（例えば、ＳＳＤ（Solid State Drive）など）を備えてもよく、複数の記憶装置を備えていてもよい。
【００３９】
画像信号処理部１０５は、ＣＰＵ１０１の命令に従って、ファイルサーバ１００に接続されたディスプレイ１１に画像を出力する。ディスプレイ１１としては、例えば、ＣＲＴ（Cathode Ray Tube）ディスプレイや液晶ディスプレイを用いることができる。
【００４０】
入力信号処理部１０６は、ファイルサーバ１００に接続された入力デバイス１２から入力信号を取得し、ＣＰＵ１０１に出力する。入力デバイス１２としては、例えば、マウスやタッチパネルなどのポインティングデバイス、キーボードなどを用いることができる。
【００４１】
ディスクドライブ１０７は、記録媒体１３に記録されたプログラムやデータを読み取る駆動装置である。記録媒体１３として、例えば、フレキシブルディスク（ＦＤ：Flexible Disk）やＨＤＤなどの磁気ディスク、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）などの光ディスク、光磁気ディスク（ＭＯ：Magneto-Optical disk）を使用できる。ディスクドライブ１０７は、例えば、ＣＰＵ１０１の命令に従って、記録媒体１３から読み取ったプログラムやデータをＲＡＭ１０３またはＨＤＤ１０４に格納する。
【００４２】
通信部１０８は、ネットワーク１０を介してクライアント２００，３００と通信を行う通信インタフェースである。通信部１０８は、有線通信インタフェースでもよいし、無線通信インタフェースでもよい。
【００４３】
図４は、クライアントのハードウェア例を示す図である。クライアント２００は、ＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３、記録媒体読取部２０４、無線通信部２０５、アンテナ２０５ａ、画像信号処理部２０６、ディスプレイ２０６ａ、入力信号処理部２０７、タッチパネル２０７ａ，キーパッド２０７ｂ、音声信号処理部２０８、マイク２０８ａおよびスピーカ２０８ｂを有する。各ユニットがファイルサーバ１００のバスに接続されている。
【００４４】
ＣＰＵ２０１は、クライアント２００の情報処理を制御するプロセッサである。ＣＰＵ２０１は、ＲＡＭ２０３に記憶されているプログラムやデータの少なくとも一部を読み出し、ＲＡＭ２０３に展開してプログラムを実行する。なお、クライアント２００は、複数のプロセッサを設けて、プログラムを分散して実行してもよい。
【００４５】
ＲＯＭ２０２は、クライアント２００の起動時に実行されるＢＩＯＳ（Basic Input / Output System）プログラムなどの所定のプログラムを記憶する。ＲＯＭ２０２は、書き換え可能な不揮発性メモリであってもよい。
【００４６】
ＲＡＭ２０３は、ＣＰＵ２０１が実行するプログラムや処理に用いるデータを一時的に記憶する揮発性メモリである。なお、クライアント２００は、ＲＡＭ以外の種類のメモリを備えてもよく、複数個のメモリを備えていてもよい。
【００４７】
記録媒体読取部２０４は、記録媒体１４に記憶されたデータを読み取り、また、記録媒体１４にデータを格納する。記録媒体１４としては、例えば、半導体メモリを使用できる。
【００４８】
無線通信部２０５は、無線信号処理を行い、アクセスポイント２０との間での無線通信を実現する。無線通信部２０５は、アクセスポイント２０からアンテナ２０５ａを介して受信した信号を復調・復号し、得られた受信データをＣＰＵ２０１に出力する。また、無線通信部２０５は、ＣＰＵ２０１から取得した送信データを符号化・変調し、得られた送信信号をアンテナ２０５ａを介してアクセスポイント２０へ送信する。
【００４９】
画像信号処理部２０６は、ＣＰＵ２０１の命令に従って、ディスプレイ２０６ａに画像を出力する。ディスプレイ２０６ａとしては、例えば、液晶ディスプレイを用いることができる。
【００５０】
入力信号処理部２０７は、タッチパネル２０７ａに対するタッチ操作やキーパッド２０７ｂに対するキー押下を検出すると、該タッチ操作や押下されたキーなどを示す入力信号を取得し、ＣＰＵ２０１に出力する。
【００５１】
音声信号処理部２０８は、マイク２０８ａから音声アナログ信号を取得し、所定の信号変換処理を行ってＣＰＵ２０１に音声データを出力する。また、音声信号処理部２０８は、ＣＰＵ２０１から音声データを取得し、所定の信号変換処理を行ってスピーカ２０８ｂに音声再生させる。
【００５２】
図５は、情報処理システムのソフトウェア例を示す図である。図５に示すユニットの一部または全部は、ファイルサーバ１００およびクライアント２００が実行するプログラムのモジュールであってもよい。また、図５に示すユニットの一部または全部は、ＦＰＧＡ（Field Programmable Gate Array）やＡＳＩＣ（Application Specific Integrated Circuit）などの電子回路であってもよい。クライアント３００もクライアント２００と同様のユニットを用いて実装できる。
【００５３】
ファイルサーバ１００は、記憶部１１０、Ｗｅｂサービス提供部１２０、ファイル管理部１３０およびアプリケーション１４０を有する。
記憶部１１０は、クライアント２００，３００で利用するファイルを記憶する。また、記憶部１１０は、ファイル検索に用いるインデックステーブルを記憶する。更に、記憶部１１０は、ファイル間の関連性などを管理するためのファイル管理データや、参照されたファイルの履歴などを管理するための参照履歴データを記憶する。
【００５４】
Ｗｅｂサービス提供部１２０は、クライアント２００，３００にＷｅｂサービスを提供する。具体的には、クライアント２００，３００からファイルサーバ１００にファイルをアップロードしたり、ファイルサーバ１００からファイルをダウンロードしたりするためのＷｅｂページを、クライアント２００，３００に送信する。クライアント２００，３００は、Ｗｅｂブラウザを用いて所定のＵＲＬにアクセスすることで、該Ｗｅｂページを取得できる。このＷｅｂページには、ファイル検索に用いる文字列などを入力するためのＧＵＩも含まれる。
【００５５】
Ｗｅｂサービス提供部１２０は、入力された文字列をファイル管理部１３０に出力して、ファイル検索を依頼する。また、Ｗｅｂサービス提供部１２０は、ファイル管理部１３０による検索結果を取得して、検索結果を出力するための画面を生成し、要求元のクライアント２００，３００に送信する。クライアント２００，３００では、検索結果からファイルを選択して、該ファイルの内容を閲覧したり、該ファイルをダウンロードしたりすることができる。
【００５６】
なお、本実施の形態では、ファイル検索の受付やダウンロードの機能をＷｅｂサービスにより実装する場合を例示するが、これは一例であり、Ｗｅｂサービス以外の所定のアプリケーションによって実装してもよい。
【００５７】
ファイル管理部１３０は、ファイルサーバ１００のファイル管理を制御する。ファイル管理部１３０は、生成部１３１、抽出部１３２、検索部１３３および履歴管理部１３４を有する。
【００５８】
生成部１３１は、記憶部１１０に格納されたオリジナルのファイル（以下、格納ファイルと称することがある）を取得して、該ファイルに含まれる要素に応じたタグを含むＨＴＭＬファイル（以下、表示用ファイルと称することがある）を生成する。ここで、格納ファイルは、例えば、クライアント２００，３００上のアプリケーションで生成されたファイルである。
【００５９】
ここで、アプリケーション１４０がクライアント２００，３００上のアプリケーションで生成されたファイルからＨＴＭＬファイルを生成する機能を有している場合もある。その場合、生成部１３１は、アプリケーション１４０にＨＴＭＬファイルの生成を依頼してもよい。例えば、生成部１３１は、ファイルに付された拡張子に基づいて、依頼先のアプリケーション１４０を選択することができる。例えば、該拡張子のファイルを処理可能なものとして、ファイルサーバ１００上のＯＳに登録されたアプリケーションを選択することが考えられる。
【００６０】
また、生成部１３１は、表示用ファイルに所定のスクリプトを追加する。表示用ファイルがＷｅｂブラウザ２２０によって閲覧されたときにユーザによる所定の操作を受付可能とするためである。
【００６１】
抽出部１３２は、生成部１３１が生成したＨＴＭＬファイルに含まれるタグに基づいて、インデックス用の文字列を抽出し、記憶部１１０に記憶されたインデックステーブルに追加する。
【００６２】
検索部１３３は、Ｗｅｂサービス提供部１２０からファイルの検索依頼を取得する。検索部１３３は、検索依頼に含まれる検索用の文字列と記憶部１１０に記憶されたインデックステーブルとに基づいて、表示用ファイルの検索を行い、検索結果をＷｅｂサービス提供部１２０に出力する。
【００６３】
履歴管理部１３４は、ファイルの参照履歴を管理する。履歴管理部１３４は、検索部１３３の検索結果に対して、何れのファイルが参照されたかをＷｅｂサービス提供部１２０から取得して、記憶部１１０に記憶された参照履歴データに記録する。
【００６４】
アプリケーション１４０は、格納ファイルからＨＴＭＬファイルを生成する機能を有するアプリケーションである。このようなアプリケーションとして、例えば、Ｍｉｃｒｏｓｏｆｔ（登録商標）  Ｗｏｒｄ，Ｅｘｃｅｌ，ＰｏｗｅｒＰｏｉｎｔ（登録商標）などがある。
【００６５】
クライアント２００は、記憶部２１０およびＷｅｂブラウザ２２０を有する。
記憶部２１０は、クライアント２００で利用するファイルを記憶する。例えば、クライアント２００上のアプリケーションが生成したファイルや、ファイルサーバ１００からダウンロードしたファイルを記憶する。
【００６６】
Ｗｅｂブラウザ２２０は、Ｗｅｂサービス提供部１２０にＷｅｂアクセスを行うためのブラウザである。ユーザは、ファイルサーバ１００にアクセスするために、認証サーバ（図示を省略）によるユーザ認証を受けることが考えられる。認証サーバには、認証に用いる情報（例えば、ユーザＩＤ（Identifier）、パスワードおよびユーザの所属）などの情報が格納される。
【００６７】
なお、第２の実施の形態のファイルサーバ１００は、第１の実施の形態の情報処理装置１の一例である。生成部１３１および抽出部１３２は、生成手段１ｂの一例である。また、検索部１３３は、検索手段１ｃの一例である。
【００６８】
図６は、ファイルサーバのディレクトリツリーの例を示す図である。ディレクトリツリー５０は、記憶部１１０のディレクトリおよびファイルのパス構造をツリー形式に表示したものの一例である。
【００６９】
ディレクトリツリー５０上では、ディレクトリ５００が設けられている。ディレクトリ５００は、共有ファイルを格納するためのディレクトリである。ディレクトリ５００のディレクトリ名は“／データ”である。クライアント２００，３００からアップロードされたファイルは、ディレクトリ５００配下のディレクトリに格納される。ディレクトリ５００の配下には、ディレクトリ５１０，５２０，５３０が配置されている。ディレクトリ５１０，５２０は、格納ファイルを格納するためのディレクトリである。ディレクトリ５３０は、表示用ファイルを格納するためのディレクトリである。
【００７０】
ディレクトリ５１０のディレクトリ名は“／システム”である。例えば、格納ファイルのうち、情報処理システムの利用等に関するファイルをディレクトリ５１０に格納する。ディレクトリ５１０には、格納ファイル５１１，５１２が含まれる。格納ファイル５１１は、システム利用のマニュアルを記述したものであり、ファイル名は“マニュアル．ｄａｔ”である。格納ファイル５１２は、新規導入システムなどの計画を記述したものであり、ファイル名は“プロジェクト．ｄａｔ”である。
【００７１】
ディレクトリ５２０のディレクトリ名は“／資材”である。例えば、格納ファイルのうち、情報処理システムを利用する企業の資材管理を行うためのファイルをディレクトリ５２０に格納する。ディレクトリ５２０には、格納ファイル５２１が含まれる。格納ファイル５２１は、資材管理のための表を含むものであり、ファイル名は“管理表．ｄａｔ”である。
【００７２】
ディレクトリ５３０のディレクトリ名は“／表示用ファイル”である。ディレクトリ５３０には、表示用ファイル５３１，５３２，５３３が含まれる。表示用ファイル５３１は、格納ファイル５１１に対応する表示用ファイルであり、ファイル名は“マニュアル．ｈｔｍｌ”である。表示用ファイル５３２は、格納ファイル５１２に対応する表示用ファイルであり、ファイル名は“プロジェクト．ｈｔｍｌ”である。表示用ファイル５３３は、格納ファイル５２１に対応する表示用ファイルであり、ファイル名は“管理表．ｈｔｍｌ”である。
【００７３】
何れのディレクトリに格納ファイルを格納するかは、ユーザがアップロード時に指定してもよい。また、ユーザに直接格納先のディレクトリを指定させる他、格納ファイルの分類をユーザに指定させ、該分類に基づいて格納先のディレクトリを判断してもよい。ただし、ディレクトリ５３０は、通常では格納ファイルの格納先としてユーザが選択できないディレクトリとなっている。
【００７４】
図７は、格納ファイルの例を示す図である。図７では、格納ファイル５１１（ファイル名“マニュアル．ｄａｔ”）を所定のアプリケーションに入力した場合の表示内容を例示している。格納ファイル５１１は、要素５１１ａ，５１１ｂ，５１１ｃ，５１１ｄ，５１１ｅ，５１１ｆを含む。
【００７５】
要素５１１ａ，５１１ｃは図の名称を示す文字列である。要素５１１ｂ，５１１ｄは図（イメージ）である。要素５１１ｅは表の名称を示す文字列である。要素５１１ｆは表（テーブル）である。
【００７６】
ユーザは、例えばクライアント３００上のアプリケーションに格納ファイル５１１を入力することで、このような内容を閲覧することができる。一方で、該アプリケーションをクライアント２００で実行することが困難な場合、このような内容をクライアント２００上で閲覧することは困難となる。そこで、生成部１３１は、格納ファイル５１１に基づいて表示用ファイル５３１を生成する。
【００７７】
図８は、表示用ファイルの例を示す図である。図８では、表示用ファイル５３１（ファイル名“マニュアル．ｈｔｍｌ”）の記述内容を例示している。生成部１３１は、格納ファイル５１１のファイル名“マニュアル．ｄａｔ”の拡張子を“．ｈｔｍｌ”に代えて、表示用ファイル５３１のファイル名とする。表示用ファイル５３１は、記述５３１ａ，５３１ｂ，５３１ｃ，５３１ｄ，５３１ｅ，５３１ｆを含む。
【００７８】
記述５３１ａは、表示用ファイル５３１のタイトル“マニュアル”を示す。生成部１３１は、例えば、格納ファイル５１１のファイル名から拡張子“．ｄａｔ”を除いた部分“マニュアル”を“＜ｔｉｔｌｅ＞”タグとして、表示用ファイル５３１に追加する。
【００７９】
記述５３１ｂは、生成部１３１により表示用ファイル５３１に追加されたＪａｖａＳｃｒｉｐｔ（登録商標）である。例えば、表示用ファイル５３１に基づいてＷｅｂブラウザ２２０がディスプレイ２０６ａに表示させた画面に対し、ユーザのフリック操作を受け付け、該操作に応じた画面スクロールを行う処理が記述される。また、例えば、該画面の拡大や縮小などを行う際のアニメーションを制御するための処理を記述することが考えられる。また、例えば、クライアント２００のディスプレイ２０６ａの画素数に応じて、表示用ファイル５３１の表示画面を整形する処理を記述することが考えられる。
【００８０】
記述５３１ｃは、格納ファイル５１１に含まれる文字列の要素を示す記述である。例えば、要素５１１ａに対して、“＜ｔｄ＞”タグに文字列“図１：”が記述されている。“＜ｔｄ＞”タグで囲まれた“＜ｒｕｂｙ＞”タグに文字列“設定”、“画面”が記述されている。“＜ｒｕｂｙ＞”タグで囲まれた“＜ｒｔ＞”タグに文字列“セッテイ”、“ガメン”が記述されている。このように、生成部１３１は、格納ファイル５１１に含まれる本文の各文字列要素に対して所定のタグを付与し、表示用ファイル５３１に記述する。
【００８１】
記述５３１ｄは、格納ファイル５１１に含まれる図の要素を示す記述である。例えば、生成部１３１は、要素５１１ｂに対して、“＜ｉｍｇ＞”タグを表示用ファイル５３１に記述する。“＜ｉｍｇ＞”タグには、例えば、格納ファイル５１１の情報に基づいて、“ｔｉｔｌｅ”属性、“ｓｒｃ”属性などを更に記述する。
【００８２】
記述５３１ｅは、格納ファイル５１１に含まれる表の要素を示す記述である。例えば、生成部１３１は、要素５１１ｆに対して、“＜ｔａｂｌｅ＞”タグを表示用ファイル５３１に記述する。“＜ｔａｂｌｅ＞”タグには、例えば、“＜ｃａｐｔｉｏｎ＞”タグを含めて、表のタイトルを記述する。
【００８３】
記述５３１ｆは、生成部１３１により表示用ファイル５３１に追加された記述である。記述５３１ｆでは、記述５３１ｂのように表示用ファイル５３１の内容を表示したＷｅｂブラウザ２２０で受け付け可能とする操作を記述する。例えば、表示用ファイル５３１に対応する格納ファイル５１１のパスを“ｈｉｄｄｅｎ”属性により記述しておき、格納ファイル５１１をファイルサーバ１００からダウンロード可能にする処理が記述される。
【００８４】
ここで、生成部１３１は、格納ファイル５１１に含まれる要素間の位置関係を検出することで、上述したようなタグやタグ内の属性を決定し、表示用ファイル５３１に記述できる。次に、その記述方法の具体例を説明する。
【００８５】
図９は、表示用ファイルの生成例を示す図である。図９（Ａ）は記述５３１ｄの生成例を示している。図９（Ｂ）は記述５３１ｅの生成例を示している。
記述５３１ｄは、格納ファイル５１１に含まれる文字列の要素５１１ａを、図の要素５１１ｂのタイトルとして記述したものである。生成部１３１は、例えば、要素５１１ｂから所定の距離Ｌ１以内にある文字列の要素５１１ａを要素５１１ｂのタイトル（“ｔｉｔｌｅ”属性の設定値）として取得できる。要素間の距離を検出する場合には、例えば、要素５１１ａ，５１１ｂを覆う矩形を特定し、各矩形の最も近い辺同士の間の距離を検出することが考えられる。
【００８６】
更に、例えば、検出した該文字列が“図”や“図”と記号／英数字の結合（例えば、“図−１”）などの文字列を含む場合に図のタイトルとして取得してもよい。図の要素５１１ｂに対して、より関連性の高いと考えられる文字列を抽出するためである。なお、図９（Ａ）では、要素５１１ａが要素５１１ｂの紙面に向かって上側に配置されている場合を例示しているが、要素５１１ａが要素５１１ｂの紙面に向かって左右や下側に配置されている場合にも、両要素間の距離によって要素５１１ａを図のタイトルとするかを判断できる。
【００８７】
記述５３１ｅは、格納ファイル５１１に含まれる文字列の要素５１１ｅを表の要素５１１ｆのタイトルとして記述したものである。生成部１３１は、例えば、図９（Ａ）と同様に要素５１１ｆから所定の距離Ｌ２以内にある文字列の要素５１１ｅを要素５１１ｆのタイトル（“＜ｃａｐｔｉｏｎ＞”タグの設定値）として取得できる。要素間の距離を検出する方法は、図９（Ａ）と同様に、例えば、要素５１１ｅ，５１１ｆを覆う矩形を特定し、各矩形の最も近い辺同士の間の距離を検出すればよい。
【００８８】
更に、例えば、検出した該文字列が“表”や“表”と記号／英数字の結合（例えば、“表−１”）などの文字列を含む場合に表のタイトルとしてもよい。表の要素５１１ｆに対して、より関連性の高いと考えられる文字列を抽出するためである。なお、図９（Ｂ）では、要素５１１ｅが要素５１１ｆの紙面に向かって上側に配置されている場合を例示しているが、要素５１１ｅが要素５１１ｆの紙面に向かって左右や下側に配置されている場合にも、両要素間の距離によって要素５１１ｅを表のタイトルとするかを判断できる。
【００８９】
抽出部１３２は、このように生成部１３１によって生成された表示用ファイルのタグに基づいて文字列を抽出し、インデックステーブルに登録する。抽出部１３２は、表示用ファイル５３１から例えば次のような文字列を抽出する。
【００９０】
（１）“＜ｔｉｔｌｅ＞”タグ内に記述された文字列“マニュアル”を文書のタイトルとして抽出する。
（２）“＜ｔｄ＞”タグ、“＜ｒｕｂｙ＞”タグ、“＜ｒｔ＞”タグ内に記述された文字列“図１：”、“設定”、“セッテイ”などを文書の本文に含まれる文字列として抽出する。
【００９１】
（３）“＜ｉｍｇ＞”タグ内の“ｔｉｔｌｅ”属性として記述された文字列“図１：設定画面”を図のタイトルとして抽出する。
（４）“＜ｔａｂｌｅ＞”タグで囲われた“＜ｃａｐｔｉｏｎ＞”タグで記述された文字列“表１：設定手順”を表のタイトルとして抽出する。
【００９２】
なお、“＜ｔａｂｌｅ＞”タグ内に記述された文字列（特に罫線で囲われた領域内の文字列）を、例えば表内に含まれる文字列（表内本文）として抽出することも考えられる。表の罫線は、例えば“＜ｔａｂｌｅ＞”タグ内の“ｂｏｒｄｅｒ”属性により検出できる。
【００９３】
また、上述した図表以外にも種々の要素をタグによって識別し得る。例えば、ＨＴＭＬ５では、音声要素を記述する“＜ａｕｄｉｏ＞”タグや動画要素を記述する“＜ｖｉｄｅｏ＞”タグを利用できる。この場合、生成部１３１は、格納ファイルが音声要素を含めば、“＜ａｕｄｉｏ＞”タグによって音声要素を、“＜ａｕｄｉｏ＞”タグ内の“ｓｒｃ”属性で音声ファイル名を記述する。抽出部１３２は、“＜ａｕｄｉｏ＞”タグの“ｓｒｃ”属性に設定された文字列を音声ファイルの名称として抽出することができる。格納ファイルが動画要素を含む場合も、音声要素と同様に“＜ｖｉｄｅｏ＞”タグを利用できる。
【００９４】
抽出部１３２は、抽出した文字列を、該文字列のファイル内での役割を示す属性情報（以下、文書内属性と称することがある）および表示用ファイルに対応付けてインデックステーブルに登録する。
【００９５】
図１０は、インデックステーブルの例を示す図である。インデックステーブル１１１は、記憶部１１０に格納される。インデックステーブル１１１は、文字列、文書内属性および表示用ファイルの項目を含む。
【００９６】
文字列の項目には、表示用ファイルから抽出した文字列（１文字でもよい）が登録される。文書内属性の項目には、該文字列が示す文書内属性が登録される。文書内属性としては、例えば“文書タイトル”、“図タイトル”、“表タイトル”、“表内本文”および“本文”などを登録できる。表示用ファイルの項目には、抽出元の表示用ファイルのファイル名が設定される。なお、表示用ファイルは、ディレクトリ５３０（ディレクトリ名“／表示用ファイル”）に格納されることが予め規定されているため、表示用ファイルの項目の設定では、プレフィックスを省略している。ただし、フルパスで設定してもよい。
【００９７】
なお、インデックステーブル１１１には、例えば、格納ファイルの項目を設けて、格納ファイルのパスを設定してもよい。このようにすれば、インデックステーブル１１１に基づいて、文字列から格納ファイルを検索することも可能となる。
【００９８】
図１１は、ファイル管理データの例を示す図である。ファイル管理データ１１２は、記憶部１１０に格納される。ファイル管理データ１１２は、ディレクトリツリー５０に含まれる各ディレクトリを分類するための情報（ファイル分類情報）、および、格納ファイルと表示用ファイルとを関連付けるための情報（ファイル関連付け情報）を登録したファイルである。ファイル管理データ１１２は、ｃｓｖ（Comma Separated Values）形式で記述されている。ただし、ＸＭＬなど他の形式でもよい。
【００９９】
ファイル分類情報には、例えば、“システム利用”という分類が定義されている。そして、“システム利用”の分類に属するディレクトリとして、“．．．／データ／システム／”および“．．．／データ／利用規定／”が定義されている。同様に、“資材管理”、“ガーデニング”および“インテリア”などの分類も定義されている。ファイル分類情報は、情報処理システムの管理者が予め登録する。
【０１００】
ファイル関連付け情報には、例えば、“．．．／データ／システム／マニュアル．ｄａｔ”という格納ファイル５１１に対して、“マニュアル．ｈｔｍｌ”という表示用ファイル５３１が対応付けられている。ここで、図１０で説明したように表示用ファイルのプレフィックスは省略しているが、フルパスで登録されてもよい。ファイル関連付け情報は、生成部１３１が格納ファイルから表示用ファイルを生成したときに登録する。
【０１０１】
なお、ファイル管理データ１１２では、ファイル関連付け情報で格納ファイルと表示用ファイルとが対応付けられ、ファイル分類情報で格納ファイルのディレクトリとファイル分類とが対応付けられている。すなわち、ファイル管理データ１１２は、表示用ファイルとファイル分類情報とを、格納ファイルのディレクトリを介して間接的に関連付けている。よって、ファイル管理データ１１２は、表示用ファイルとファイル分類情報との対応付けを定義した情報ということもできる。
【０１０２】
図１２は、参照履歴データの例を示す図である。参照履歴データ１１３は、記憶部１１０に格納される。参照履歴データ１１３は、表示用ファイルがユーザによって参照された回数を日ごとに記録したものである。履歴管理部１３４は、ユーザが選択した表示用ファイル、ユーザＩＤおよびユーザの所属などの情報をＷｅｂサービス提供部１２０から取得して、各表示用ファイルの参照回数を記録する。参照履歴データ１１３は、ｃｓｖ形式で記述されている。ただし、ＸＭＬなど他の形式でもよい。
【０１０３】
参照履歴データ１１３には、例えば、“２０１１／９／１”、“マニュアル．ｈｔｍｌ”、“３０”、“システム管理課”、“１０”、“第１システム課”、“５”、・・・が登録されている。これは、２０１１年９月１日に、表示用ファイル５３１（ファイル名“マニュアル．ｈｔｍｌ”）に対して全所属から３０回の参照があったこと、システム管理課から１０回の参照があったこと、第１システム課から５回の参照があったことを示している。
【０１０４】
ここで、ファイル管理データ１１２や参照履歴データ１１３を、ＲＤＢ（Relational DataBase）ではなく、ｃｓｖやＸＭＬで管理することで、各データの更新や参照などを容易に行える。また、例えば、ファイルサーバ１００の管理者は、参照履歴データ１１３を参照することで、どのような所属からどのようなファイルが参照されているかを容易に分析可能となる。
【０１０５】
図１３は、検索画面の例を示す図である。検索画面６００は、Ｗｅｂブラウザ２２０により生成され、ディスプレイ２０６ａに表示される。Ｗｅｂブラウザ２２０は、所定のＵＲＬ（Uniform Resource Locator）にアクセスすることで、Ｗｅｂサービス提供部１２０から検索画面６００のＨＴＭＬファイルを取得できる。
【０１０６】
検索画面６００には、領域６１０，６２０，６３０が含まれる。
領域６１０は、ディレクトリツリー５０を表示する領域である。ユーザは、例えば、何れかのディレクトリをタッチすることで、該ディレクトリ内に配置されたファイルの一覧を領域６３０に表示させることができる。
【０１０７】
領域６２０は、検索する文字列（キーワード）や検索対象範囲を入力するための領域である。領域６２０には、入力フォーム６２１，６２２，６２３および検索ボタン６２４が設けられている。
【０１０８】
入力フォーム６２１は、キーワードを入力するためのテキストボックスである。
入力フォーム６２２は、該キーワードが含まれる得る文書内属性（“文書タイトル”や“図タイトル”など）を選択するためのリストボックスである。
【０１０９】
入力フォーム６２３は、検索対象とするファイル分類（“システム利用”や“資材管理”など）を選択するためのリストボックスである。
検索ボタン６２４は、入力フォーム６２１，６２２，６２３に入力した情報に基づいて、ファイルサーバ１００に検索依頼を送信するためのボタンである。入力フォーム６２２に入力がない場合には、全文書内属性に対して検索が行われる。入力フォーム６２３に入力がない場合には、全ファイル分類に対して検索が行われる。
【０１１０】
ユーザは、所望の入力フォームをタッチして、文字列（１文字でもよい）の入力や、文書内属性およびファイル分類の選択を行える。また、ユーザは、検索ボタン６２４をタッチすることで、ファイルサーバ１００に検索依頼を行える。
【０１１１】
領域６３０は、領域６１０で選択されたディレクトリに格納されたファイルの一覧を表示する領域である。また、領域６３０は、検索ボタン６２４の押下後、ファイルサーバ１００から検索結果を取得した場合に、その検索結果の一覧を表示する領域である。
【０１１２】
領域６３０に表示される検索結果は、各表示用ファイルへのリンクとなっている。ユーザは、検索結果の一覧から、所望のファイルのリンクを選択することで、該表示用ファイルの内容を表示する表示画面６３１を領域６３０内あるいはＷｅｂブラウザ２２０の他のウィンドウ内に表示させることができる。図１３の例では、領域６３０で“マニュアル．ｈｔｍｌ”のリンクが選択された場合を例示している。Ｗｅｂブラウザ２２０は、該リンクを指定したＨＴＴＰリクエストをファイルサーバ１００に送信し、その応答として表示用ファイル５３１（ファイル名“マニュアル．ｈｔｍｌ”）を取得する。Ｗｅｂブラウザ２２０は、表示用ファイル５３１に基づいて、表示画面６３１内に該ファイルの内容を表示させる。表示される内容は、クライアント３００上のアプリケーションが“マニュアル．ｄａｔ”を実行してディスプレイに表示させる内容と同一あるいはほぼ同一である（要素のレイアウトなど多少異なっていてもよい）。
【０１１３】
次に、以上の構成のファイルサーバ１００の処理手順を説明する。まず、表示用ファイル生成処理の手順を説明する。ファイルサーバ１００は、例えば、スケジュールされた所定の時間に以下の処理を開始する。ただし、格納ファイルがファイルサーバ１００に新たに格納（あるいは更新）されたタイミングで、該格納ファイルに対する表示用ファイルを生成するようにしてもよい。
【０１１４】
図１４は、表示用ファイル生成処理を示すフローチャートである。以下、図１４に示す処理をステップ番号に沿って説明する。
（ステップＳ１１）生成部１３１は、記憶部１１０から未処理の格納ファイルを１つ取得する。
【０１１５】
（ステップＳ１２）生成部１３１は、取得した格納ファイルに対して表示用ファイルを未生成であるか否かを判定する。未生成である場合、処理をステップＳ１４に進める。生成済である場合、処理をステップＳ１３に進める。生成部１３１は、例えば、記憶部１１０に記憶されたファイル管理データ１１２を参照して、ファイル関連付け情報に該格納ファイルに対応する表示用ファイルが登録済か否かによって、該判定を行える。表示用ファイルが登録されていなければ、表示用ファイルを未生成である。表示用ファイルが登録されていれば、表示用ファイルを生成済みである。
【０１１６】
（ステップＳ１３）生成部１３１は、表示用ファイルが格納ファイルに対して古いか否かを判定する。表示用ファイルが古い場合、処理をステップＳ１４に進める。表示用ファイルが古くない場合、処理をステップＳ２２に進める。生成部１３１は、例えば、格納ファイルと対応する表示用ファイルの作成日時（または更新日時）を参照することで該判定を行える。表示用ファイルの作成日時の方が過去であれば、表示用ファイルは格納ファイルに対して古い。格納ファイルの作成日時の方が過去であれば、表示用ファイルは古くない。
【０１１７】
（ステップＳ１４）生成部１３１は、格納ファイルを読み込んで表示用ファイルを生成する。表示用ファイルの具体的な生成方法は、図７〜９で説明した通りである。すなわち、生成部１３１は、格納ファイルに含まれる要素および要素間の位置関係に応じたタグを記述して表示用ファイルを生成する。なお、生成部１３１は、所定の形式のファイルをＨＴＭＬ形式のファイルに変換する機能をもったアプリケーション１４０に、表示用ファイルの生成を依頼してもよい。また、アプリケーション１４０が生成したＨＴＭＬ形式のファイルに対し、生成部１３１が所定のタグや属性を追加して表示用ファイルを生成してもよい。
【０１１８】
（ステップＳ１５）抽出部１３２は、表示用ファイルから所定のタグを検出する。例えば、上述したような“＜ｔｉｔｌｅ＞”タグ、“＜ｔａｂｌｅ＞”タグ、“＜ｃａｐｔｉｏｎ＞”タグ、“＜ｉｍｇ＞”タグなどである。また、タグに含まれる“ｔｉｔｌｅ”や“ｂｏｒｄｅｒ”などの属性を該タグとセットで検出する。更に、“＜ｔａｂｌｅ＞”タグで囲まれた“＜ｃａｐｔｉｏｎ＞”タグなどをセットで検出する。
【０１１９】
（ステップＳ１６）抽出部１３２は、ステップＳ１５で検出したタグに含まれる文字列やタグ内の属性に含まれるキーワードを抽出する。
（ステップＳ１７）抽出部１３２は、抽出した文字列を文書内属性および表示用ファイルに対応付けてインデックステーブル１１１に登録する。抽出部１３２は、タグやタグ内の属性に応じて文書内属性を決定する。例えば、“＜ｔｉｔｌｅ＞”タグから抽出した文字列であれば、文書内属性は“文書タイトル”とする。また、例えば、“＜ｉｍｇ＞”タグ内の“ｔｉｔｌｅ”属性から抽出した文字列であれば、文書内属性は“図タイトル”とする。何れの文書内属性に対応付けるかは、抽出部１３２に予め設定される。なお、表示用ファイルを更新する場合には、前回登録したインデックスと重複することも考えられる。その場合には、差分だけ登録すればよい。
【０１２０】
（ステップＳ１８）生成部１３１は、Ｗｅｂブラウザ２２０で操作に応じた処理を実行するためのスクリプトを表示用ファイルに追加する。例えば、図８で説明した表示用ファイル５３１内の記述５３１ｂ，５３１ｆが該スクリプトに相当する。
【０１２１】
（ステップＳ１９）生成部１３１は、Ｗｅｂブラウザ２２０での表示内容を整形するためのスクリプトを表示用ファイルに追加する。
（ステップＳ２０）生成部１３１は、表示用ファイルを記憶部１１０に格納する。
【０１２２】
（ステップＳ２１）生成部１３１は、格納ファイルと表示用ファイルとの対応をファイル管理データ１１２に登録する。なお、既に登録済である場合には、ステップＳ２１をスキップしてステップＳ２２に進んでもよい。
【０１２３】
（ステップＳ２２）生成部１３１は、記憶部１１０に記憶された全ての格納ファイルを処理済であるか否か判定する。全格納ファイルを処理済である場合、処理を終了する。未処理の格納ファイルがある場合、処理をステップＳ１１に進める。
【０１２４】
このようにして、生成部１３１は、格納ファイルから表示用ファイルを生成する。抽出部１３２は、表示用ファイルに含まれるタグに基づいて表示用ファイルから文字列を抽出し、インデックステーブル１１１に登録する。
【０１２５】
図１５は、ファイル検索処理を示すフローチャートである。以下、図１５に示す処理をステップ番号に沿って説明する。
（ステップＳ３１）Ｗｅｂブラウザ２２０は、検索画面６００の領域６２０で入力された内容に基づいて検索依頼を生成し、Ｗｅｂサービス提供部１２０に送信する。Ｗｅｂサービス提供部１２０は、Ｗｅｂブラウザ２２０から検索依頼を受信する。検索依頼には、ユーザＩＤ、ユーザの所属、検索キーワード、文書内属性、ファイル分類などの情報が含まれる。Ｗｅｂサービス提供部１２０は、取得した検索依頼を検索部１３３に出力する。
【０１２６】
（ステップＳ３２）検索部１３３は、検索依頼に含まれる情報に基づいて、インデックステーブル１１１を検索する。例えば、検索依頼が検索キーワード“手順”、文書内属性“表タイトル”を含む場合、インデックステーブル１１１から、文字列“手順”を含み、文書内属性が“表タイトル”であるレコードを検索する。そして、該レコードに含まれる表示用ファイル“マニュアル．ｈｔｍｌ”を特定する。
【０１２７】
（ステップＳ３３）検索部１３３は、何れかの表示用ファイルを特定したか（ヒットがあったか）否かを判定する。ヒットなしの場合、処理をステップＳ３４に進める。ヒットありの場合、処理をステップＳ３６に進める。
【０１２８】
（ステップＳ３４）検索部１３３は、ヒットなしをＷｅｂサービス提供部１２０に出力する。
（ステップＳ３５）Ｗｅｂサービス提供部１２０は、検索依頼に対する応答として、ヒットしたファイルなしを表示するための結果ページをＷｅｂブラウザ２２０に送信する。そして、処理を終了する。
【０１２９】
（ステップＳ３６）検索部１３３は、検索依頼でファイル分類を受け付けているか否かを判定する。ファイル分類を受け付けている場合、処理をステップＳ３７に進める。ファイル分類を受け付けていない場合、処理をステップＳ３８に進める。
【０１３０】
（ステップＳ３７）検索部１３３は、ファイル管理データ１１２を参照して、ファイル分類で検索結果の絞込を行う。例えば、検索依頼がファイル分類“システム利用”を含む場合、ステップＳ３３でヒットした表示用ファイルのうち、対応する格納ファイルが格納されたディレクトリがファイル分類“システム利用”に属するディレクトリであるものを特定する。
【０１３１】
（ステップＳ３８）検索部１３３は、参照履歴データ１１３を参照して、検索結果（ファイル分類で絞り込んでいる場合は絞込後の結果）に含まれる表示用ファイルを参照回数でソートする。例えば、その日の総参照回数が最大の表示用ファイルを上から順に並べる。また、例えば、ユーザの所属単位の参照回数を取得してソートしてもよい。例えば、ユーザが属する所属からの参照回数が大きい程、上位とすることが考えられる。何れの方法でソートを行うかは、管理者によって検索部１３３に予め設定される。また、ソートを行わなくてもよい。その場合、本ステップをスキップしてステップＳ３９に進めばよい。
【０１３２】
（ステップＳ３９）検索部１３３は、ステップＳ３８でソートした結果をＷｅｂサービス提供部１２０に出力する。
（ステップＳ４０）Ｗｅｂサービス提供部１２０は、検索依頼に対する応答として、検索部１３３の検索結果を表示するための結果ページをＷｅｂブラウザ２２０に送信する。
【０１３３】
（ステップＳ４１）Ｗｅｂブラウザ２２０は、結果ページ（例えば、検索画面６００の領域６３０の内容）をディスプレイ２０６ａに表示させる。Ｗｅｂブラウザ２２０は、何れかの表示用ファイルを選択するタッチ操作を受け付けると、Ｗｅｂサービス提供部１２０に該表示用ファイルを要求する。Ｗｅｂサービス提供部１２０は、該要求を受信することで表示用ファイルの選択を受け付ける。
【０１３４】
（ステップＳ４２）Ｗｅｂサービス提供部１２０は、記憶部１１０から選択された表示用ファイルを取得し、Ｗｅｂブラウザ２２０に送信する。Ｗｅｂブラウザ２２０は、該表示用ファイルの内容をディスプレイ２０６ａに表示させる（例えば、表示画面６３１の内容）。
【０１３５】
（ステップＳ４３）Ｗｅｂサービス提供部１２０は、選択された表示用ファイルを示す情報、ユーザＩＤおよびユーザの所属などを示す情報を履歴管理部１３４に出力する。履歴管理部１３４は、受け付けた情報に基づいて、参照履歴データ１１３を更新する。例えば、２０１１年９月１日に、システム管理課に所属するユーザが“マニュアル．ｈｔｍｌ”を選択した場合、全所属からの参照回数およびシステム管理課からの参照回数に、それぞれ１を加算する。
【０１３６】
このようにして、検索部１３３はファイル検索を行う。このとき、検索部１３３は、検索キーワードとして、文書内属性やファイル分類を受け付けることで、詳細なファイル検索を可能とする。ユーザは、クライアント２００を用いて、所望の表示用ファイルを効率的に探し出すことができ、ファイルの内容を容易に閲覧することができる。
【０１３７】
ここで、クライアント２００は、表示用ファイルに記述されたスクリプトによって、種々の制御が可能である。次に、スクリプトによって実現し得るクライアント２００の制御を例示する。
【０１３８】
図１６は、表示用ファイルを用いたクライアント制御の例を示す図である。図１６（Ａ）は、クライアント２００のディスプレイ２０６ａの表示能力に応じた表示整形の制御を示している。例えば、ディスプレイ２０６ａの画素数に応じて、要素の大きさ、要素の色、要素のレイアウトおよび文章の改行位置などの定義（スタイルシート）を変更する制御を行える。
【０１３９】
図１６（Ｂ）は、表示変更時のアニメーションの制御を示している。例えば、タッチパネル２０７ａに対するユーザのフリック操作に応じた画面スクロールのアニメーションや、ピンチアウト／ピンチイン操作に応じた画面の拡大／縮小のアニメーションなどの制御を行える。
【０１４０】
図１６（Ｃ）は、格納ファイルのダウンロードを示している。例えば、タッチパネル２０７ａにより、表示用ファイルの所定位置に対するタップ操作を受け付けた場合に、ファイルサーバ１００から該表示用ファイルに対応する格納ファイルのダウンロードを行える。これにより、ユーザは、表示用ファイルを閲覧できるだけでなく、該表示用ファイルのオリジナルの格納ファイルをクライアント２００に格納できる。より具体的には、“マニュアル．ｈｔｍｌ”の内容をＷｅｂブラウザ２２０により閲覧しながら、“マニュアル．ｄａｔ”を記憶部２１０に格納することもできる。
【０１４１】
以上で説明したように、ファイルサーバ１００は、格納ファイルに基づいて、ＨＴＭＬ形式の表示用ファイルを生成する。表示用ファイル内に格納ファイル中の要素を示すタグを記述する際、該要素に関するタイトルや該要素に含まれる文字列であることを識別できるように、所定のタグや属性を追加する。そして、該表示用ファイルに含まれるタグに基づき文字列を抽出してインデックスを作成する。このため、格納ファイルから文字列を抽出する場合に比べて、詳細なインデックスを作成できる。具体的には、タグやタグ内の属性に基づいて抽出した文字列に文書内属性を付与してインデックスを作成する。このため、キーワードと該キーワードの文書内属性とのセットで、表示用ファイルの検索を行える。したがって、例えば、図のタイトルや表内に含まれる文字列など、詳細な検索を効率的に行えるようになる。
【０１４２】
また、インデックステーブル１１１を作成する際にタグを用いることで、ユーザに付加的な情報を作成させるのを回避できる。よって、ユーザによる作業の省力化を図れる。
更に、表示用ファイルをＨＴＭＬ形式で生成する。このため、表示用ファイルをクライアント２００に送信すれば、Ｗｅｂブラウザ２２０を用いて表示用ファイルの内容を閲覧することができる。
【０１４３】
ここで、クライアント２００は携帯端末装置であるため、ラップトップ型のクライアント３００で動作可能なアプリケーションを、クライアント２００では動作させるのが困難なこともある。この場合、オリジナルの格納ファイルをクライアント２００に提供しても該格納ファイルの内容を閲覧するのが困難となり不便なこともある。
【０１４４】
これに対し、携帯端末装置でもＷｅｂブラウザであれば利用可能なことが多い。そこで、ファイルサーバ１００は、ＨＴＭＬ形式などで生成した表示用ファイルをクライアント２００に提供することで、クライアント２００でも容易に該ファイルの内容を閲覧可能となる。なお、第２の実施の形態では、表示用ファイルをＨＴＭＬ形式で生成するものとしたが、他の形式でもよい。例えば、ＸＭＬ形式およびＸＳＬ（eXtensible Stylesheet Language）形式のファイルで生成してもよい。
【０１４５】
このようにして、ファイルサーバ１００は、効率的なファイル検索を支援することができる。
以上、本発明のファイル管理プログラム、情報処理装置およびファイル管理方法を図示の実施の形態に基づいて説明したが、これらに限定されるものではなく、各部の構成は同様の機能を有する任意の構成のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。更に、前述した実施の形態のうちの任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【符号の説明】
【０１４６】
１  情報処理装置
１ａ  記憶手段
１ｂ  生成手段
１ｃ  検索手段
２  第１のファイル
２ａ，２ｂ  要素
３  第２のファイル
【図１】
2013077150.tif 000003
【図２】
2013077150.tif 000004
【図３】
2013077150.tif 000005
【図４】
2013077150.tif 000006
【図５】
2013077150.tif 000007
【図６】
2013077150.tif 000008
【図７】
2013077150.tif 000009
【図８】
2013077150.tif 000010
【図９】
2013077150.tif 000011
【図１０】
2013077150.tif 000012
【図１１】
2013077150.tif 000013
【図１２】
2013077150.tif 000014
【図１３】
2013077150.tif 000015
【図１４】
2013077150.tif 000016
【図１５】
2013077150.tif 000017
【図１６】
2013077150.tif 000018