JP2017045236A - 検索システム、検索装置、及びプログラム - Google Patents

検索システム、検索装置、及びプログラム Download PDF

Info

Publication number
JP2017045236A
JP2017045236A JP2015166703A JP2015166703A JP2017045236A JP 2017045236 A JP2017045236 A JP 2017045236A JP 2015166703 A JP2015166703 A JP 2015166703A JP 2015166703 A JP2015166703 A JP 2015166703A JP 2017045236 A JP2017045236 A JP 2017045236A
Authority
JP
Japan
Prior art keywords
content
data
search
set definition
index
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2015166703A
Other languages
English (en)
Inventor
丈志 松田
Takeshi Matsuda
丈志 松田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2015166703A priority Critical patent/JP2017045236A/ja
Priority to PCT/JP2016/003806 priority patent/WO2017033451A1/en
Priority to EP16838801.5A priority patent/EP3341862A4/en
Priority to US15/741,355 priority patent/US20190005077A1/en
Publication of JP2017045236A publication Critical patent/JP2017045236A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】コンテンツの検索に用いるインデックスを作成する。【解決手段】インデックスを用いて、データベースに格納されたコンテンツデータを検索する検索システムであって、前記インデックスとするデータ項目を示すインデックス対象項目と、前記コンテンツデータを前記データベースから取得するための取得条件とを含む集合定義を登録する第1の登録手段と、前記第1の登録手段により集合定義が登録されると、該集合定義に含まれる前記取得条件を満たすコンテンツデータを前記データベースから取得する取得手段と、前記取得手段により取得されたコンテンツデータにおいて、前記集合定義に含まれる前記インデックス対象項目を抽出して、前記インデックスを生成する生成手段と、を有する。【選択図】図7

Description

本発明は、検索システム、検索装置、及びプログラムに関する。
文書等のコンテンツデータが格納されたデータベースから目的のコンテンツデータを検索する検索システムが従来から知られている。このような検索システムで用いられる検索方法には、コンテンツデータに含まれる特定のデータ項目をインデックスとして予め作成した上で、当該インデックスを用いて検索を行う属性検索又は項目検索と呼ばれる方法が知られている。
また、文書データの検索において、文書の書式データを用いてインデックスを作成する技術が従来から知られている(例えば特許文献1参照)。
しかしながら、上記の従来技術では、データ構造が異なるコンテンツデータがデータベースに存在する場合には、これらのコンテンツデータに対して共通のインデックスを作成することができないことがあった。
例えば、あるコンテンツデータのデータ項目が「タイトル」、「作成者」、及び「本文」である一方で、別のコンテンツデータのデータ項目が「撮影日」、「作成者」、及び「撮影者」であるとする。このような場合、これらのコンテンツデータを検索するために共通に用いるインデックスであって、例えばデータ項目「タイトル」と「作成者」を検索キーとするインデックスを作成することができなかった。
本発明の一実施形態は、上記の点に鑑みてなされたもので、コンテンツの検索に用いるインデックスを作成することを目的とする。
上記目的を達成するため、本発明の一実施形態は、インデックスを用いて、データベースに格納されたコンテンツデータを検索する検索システムであって、前記インデックスとするデータ項目を示すインデックス対象項目と、前記コンテンツデータを前記データベースから取得するための取得条件とを含む集合定義を登録する第1の登録手段と、前記第1の登録手段により集合定義が登録されると、該集合定義に含まれる前記取得条件を満たすコンテンツデータを前記データベースから取得する取得手段と、前記取得手段により取得されたコンテンツデータにおいて、前記集合定義に含まれる前記インデックス対象項目を抽出して、前記インデックスを生成する生成手段と、を有する。
本発明の一実施形態によれば、コンテンツの検索に用いるインデックスを作成することができる。
第一の実施形態の検索システムのシステム構成の一例を示す図である。 第一の実施形態のコンピュータのハードウェア構成の一例を示す図である。 第一の実施形態の検索システムの機能構成の一例を示す図である。 コンテンツDBの一例を示す図である。 集合定義DBの一例を示す図である。 コンテンツ集合DBの一例を示す図である。 第一の実施形態の集合定義の登録処理の一例を示すシーケンス図である。 集合定義の登録画面の一例を示す図である。 第一の実施形態のコンテンツ集合の生成処理の一例を示すフローチャートである。 第一の実施形態のコンテンツの登録処理の一例を示すシーケンス図である。 コンテンツの登録画面の一例を示す図である。 第一の実施形態のコンテンツ集合への追加処理の一例を示すフローチャートである。 第一の実施形態のコンテンツ集合の表示処理の一例を示すシーケンス図である。 コンテンツ一覧画面の一例を示す図である。 第一の実施形態のコンテンツの検索処理の一例を示すシーケンス図である。 コンテンツ検索画面及び検索結果画面を示す図である。 第二の実施形態の検索システムの機能構成の一例を示す図である。 第二の実施形態の集合定義の更新処理の一例を示すシーケンス図である。 集合定義の更新画面の一例を示す図である。 第三の実施形態の検索システムの機能構成の一例を示す図である。 第三の実施形態のコンテンツの削除処理の一例を示すシーケンス図である。 コンテンツの削除画面の一例を示す図である。 第三の実施形態のコンテンツ集合の更新処理の一例を示すフローチャートである。
次に、本発明の実施の形態について、図面を参照しながら詳細に説明する。
[第一の実施形態]
<システム構成>
まず、第一の実施形態の検索システム1について、図1を参照しながら説明する。図1は、第一の実施形態の検索システムのシステム構成の一例を示す図である。
図1に示す検索システム1は、端末装置10及び検索装置20を有し、LAN(Local Area Network)等のネットワークNを介して通信可能に接続されている。
端末装置10は、検索システム1の利用者(ユーザ)が用いるデスクトップ型PCやノート型PC、スマートフォン、タブレット端末等の電子機器である。端末装置10には、検索装置20に登録されたコンテンツを検索するための端末プログラム30がインストールされている。これより、ユーザは、端末装置10にインストールされた端末プログラム30を用いて、検索装置20に登録されたコンテンツを検索することができる。
また、ユーザは、端末装置10にインストールされた端末プログラム30を用いて、コンテンツの検索に用いるインデックスを検索装置20に登録することができる。
ここで、コンテンツとは、例えば、報告書や請求書等のドキュメント、画像、動画、音楽、アプリケーションプログラム等である。したがって、コンテンツを示すコンテンツデータは、検索装置20に登録され、検索対象となるドキュメントデータ、画像データ、動画データ、音楽データ、プログラムデータ等である。
このように、本実施形態の検索装置20には、種々のコンテンツが登録されているものとする。換言すれば、本実施形態の検索装置20には、データ構造が異なる種々のコンテンツデータが登録されている。なお、同一種類のコンテンツデータであってもデータ構造が異なる場合もあり得る。例えば、報告書のドキュメントデータと、請求書のドキュメントデータとのデータ構造が異なる場合もあり得る。
検索装置20は、コンテンツやインデックスを管理する情報処理装置である。検索装置20には、インデックスの作成や登録、インデックスを用いたコンテンツデータの検索を行う検索プログラム40がインストールされている。
本実施形態では、検索装置20に検索プログラム40がインストールされることにより、データ構造が異なる種々のコンテンツデータに対して共通のインデックスを作成及び登録することができるようになる。このため、本実施形態の検索装置20には、様々なデータ構造のコンテンツデータを共通のインデックスを用いて検索することができる。
また、本実施形態の検索装置20では、既に格納されているコンテンツデータのデータ構造が変更になった場合等においても、当該コンテンツデータを検索するためのインデックスを再作成等する必要がない。換言すれば、本実施形態の検索装置20では、インデックスに影響を与えることなく、格納されているコンテンツデータのデータ構造を動的に変更することができる。
なお、図1に示す例では、検索装置20が1台の情報処理装置で構成されている場合を示しているが、検索装置20は、2台以上の情報処理装置で構成されていても良い。
<ハードウェア構成>
次に、第一の実施形態の端末装置10及び検索装置20のハードウェア構成について、図2を参照しながら説明する。図2は、第一の実施形態のコンピュータのハードウェア構成の一例を示す図である。
図2に示すコンピュータ300は、入力装置11、表示装置12、外部I/F13、及びRAM(Random Access Memory)14を有する。また、コンピュータ300は、ROM(Read Only Memory)15、CPU(Central Processing Unit)16、通信I/F17、及びHDD18を有する。これら各ハードウェア構成は、バスBにより相互に接続されている。
入力装置11は、キーボードやマウス、タッチパネル等を含み、コンピュータ300に各種信号を入力するのに用いられる。表示装置12は、ディスプレイ等を含み、各種の処理結果を表示する。なお、検索装置20は、入力装置11及び/又は表示装置12を、必要なときにバスBに接続して利用する形態であっても良い。
外部I/F13は、外部装置とのインタフェースである。外部装置には、例えば、CD(Compact Disk)やDVD(Digital Versatile Disk)、SDメモリカード(SD memory card)、USBメモリ(Universal Serial Bus memory)等の記録媒体がある。コンピュータ300は、外部I/F13を介して記録媒体の読み取り及び/又は書き込みを行うことができる。
RAM14は、プログラムやデータを一時保存する揮発性の半導体メモリ(記憶装置)である。ROM15は、電源を切ってもデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。CPU16は、例えばHDD18やROM15等からプログラムやデータをRAM14上に読み出して、各種処理を実行する演算装置である。
通信I/F17は、コンピュータ300をネットワークNに接続するためのインタフェースである。
HDD18は、プログラムやデータを格納している不揮発性のメモリ(記憶装置)である。HDD18に格納されるプログラムやデータには、例えば、端末プログラム30や検索プログラム40、コンピュータ300の全体を制御する基本ソフトウェアであるOS(Operating System)、OS上で動作する各種プログラム等がある。なお、コンピュータ300は、HDD18の代わりに又はHDD18と併せて、SSD(Solid State Drive)等の不揮発性のメモリ(記憶装置)を用いても良い。
本実施形態の端末装置10及び検索装置20は、図2に示すようなコンピュータ300により後述する各種処理を実現することができる。
<機能構成>
次に、第一の実施形態の検索システム1の機能構成について、図3を参照しながら説明する。図3は、第一の実施形態の検索システムの機能構成の一例を示す図である。
図3に示す端末装置10は、入力受付部101、登録要求部102、取得要求部103、検索要求部104、及び表示制御部105を有する。これら各部は、端末装置10にインストールされた端末プログラム30が、CPU16に実行させる処理により実現される。
入力受付部101は、ユーザからの各種の入力操作を受け付ける。例えば、入力受付部101は、インデックスを生成するための集合定義の登録操作や、コンテンツを登録するためのコンテンツの登録操作を受け付ける。また、例えば、入力受付部101は、コンテンツを検索するための検索操作や、コンテンツを表示させるための表示操作を受け付ける。
ここで、本実施形態の検索システム1では、ユーザにより設定(定義)された集合定義に基づいて、検索装置20に登録されているコンテンツの部分集合であるコンテンツ集合を生成する。そして、本実施形態の検索システム1では、集合定義に基づき生成されたコンテンツ集合をインデックスとして用いる。なお、集合定義及びコンテンツ集合の詳細については後述する。
登録要求部102は、入力受付部101が受け付けた入力操作に応じて、集合定義の登録要求やコンテンツの登録要求を検索装置20に送信する。
取得要求部103は、入力受付部101が受け付けた入力操作に応じて、コンテンツ集合を表示装置12に表示させるためのコンテンツ集合の取得要求を検索装置20に送信する。また、取得要求部103は、入力受付部101が受け付けた入力操作に応じて、ユーザにより選択されたコンテンツを表示装置12に表示させるためのコンテンツの取得要求を検索装置20に送信する。
検索要求部104は、入力受付部101が受け付けた入力操作に応じて、コンテンツ集合から所望のコンテンツを検索するためのコンテンツの検索要求を検索装置20に送信する。
表示制御部105は、表示装置12に各種画面を表示させる。例えば、表示制御部105は、入力受付部101が受け付けた表示操作に応じて、集合定義の登録画面やコンテンツの登録画面等を表示装置12に表示させる。また、例えば、表示制御部105は、検索装置20からの返信に応じて、検索装置20で管理されているコンテンツ集合を表示するコンテンツ一覧画面や、検索装置20で検索された検索結果画面等を表示装置12に表示させる。
図3に示す検索装置20は、登録処理部201、集合取得処理部202、検索処理部203、及びコンテンツ取得処理部204を有する。これら各部は、検索装置20にインストールされた検索プログラム40が、CPU16に実行させる処理により実現される。
また、図3に示す検索装置20は、コンテンツデータベース205、集合定義データベース206、及びコンテンツ集合データベース207を有する。これら各データベース(以下、「DB」と表す)は、HDD18により実現可能である。
なお、これら各DBは、検索装置20とネットワークNを介して接続される記憶装置等により実現されていても良い。すなわち、検索装置20は、コンテンツDB205、集合定義DB206、及びコンテンツ集合DB207のうちの少なくとも1つのDBを有するDBサーバとネットワークNを介して接続されていても良い。
登録処理部201は、集合定義の登録処理及びコンテンツの登録処理を行う。ここで、集合定義の登録処理とは、ユーザにより定義された集合定義に基づいてコンテンツ集合を生成する処理である。一方、コンテンツの登録処理とは、ユーザにより作成されたコンテンツを登録して、当該コンテンツを該当のコンテンツ集合に追加する処理である。なお、登録処理部201は、登録部211、取得部212、判定部213、インデックス部214、及び集合部215を有する。これら各部の詳細については、後述する。
集合取得処理部202は、コンテンツ集合の取得要求に応じて、コンテンツ集合DB207からコンテンツ集合を構成するコンテンツ集合データを取得する。
検索処理部203は、コンテンツの検索要求に応じて、コンテンツ集合を検索して、コンテンツ集合データを取得する。
コンテンツ取得処理部204は、コンテンツの取得要求に応じて、コンテンツDB205から該当のコンテンツデータを取得する。
コンテンツDB205は、コンテンツを示すコンテンツデータを管理する。ここで、コンテンツDB205の詳細について、図4を参照しながら説明する。図4は、コンテンツDBの一例を示す図である。
コンテンツDB205には、複数の種類のコンテンツを示すコンテンツデータが管理されている。すなわち、コンテンツDB205には、例えば図4(a)〜図4(c)に示すように、異なるデータ構造のコンテンツデータが管理されている。すなわち、コンテンツDB205には、それぞれ異なるデータ構造のコンテンツデータが格納されるコンテンツテーブル205A〜205Cが格納されている。
図4(a)に示すコンテンツテーブル205Aには、例えば報告書を示すコンテンツデータが格納される。コンテンツテーブル205Aに格納されるコンテンツデータは、データ項目として、コンテンツID、タイトル、作成者、ステータス、及び本文を有する。コンテンツIDは、検索システム1においてコンテンツデータを一意に識別する識別情報である。タイトルは、報告書の題名である。作成者は、報告書を作成したユーザの名前である。ステータスは、例えば、報告書が作成中、承認中、又は承認済のいずれであるかを示す情報である。本文は、報告書の内容である。
図4(b)に示すコンテンツテーブル205Bには、例えば設計書を示すコンテンツデータが格納される。コンテンツテーブル205Bに格納されるコンテンツデータは、データ項目として、コンテンツID、区分、記載者、管理組織、及び記載内容を有する。コンテンツIDは、上記と同様に、コンテンツデータを一意に識別する識別情報である。区分は、例えば、設計書が機密文書又は公開文書のいずれであるかを示す情報である。記載者は、設計書を記載したユーザの名前である。管理組織は、設計書を管理している組織名である。記載内容は、設計書の設計内容である。
図4(c)に示すコンテンツテーブル205Cには、例えば会議をビデオ録画したコンテンツデータが格納される。コンテンツテーブル205Cに格納されるコンテンツデータは、データ項目として、コンテンツID、区分、タイトル、撮影者、撮影日時、作成者、ステータス、及び撮影内容を有する。コンテンツIDは、上記と同様に、コンテンツデータを一意に識別する識別情報である。区分は、例えば、当該コンテンツデータが機密データ又は公開データのいずれであるかを示す情報である。タイトルは、当該コンテンツデータの題名である。撮影者は、会議を撮影した人の名前である。撮影日時は、会議の撮影日時である。作成者は、当該コンテンツデータを作成したユーザの名前である。ステータスは、例えば、当該コンテンツデータが作成中、承認中、又は承認済のいずれであるかを示す情報である。撮影内容は、ビデオ録画の内容である。
以上のように、本実施形態の検索装置20のコンテンツDB205には、様々なデータ構造を有するコンテンツデータが管理されている。なお、上記では、コンテンツDB205に3種類のデータ構造のコンテンツデータが格納されている場合について示したが、これに限られず、コンテンツDB205には、任意の種類のコンテンツデータが格納されていて良い。
集合定義DB206は、コンテンツ集合を生成するための集合定義を示す集合定義データを管理する。ここで、集合定義DB206の詳細について、図5を参照しながら説明する。図5は、集合定義DBの一例を示す図である。
図5に示す集合定義DB206に格納される集合定義データは、データ項目として、集合定義ID、抽出条件、及びインデックス対象属性を有する。集合定義IDは、検索システム1において集合定義データを一意に識別する識別情報である。抽出条件は、コンテンツDB205からコンテンツデータを抽出するための条件である。インデックス対象属性は、インデックスとするコンテンツデータのデータ項目(属性)である。
例えば、集合定義ID「P−1」の集合定義データは、抽出条件が「ステータス=作成中」、インデックス対象属性が「タイトル」と「作成者」である。これは、コンテンツDB205からデータ項目「ステータス」が「作成中」であるコンテンツデータを抽出して、当該抽出されたコンテンツデータのデータ項目「タイトル」と「作成者」を、コンテンツ集合データとしてコンテンツ集合を生成すること示している。
同様に、例えば、集合定義「P−2」の集合定義データは、抽出条件が「区分=機密」、インデックス対象属性が「管理組織」である。これは、コンテンツDB205からデータ項目「区分」が「機密」であるコンテンツデータを抽出して、当該抽出されたコンテンツデータのデータ項目「管理組織」を、コンテンツ集合データとしてコンテンツ集合を生成することを示している。
以上のように、本実施形態の検索装置20の集合定義DB206には、コンテンツ集合データを生成するための集合定義データが管理されている。なお、後述するように、集合定義データにより示される集合定義は、ユーザにより定義(設定)されて検索装置20に登録される。
コンテンツ集合DB207は、コンテンツの部分集合であるコンテンツ集合を構成するコンテンツ集合データを管理する。ここで、コンテンツ集合DB207の詳細について、図6を参照しながら説明する。図6は、コンテンツ集合DBの一例を示す図である。
コンテンツ集合DB207には、集合定義データに基づき生成されたコンテンツ集合データを管理する。すなわち、コンテンツ集合DB207には、例えば図6(a)〜図6(c)に示すように、集合定義DB206で管理されている集合定義データに基づき生成されたコンテンツ集合データを格納するコンテンツ集合テーブル207A〜207Cが格納されている。
図6(a)に示す集合定義テーブル207Aは、集合定義ID「P−1」の集合定義データに基づいて生成されたコンテンツ集合データを格納している。
図6(b)に示す集合定義テーブル207Bは、集合定義ID「P−2」の集合定義データに基づいて生成されたコンテンツ集合データを格納している。
図6(c)に示す集合定義テーブル207Cは、集合定義ID「P−3」の集合定義データに基づいて生成されたコンテンツ集合データを格納している。
以上のように、本実施形態の検索装置20のコンテンツ集合DB207には、集合定義データに基づき生成されたコンテンツ集合データが、コンテンツ集合テーブルに格納されて管理されている。
ここで、登録部211、取得部212、判定部213、インデックス部214、及び集合部215の詳細について説明する。
登録部211は、集合定義の登録処理において、集合定義の登録要求に含まれる集合定義データを集合定義DB206に格納する。また、登録部211は、コンテンツの登録処理において、コンテンツの登録要求に含まれるコンテンツデータをコンテンツDB205に格納する。
取得部212は、集合定義の登録処理において、集合定義データが集合定義DB206に格納されると、コンテンツDB205からコンテンツデータを取得する。また、取得部212は、コンテンツの登録処理において、コンテンツデータがコンテンツDB205に格納されると、集合定義DB206から集合定義データを取得する。
判定部213は、集合定義の登録処理において、取得部212により取得されたコンテンツデータが、登録要求に係る集合定義データに含まれる抽出条件を満たすか否かを判定する。また、判定部213は、コンテンツの登録処理において、登録要求に係るコンテンツデータが、取得部212により取得された集合定義データに含まれる抽出条件を満たすか否かを判定する。
インデックス部214は、集合定義の登録処理において、判定部213の判定結果に応じて、取得部212により取得されたコンテンツデータと、登録要求に係る集合定義データに含まれるインデックス対象属性とに基づいて、コンテンツ集合データを生成する。また、インデックス部214は、コンテンツの登録処理において、判定部213の判定結果に応じて、登録要求に係るコンテンツデータと、取得部212により取得された集合定義データに含まれるインデックス対象属性とに基づいて、コンテンツ集合データを生成する。
すなわち、インデックス部214は、判定部213により抽出条件を満たすと判定されたコンテンツデータから、インデックス対象属性で示されるデータ項目を抽出してコンテンツ集合データを生成する。換言すれば、インデックス部214は、判定部213により抽出条件を満たすと判定されたコンテンツデータを、インデックス対象属性で示されるデータ項目でインデックス化してコンテンツ集合データを生成する。
集合部215は、集合定義の登録処理において、インデックス部214により生成されたコンテンツ集合データをコンテンツ集合テーブルに格納した上で、当該コンテンツ集合テーブルをコンテンツ集合DB207に格納する。また、集合部215は、コンテンツの登録処理において、インデックス部214により生成されたコンテンツ集合データを、取得部212により取得された集合定義データに対応するコンテンツ集合テーブルに格納(追加)する。
<処理の詳細>
次に、第一の実施形態の検索システム1の処理の詳細について説明する。
まず、ユーザUが集合定義を定義して、検索装置20に登録する処理について、図7を参照しながら説明する。図7は、第一の実施形態の集合定義の登録処理の一例を示すシーケンス図である。以降では、ユーザUが図5で示した集合定義ID「P−1」の集合定義データにより示される集合定義を定義して、検索装置20の集合定義DB206に格納する場合について説明する。
まず、ユーザUは、端末装置10の表示装置12に集合定義の登録画面を表示させるための表示操作を行う(ステップS701)。すると、端末装置10の入力受付部101は、当該表示操作を受け付ける。
端末装置10の表示制御部105は、入力受付部101が集合定義の登録画面を表示させるための表示操作を受け付けると、例えば図8に示す集合定義の登録画面1000を表示装置12に表示させる(ステップS702)。
ここで、図8に示す集合定義の登録画面1000は、ユーザUが集合定義を定義して、検索装置20に登録するための画面である。集合定義の登録画面1000には、集合定義データに含まれる抽出条件を設定するための抽出条件設定欄1100、及びインデックス対象属性を設定するための属性設定欄1200が含まれる。また、集合定義の登録画面1000には、抽出条件設定欄1100及び属性設定欄1200に設定された内容の集合定義を検索装置20に登録するための登録ボタン1300が含まれる。
なお、図8に示す集合定義の登録画面1000には、属性設定欄1200に属性1設定欄1201及び属性2設定欄1202が含まれる場合を示したが、これに限られない。属性設定欄1200には、任意の数の属性設定欄が含まれて良い。
ユーザUは、集合定義の登録画面1000において、集合定義の登録操作を行う(ステップS703)。すなわち、ユーザUは、集合定義の登録画面1000において、例えば、抽出条件設定欄1100を「ステータス=作成中」と設定する。またユーザUは、属性設定欄1200の属性1設定欄1201を「タイトル」、属性2設定欄1202を「作成者」と設定し、登録ボタン1300を押下して、集合定義の登録操作を行う。すると、端末装置10の入力受付部101は、当該登録操作を受け付ける。
なお、抽出条件設定欄1100には、コンテンツDB205からコンテンツデータを抽出するための種々の条件式を設定することができる。例えば、抽出条件設定欄1100に、コンテンツデータのデータ項目に対して関係代数や関係論理で表される条件式を設定しても良い。また、例えば、抽出条件設定欄1100に、SQLを設定しても良い。
端末装置10の登録要求部102は、入力受付部101が集合定義の登録操作を受け付けると、集合定義データが含まれる集合定義の登録要求を検索装置20に送信する(ステップS704)。ここで、当該集合定義データには、集合定義の登録画面1000においてユーザUにより設定された抽出条件及びインデックス対象属性、並びに登録要求部102により生成された集合定義IDが含まれる。
検索装置20の登録処理部201は、集合定義の登録要求を受信すると、登録部211により、当該登録要求に含まれる集合定義データを集合定義DB206に格納する(ステップS705)。これにより、ユーザUにより定義された集合定義が検索装置20に登録される。
次に、検索装置20の登録処理部201は、コンテンツ集合の生成処理を行う(ステップS706)。すなわち、登録処理部201は、登録した集合定義に基づいてコンテンツ集合を生成する。なお、コンテンツ集合の生成処理の詳細については後述する。
続いて、検索装置20の登録処理部201は、コンテンツ集合を生成すると、集合定義が登録されたことを示す登録結果を端末装置10に送信する(ステップS707)。
最後に、端末装置10の表示制御部105は、集合定義が登録されたことを示す登録結果画面を表示装置12に表示させる(ステップS708)。
以上により、本実施形態の検索システム1では、ユーザUにより定義された集合定義を検索装置20に登録することができる。
次に、上記のステップS706におけるコンテンツ集合の生成処理の詳細について、図9を参照しながら説明する。図9は、第一の実施形態のコンテンツ集合の生成処理の一例を示すフローチャートである。
まず、登録処理部201の取得部212は、コンテンツDB205からコンテンツデータを1件取得する(ステップS901)。
次に、登録処理部201の判定部213は、取得部212によりコンテンツデータが取得されると、当該コンテンツデータが、図7のステップS705で登録部211により登録された集合定義データの抽出条件を満たすか否かを判定する(ステップS902)。
例えば、集合定義データの抽出条件が「ステータス=作成中」である場合、判定部213は、取得部212により取得されたコンテンツデータが、データ項目「ステータス」を有し、かつ、当該データ項目の値が「作成中」であるか否かを判定する。
ステップS902において、判定部213により抽出条件を満たすと判定された場合、インデックス部214は、当該コンテンツデータと、集合定義データに含まれるインデックス対象属性とに基づいて、コンテンツ集合データを生成する(ステップS903)。
すなわち、インデックス部214は、当該コンテンツデータを、インデックス対象属性が示すデータ項目でインデックス化してコンテンツ集合データを生成する。なお、このとき、インデックス対象属性が示すデータ項目のうち少なくとも一のデータ項目を、当該コンテンツデータが有しない場合、当該データ項目の値には、例えば、空白や空値(NULL値)等が設定される。
より具体的には、インデックス対象属性が「タイトル」及び「作成者」である場合、インデックス部214は、当該コンテンツデータから「コンテンツID」、「タイトル」、及び「作成者」のデータ項目を抽出してコンテンツ集合データを生成する。このとき、インデックス部214は、当該コンテンツデータが、例えば「タイトル」のデータ項目を有しない場合、「タイトル」のデータ項目に空白や空値等を設定してコンテンツ集合データを生成する。同様に、インデックス部214は、当該コンテンツデータが、例えば「作成者」のデータ項目を有しない場合、「作成者」のデータ項目に空白や空値等を設定してコンテンツ集合データを生成する。
ステップS902において、判定部213により抽出条件を満たさないと判定された場合、登録処理部201は、ステップS904に進む。
続いて、登録処理部201の取得部212は、次のコンテンツデータがコンテンツDB205に存在するか否かを判定する(ステップS904)。
ステップS904において、取得部212により次のコンテンツデータがコンテンツDB205に存在すると判定された場合、登録処理部201は、ステップS901に戻る。すなわち、登録処理部201は、コンテンツDB205に格納されている全てのコンテンツデータに対してステップS901〜ステップS904の処理を行う。
ステップS904において、取得部212により次のコンテンツデータがコンテンツDB205に存在しないと判定された場合、集合部215は、集合定義データに含まれる集合定義IDと対応付けたコンテンツ集合テーブルを生成する。そして、集合部215は、上記のステップS905でインデックス部214により生成されたコンテンツ集合データを当該コンテンツ集合テーブルに格納した上で、当該コンテンツ集合テーブルをコンテンツ集合DB207に格納する(ステップ905)。
より具体的には、集合定義データに含まれる集合定義IDが「P−1」である場合、集合部215は、集合定義IDが「P−1」であるコンテンツ集合テーブルを作成する。そして、集合部215は、インデックス部214により作成されたコンテンツ集合データを当該コンテンツ集合テーブルに格納した上で、当該コンテンツ集合テーブルをコンテンツ集合DB207に格納する。これにより、ユーザUにより登録された集合定義に対応するコンテンツ集合が生成及び登録される。
以上により、本実施形態の検索システム1では、ユーザUにより登録された集合定義に基づいて検索装置20でコンテンツ集合が生成及び登録される。しかも、本実施形態の検索システム1では、集合定義に抽出条件及びインデックス対象属性が定義される。このため、本実施形態の検索システム1では、様々なデータ構造を有するコンテンツデータに対して共有に用いることができるインデックスとしてコンテンツ集合を生成及び登録することができる。
また、本実施形態の検索システム1では、ユーザUは、特定の目的に供されるコンテンツの集合を生成するために集合定義を登録することができる。すなわち、ユーザUは、抽出条件やインデックス対象属性を定義することで、特定の目的に供され、インデックス化されたコンテンツ集合を生成することができる。
例えば、抽出条件を「ステータス=承認中」と定義した集合定義を登録することで、承認中であるコンテンツの集合のインデックスを生成することができる。同様に、例えば、抽出条件を「作成日≧2015年5日1日、かつ、作成日≦2015年5月31日」と定義した集合定義を登録することで、5月に作成されたコンテンツの集合のインデックスを生成することができる。
なお、本実施形態のコンテンツ集合の生成処理のステップS902において、抽出条件として定義されたデータ項目を有していない場合に、当該データ項目と類似するデータ項目又は下位概念に相当するデータ項目の値で抽出条件を満たすか否かを判定しても良い。
例えば、集合定義データの抽出条件が「作成者=○○太郎」であり、取得部212により取得されたコンテンツデータのデータ項目が「コンテンツID」、「区分」、「記載者」、「管理組織」、及び「記載内容」であるとする。この場合、当該コンテンツデータは、データ項目「作成者」は有していない一方で、当該データ項目に類似するデータ項目「記載者」を有している。したがって、判定部213は、データ項目「記載者」のデータ項目の値が「○○太郎」であるか否かを判定しても良い。
同様に、例えば、集合定義データの抽出条件が「ユーザ=○○太郎」であり、取得部212により取得されたコンテンツデータのデータ項目が「コンテンツID」、「区分」、「記載者」、「管理組織」、及び「記載内容」であるとする。この場合、当該コンテンツデータは、データ項目「ユーザ」は有していない一方で、当該データ項目に下位概念に相当するデータ項目「記載者」を有している。したがって、判定部213は、データ項目「記載者」のデータ項目の値が「○○太郎」であるか否かを判定しても良い。
このように、判定部213は、集合定義データの抽出条件として定義されたデータ項目に類似するデータ項目や下位概念に相当するデータ項目等を有するコンテンツデータが、当該抽出条件を満たすか否かを判定しても良い。
次に、ユーザUがコンテンツを検索装置20に登録する処理について、図10を参照しながら説明する。図10は、第一の実施形態のコンテンツの登録処理の一例を示すシーケンス図である。なお、ユーザUとしたのは、集合定義の登録を行うユーザUと区別するためである。
例えば、ユーザUは、検索対象のコンテンツが作成される業務プロセス等を定義するユーザである一方で、ユーザUは、ユーザUにより定義された業務プロセスに従ってコンテンツの作成やコンテンツの検索等を行うユーザである。このように、本実施形態の検索システム1では、集合定義の登録を行うユーザUと、コンテンツの登録や検索等を行うユーザUとが、異なるユーザである場合を想定している。ただし、これに限られず、ユーザUと、ユーザUとが同一ユーザであっても良い。
まず、ユーザUは、端末装置10の表示装置12にコンテンツの登録画面を表示させるための表示操作を行う(ステップS1001)。すると、端末装置10の入力受付部101は、当該表示操作を受け付ける。
端末装置10の表示制御部105は、入力受付部101がコンテンツの登録画面を表示させるための表示操作を受け付けると、例えば図11に示すコンテンツの登録画面2000を表示装置12に表示させる(ステップS1002)。
ここで、図11に示すコンテンツの登録画面2000は、ユーザUが作成したコンテンツを検索装置20に登録するための画面である。図11に示す例では、データ項目として、「コンテンツID」、「タイトル」、「作成者」、「ステータス」、及び「本文」を有するコンテンツデータにより示されるコンテンツを検索装置20に登録するコンテンツの登録画面2000を示している。
コンテンツの登録画面2000には、データ項目「タイトル」の値を設定するためのタイトル設定欄2100、データ項目「作成者」の値を設定するための作成者設定欄2200、及びデータ項目「本文」の値を設定するための本文設定欄2300が含まれる。ユーザUは、これらの設定欄2100〜2300に編集することで、コンテンツデータの各データ項目の値を編集することができる。
また、コンテンツの登録画面2000には、データ項目「コンテンツID」の値を示すコンテンツID2400、及びコンテンツのステータスを示すステータス2500が含まれる。これらコンテンツID2400及びステータス2500は、例えば、端末プログラム30により設定される。なお、コンテンツID2400及びステータス2500をユーザUが設定しても良い。
ユーザUは、コンテンツの登録画面2000において、コンテンツの登録操作を行う(ステップS1003)。すると、端末装置10の入力受付部101は、当該登録操作を受け付ける。すなわち、ユーザUは、コンテンツの登録画面2000において、設定欄2100〜2300を必要に応じて編集した上で、コンテンツを検索装置20に登録するための登録ボタン2600を押下する。
端末装置10の登録要求部102は、入力受付部101がコンテンツの登録操作を受け付けると、コンテンツの登録要求を検索装置20に送信する(ステップS1004)。ここで、当該登録要求には、ユーザUにより作成されたコンテンツを示すコンテンツデータが含まれる。
検索装置20の登録処理部201は、コンテンツの登録要求を受信すると、登録部211により、当該登録要求に含まれるコンテンツデータをコンテンツDB205に格納する(ステップS1005)。これにより、ユーザUにより作成されたコンテンツが検索装置20に登録される。
次に、検索装置20の登録処理部201は、コンテンツ集合への追加処理を行う(ステップS1006)。すなわち、登録処理部201は、登録されたコンテンツと、集合定義DB206に格納されている集合定義データとに基づいて、コンテンツ集合に当該コンテンツを追加する。なお、コンテンツ集合への追加処理の詳細については後述する。
続いて、検索装置20の登録処理部201は、登録されたコンテンツがコンテンツ集合に追加されると、コンテンツが登録されたことを示す登録結果を端末装置10に送信する(ステップS1007)。
最後に、端末装置10の表示制御部105は、コンテンツが登録されたことを示す登録結果画面を表示装置12に表示させる(ステップS1008)。
以上により、本実施形態の検索システム1では、ユーザUにより作成されたコンテンツを検索装置20に登録することができる。
次に、上記のステップS1006におけるコンテンツ集合への追加処理の詳細について、図12を参照しながら説明する。図12は、第一の実施形態のコンテンツ集合への追加処理の一例を示すフローチャートである。
まず、登録処理部201の取得部212は、集合定義DB206から集合定義データを1件取得する(ステップS1201)。
次に、登録処理部201の判定部213は、取得部212により集合定義データが取得されると、図10のステップS1005で登録部211により登録されたコンテンツデータが、当該集合定義データの抽出条件を満たすか否かを判定する(ステップS1202)。
ステップS1002において、判定部213により抽出条件を満たさないと判定された場合、登録処理部201は、ステップS1205に進む。
ステップS1002において、判定部213により抽出条件を満たすと判定された場合、インデックス部214は、当該コンテンツデータと、集合定義データに含まれるインデックス対象属性とに基づいて、コンテンツ集合データを生成する(ステップS1203)。すなわち、インデックス部214は、図9のステップS903と同様の処理を行う。
次に、集合部215は、コンテンツ集合DB207に格納されたコンテンツ集合テーブルであって、取得部212より取得された集合定義データの集合定義IDに対応するコンテンツ集合テーブルに、コンテンツ集合データを追加する(ステップS1204)。これにより、抽出条件を満たす集合定義に対応するコンテンツ集合テーブルに、登録されたコンテンツに基づくコンテンツ集合データが追加される。
最後に、登録処理部201の取得部212は、次の集合定義データが集合定義DB206に存在するか否かを判定する(ステップS1205)。
ステップS1205において、取得部212により次の集合定義データが集合定義DB206に存在すると判定された場合、登録処理部201は、ステップS1201に戻る。すなわち、登録処理部201は、集合定義DB206に格納されている全ての集合定義データに対してステップS1201〜ステップS1205の処理を行う。
ステップS1205において、取得部212により次の集合定義データが集合定義DB206に存在しないと判定された場合、登録処理部201は、処理を終了させる。
以上により、本実施形態の検索システム1では、ユーザUにより作成されたコンテンツが検索装置20に登録される。また、このとき、本実施形態の検索システム1では、検索装置20に登録されているコンテンツ集合に対応する集合定義に応じて、当該コンテンツ集合にコンテンツを追加する。
このように、本実施形態の検索システム1では、ユーザUにより新たなコンテンツが作成された場合、当該コンテンツを、既に登録されているコンテンツ集合に追加する。これにより、本実施形態の検索システム1では、新たなコンテンツの登録に応じて、当該登録されたコンテンツを検索するためのインデックス(すなわち、コンテンツ集合)を動的に作成することができる。
次に、ユーザUがコンテンツ集合としてインデックス化されたコンテンツの一覧を端末装置10の表示装置12に表示させる処理について、図13を参照しながら説明する。図13は、第一の実施形態のコンテンツ集合の表示処理の一例を示すシーケンス図である。
まず、ユーザUは、端末装置10の表示装置12にコンテンツ一覧画面を表示させるための表示操作を行う(ステップS1301)。すると、端末装置10の入力受付部101は、当該表示操作を受け付ける。
端末装置10の表示制御部105は、入力受付部101がコンテンツ一覧画面を表示させるための表示操作を受け付けると、例えば図14(a)に示すコンテンツ一覧画面3000を表示装置12に表示させる(ステップS1302)。
ここで、図14(a)に示すコンテンツ一覧画面3000は、コンテンツ集合として登録されたコンテンツの一覧を表示させるための画面である。コンテンツ一覧画面3000には、作成中一覧ボタン3100、承認中一覧ボタン3200、承認済一覧ボタン3300、及びすべてボタン3400が含まれる。
例えば、作成中一覧ボタン3100は、集合定義ID「P−1」に対応するコンテンツ集合を表示させるためのアイコンである。また、例えば、承認済一覧ボタン3300は、集合定義ID「P−3」の集合定義を表示させるためのアイコンである。
このように、コンテンツ一覧画面3000には、検索装置20に登録されている集合定義の集合定義IDに対応付けられたアイコン等の表示部品が含まれている。ユーザUは、コンテンツ一覧画面3000において、所望の表示部品を選択することで、当該表示部品に対応するコンテンツ集合をコンテンツ表示領域3500に表示させることができる。
なお、すべてボタン3500は、集合定義IDと対応付けられておらず、検索装置20に登録されている全てのコンテンツの一覧をコンテンツ表示領域3500に表示させるためのアイコンである。
ユーザUは、コンテンツ一覧画面3000において、コンテンツ集合の選択操作を行う(ステップS1303)。すなわち、ユーザUは、コンテンツ一覧画面3000において、作成中一覧ボタン3100、承認中一覧ボタン3200、承認済一覧ボタン3300、及びすべてボタン3400のいずれかを選択する操作を行う。すると、端末装置10の入力受付部101は、当該選択操作を受け付ける。なお、以降では、コンテンツ一覧画面3000において、ユーザUにより作成中一覧ボタン3100が選択されたものとして説明する。
端末装置10の取得要求部103は、入力受付部101がコンテンツ集合の選択操作を受け付けると、コンテンツ集合の取得要求を検索装置20に送信する(ステップS1304)。ここで、当該取得要求には、ユーザUにより選択された表示部品に対応付けられた集合定義IDが含まれる。すなわち、当該取得要求には、ユーザUにより選択された作成中一覧ボタン3100に対応付けられた集合定義ID「P−1」が含まれる。
検索装置20の集合取得処理部202は、コンテンツ集合の取得要求を受信すると、当該取得要求に含まれる集合定義IDに対応付けられたコンテンツ集合テーブルを、コンテンツ集合DB207から取得する(ステップS1305)。すなわち、集合取得処理部202は、集合定義ID「P−1」に対応付けられたコンテンツ集合テーブルを、コンテンツ集合DB207から取得する。
次に、検索装置20の集合取得処理部202は、取得したコンテンツ集合テーブルに格納されているコンテンツ集合データを端末装置10に送信する(ステップS1306)。
端末装置10の表示制御部105は、検索装置20からコンテンツ集合データを受信すると、当該コンテンツ集合データに基づき、例えば図14(b)に示すコンテンツ一覧画面4000を表示装置12に表示させる(ステップS1307)。すなわち、表示制御部105は、コンテンツ一覧画面4000のコンテンツ表示領域4100に、受信したコンテンツ集合データに基づくコンテンツの一覧を表示させる。これにより、集合定義ID「P−1」に対応するコンテンツ集合が表示される。
なお、図14(b)に示すコンテンツ一覧画面4000において、ユーザUは、検索ボタン4200を押下することにより、コンテンツ表示領域4100に表示されたコンテンツ集合の中から目的のコンテンツを検索することができる。
以上により、本実施形態の検索システム1では、ユーザUにより選択されたコンテンツ集合に含まれるコンテンツの一覧を表示させることができる。
なお、本実施形態の検索システム1では、端末装置10からのコンテンツ集合の取得要求に応じて、検索装置20がコンテンツ集合データを当該端末装置10に送信するものとしたが、これに限られない。すなわち、検索装置20は、コンテンツ集合データに対応するコンテンツデータを端末装置10に返信しても良い。これにより、端末装置10では、コンテンツデータに含まれるデータ項目であって、インデックス対象属性により示されるデータ項目以外のデータ項目も一覧として表示させることができる。
次に、ユーザUがコンテンツ一覧画面4000において、検索ボタン4200を押下して、コンテンツ集合の中から目的のコンテンツを検索する場合の処理について、図15を参照しながら説明する。図15は、第一の実施形態のコンテンツの検索処理の一例を示すシーケンス図である。
まず、ユーザUは、端末装置10の表示装置12にコンテンツの検索画面を表示させるための表示操作を行う(ステップS1501)。すると、端末装置10の入力受付部101は、当該表示操作を受け付ける。
端末装置10の表示制御部105は、入力受付部101がコンテンツの検索画面を表示させるための表示操作を受け付けると、例えば図16(a)に示すコンテンツの検索画面5000を表示装置12に表示させる(ステップS1502)。
ここで、図16(a)に示すコンテンツの検索画面5000は、ユーザUが、集合定義ID「P−1」に対応するコンテンツ集合から所望のコンテンツを検索するための画面である。コンテンツの検索画面5000には、検索ウインドウ5100が含まれる。また、検索ウインドウ5100には、データ項目「作成者」に対する検索条件を入力するための検索条件欄5110、及び検索を開始するためのOKボタン5120が含まれる。
このように、コンテンツの検索画面5000には、ユーザUが検索条件を入力するための検索条件欄5110が含まれる。ユーザUは、検索条件欄5110に所望のコンテンツを検索するための検索条件を入力して、OKボタン5120を押下することで、コンテンツ集合から所望のコンテンツを検索することができる。
なお、図16(a)では、検索ウインドウ5100において、データ項目「作成者」に対する検索値を入力するための検索条件欄5110が含まれるものとしたが、これに限られない。検索ウインドウ5100には、データ項目「タイトル」に対する検索条件を入力するための検索条件欄が含まれても良い。すなわち、検索ウインドウ5100には、検索対象のコンテンツ集合を構成するコンテンツ集合データの各データ項目に対する検索条件を入力するための検索条件欄が含まれても良い。
ユーザUは、コンテンツの検索画面5000において、コンテンツの検索操作を行う(ステップS1503)。すなわち、ユーザUは、コンテンツの検索画面5000の検索ウインドウ5100において、検索条件欄5110に検索条件を入力し、OKボタン5120を押下して検索操作を行う。すると、端末装置10の入力受付部101は、当該検索操作を受け付ける。なお、以降では、ユーザUは、検索条件欄5110に「○○太郎」と入力して、OKボタン5120を押下したものとして説明する。
端末装置10の検索要求部104は、入力受付部101がコンテンツの検索操作を受け付けると、コンテンツの検索要求を検索装置20に送信する(ステップS1504)。ここで、当該検索要求には、検索対象であるコンテンツ集合の集合定義IDと、ユーザUにより検索条件欄5110に入力された検索条件とが含まれる。より具体的には、当該検索要求には、集合定義ID「P−1」と、検索条件「作成者=○○太郎」とが含まれる。
検索装置20の検索処理部203は、コンテンツの検索要求を受信すると、当該検索要求に含まれる集合定義IDのコンテンツ集合テーブルにおいて、検索条件を満たすコンテンツ集合データを取得する(ステップS1505)。
より具体的には、検索処理部203は、集合定義ID「P−1」のコンテンツ集合テーブルにおいて、データ項目「作成者」が「○○太郎」であるコンテンツ集合データを取得する。
次に、検索装置20の検索処理部203は、取得したコンテンツ集合データを端末装置10に送信する(ステップS1506)。
端末装置10の表示制御部105は、検索装置20からコンテンツ集合データを受信すると、当該コンテンツ集合データに基づき、例えば図16(b)に示す検索結果画面6000を表示装置12に表示させる(ステップS1507)。すなわち、表示制御部105は、検索結果画面6000の検索結果表示領域6100に、受信したコンテンツ集合データに基づくコンテンツの一覧を表示させる。これにより、集合定義ID「P−1」のコンテンツ集合において、ユーザUにより指定された検索条件「作成者=○○太郎」を満たすコンテンツが表示される。
次に、検索結果として表示されたコンテンツの一覧からユーザUが所望のコンテンツを選択して、当該コンテンツの内容を表示させる場合について説明する。
ユーザUは、検索結果画面6000において、コンテンツの選択操作を行う(ステップS1508)。すなわち、ユーザUは、検索結果画面6000の検索結果表示領域6100に表示されたコンテンツの一覧から所望のコンテンツを選択する選択操作を行う。すると、端末装置10の入力受付部101は、当該選択操作を受け付ける。
端末装置10の取得要求部103は、入力受付部101がコンテンツの選択操作を受け付けると、コンテンツの取得要求を検索装置20に送信する(ステップS1509)。ここで、当該取得要求には、コンテンツの一覧からユーザUにより選択されたコンテンツのコンテンツIDが含まれる。
検索装置20のコンテンツ取得処理部204は、コンテンツの取得要求を受信すると、当該取得要求に含まれるコンテンツIDのコンテンツデータを、コンテンツDB205から取得する(ステップS1510)。
次に、検索装置20のコンテンツ取得処理部204は、取得したコンテンツデータを端末装置10に送信する(ステップS1511)。
端末装置10の表示制御部105は、検索装置20からコンテンツデータを受信すると、当該コンテンツデータにより示されるコンテンツを表示装置12に表示させる(ステップS1512)。これにより、検索結果画面6000においてユーザUにより選択されたコンテンツが表示される。
以上により、本実施形態の検索システム1では、ユーザUにより指定されたコンテンツ集合において、当該ユーザUにより指定された検索条件でコンテンツの検索を行うことができる。このように、本実施形態の検索システム1では、ユーザUにより指定されたコンテンツ集合においてコンテンツの検索を行うため、コンテンツDB205を検索するよりも高速に検索結果を得ることができる。
[第二の実施形態]
次に、第二の実施形態の検索システム1について説明する。第二の実施形態の説明では、第一の実施形態との相違点について説明し、第一の実施形態と同様の機能構成を有する箇所には第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
本実施形態は、端末装置10のユーザUが、検索装置20に登録されている集合定義の変更(更新)を行うことができるものである。
<機能構成>
第二の実施形態の検索システム1の機能構成について、図17を参照しながら説明する。図17は、第二の実施形態の検索システムの機能構成の一例を示す図である。
図17に示す端末装置10は、登録要求部102Aを有する。登録要求部102Aは、入力受付部101が受け付けた入力操作に応じて、集合定義の更新要求を検索装置20に送信する。
図17に示す検索装置20の登録処理部201Aは、登録部211Aを有する。登録部211Aは、集合定義の更新処理において、集合定義の更新要求に含まれる集合定義データで、集合定義DB206に格納されている該当の集合定義データを更新する。
<処理の詳細>
次に、第二の実施形態の検索システム1の処理の詳細について説明する。
以降では、ユーザUが、検索装置20に登録されている集合定義を変更(更新)する処理について、図18を参照しながら説明する。図18は、第二の実施形態の集合定義の更新処理の一例を示すシーケンス図である。
まず、ユーザUは、端末装置10の表示装置12に集合定義の更新画面を表示させるための表示操作を行う(ステップS1801)。すると、端末装置10の入力受付部101は、当該表示操作を受け付ける。ここで、ユーザUは、集合定義ID「P−1」の集合定義を更新するための更新画面の表示操作を行ったものとする。
端末装置10の表示制御部105は、入力受付部101が集合定義の更新画面を表示させるための表示操作を受け付けると、例えば図19に示す集合定義の更新画面7000を表示装置12に表示させる(ステップS1802)。
ここで、図19に示す集合定義の更新画面7000は、ユーザUが、検索装置20に登録されている集合定義の定義を更新するための画面である。集合定義の更新画面7000には、検索装置20に登録されている集合定義ID「P−1」の集合定義データの抽出条件を変更するための抽出条件変更欄7100、及び当該集合定義データのインデックス対象属性を変更するための属性変更欄7200が含まれる。また、集合定義の更新画面7000には、抽出条件変更欄7100及び属性変更欄7200で変更された内容で、検索装置20に登録されている該当の集合定義を更新するための更新ボタン7300が含まれる。
ユーザUは、集合定義の更新画面7000において、集合定義の更新操作を行う(ステップS1803)。すなわち、ユーザUは、集合定義の更新画面7000において、例えば、抽出条件変更欄7100を「ステータス=作成中or区分=公開」と変更し、更新ボタン7300を押下して、集合定義の更新操作を行う。すると、端末装置10の入力受付部101は、当該更新操作を受け付ける。
端末装置10の登録要求部102Aは、入力受付部101が集合定義の更新操作を受け付けると、集合定義データが含まれる集合定義の更新要求を検索装置20に送信する(ステップS1804)。ここで、当該集合定義データには、集合定義ID、及びユーザUにより変更された抽出条件やインデックス対象属性が含まれる。
検索装置20の登録処理部201Aは、集合定義の更新要求を受信すると、登録部211Aにより、当該更新要求に含まれる集合定義データで、集合定義DB206に格納されている該当の集合定義データを更新する(ステップS1805)。すなわち、更新要求に含まれる集合定義ID「P−1」の集合定義データである場合、登録部211Aは、集合定義DB206に格納されている集合定義ID「P−1」の集合定義データを、更新要求に含まれる集合定義データで更新(上書き)する。これにより、検索装置20に登録されている集合定義が更新される。
次に、検索装置20の登録処理部201Aは、コンテンツ集合の再生成処理を行う(ステップS1806)。すなわち、登録処理部201Aは、更新された集合定義データの集合定義IDに対応するコンテンツ集合テーブルを削除した上で、更新された集合定義データに基づいて新たなコンテンツ集合テーブルを生成する。更新された集合定義データに基づいて新たなコンテンツ集合テーブルを生成する処理については、図9を用いて説明したコンテンツ集合の生成処理と同様であるため、その説明を省略する。
続いて、検索装置20の登録処理部201Aは、コンテンツ集合を生成すると、集合定義が更新されたことを示す更新結果を端末装置10に送信する(ステップS1807)。
最後に、端末装置10の表示制御部105は、集合定義が更新されたことを示す更新結果画面を表示装置12に表示させる(ステップS1808)。
以上により、本実施形態の検索システム1では、ユーザUにより、検索装置20に登録されている集合定義が更新される。また、このとき、本実施形態の検索装置20では、集合定義が更新されると、当該更新後の集合定義に基づいてコンテンツ集合を再作成する。したがって、ユーザUは、コンテンツ集合の目的の変更等に応じて、当該コンテンツ集合に対応する集合定義を適宜変更することができる。
[第三の実施形態]
次に、第三の実施形態の検索システム1について説明する。第三の実施形態の説明では、第一の実施形態との相違点について説明し、第一の実施形態と同様の機能構成を有する箇所には第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
本実施形態は、端末装置10のユーザUが、検索装置20に登録されているコンテンツの削除を行うことができるものである。
<機能構成>
第三の実施形態の検索システム1の機能構成について、図20を参照しながら説明する。図20は、第三の実施形態の検索システムの機能構成の一例を示す図である。
図20に示す端末装置10は、削除要求部106を有する。当該機能部は、端末装置10にインストールされた端末プログラム30が、CPU16に実行させる処理により実現される。
削除要求部106は、入力受付部101が受け付けた入力操作に応じて、検索装置20に登録されているコンテンツを削除するためのコンテンツの削除要求を当該検索装置20に送信する。
図20に示す検索装置20は、削除処理部208を有する。当該機能部は、検索装置20にインストールされた検索プログラム40が、CPU16に実行させる処理により実現される。
削除処理部208は、コンテンツの削除処理を行う。なお、削除処理部208は、集合取得部221、削除判定部222、及び削除部223を有する。
集合取得部221は、コンテンツの削除要求に応じて、コンテンツ集合DB207に含まれるコンテンツ集合テーブルを取得する。
削除判定部222は、集合取得部221により取得されたコンテンツ集合テーブルに、削除要求に係るコンテンツデータのコンテンツ集合データが含まれるか否かを判定する。
削除部223は、削除判定部222の判定結果に応じて、削除要求に係るコンテンツデータのコンテンツ集合データをコンテンツ集合テーブルから削除する。また、削除部223は、削除要求に係るコンテンツデータをコンテンツDB205から削除する。
<処理の詳細>
次に、第三の実施形態の検索システム1の処理の詳細について説明する。
以降では、ユーザUが、検索装置20に登録されているコンテンツを削除する処理について、図21を参照しながら説明する。図21は、第三の実施形態のコンテンツの削除処理の一例を示すシーケンス図である。
まず、ユーザUは、端末装置10の表示装置12にコンテンツの削除画面を表示させるための表示操作を行う(ステップS2101)。すると、端末装置10の入力受付部101は、当該表示操作を受け付ける。
端末装置10の表示制御部105は、入力受付部101がコンテンツの削除画面を表示させるための表示操作を受け付けると、例えば図22に示すコンテンツの削除画面8000を表示装置12に表示させる(ステップS2102)。
ここで、図22に示すコンテンツの削除画面8000は、ユーザUが、検索装置20に登録されているコンテンツを削除するための画面である。コンテンツの削除画面8000には、削除するコンテンツのコンテンツIDを入力するための削除ID欄8100が含まれる。また、コンテンツの削除画面8000には、削除ID欄8100に入力されたコンテンツIDのコンテンツを削除するための削除ボタン8200が含まれる。
ユーザUは、コンテンツの削除画面8000において、コンテンツの削除操作を行う(ステップS2103)。すなわち、ユーザUは、コンテンツの削除画面8000において、例えば、削除ID欄8100に「C−3」を入力し、削除ボタン8200を押下して、コンテンツの削除操作を行う。すると、端末装置10の入力受付部101は、当該削除操作を受け付ける。
端末装置10の削除要求部106は、入力受付部101がコンテンツの削除操作を受け付けると、コンテンツの削除要求を検索装置20に送信する(ステップS2104)。ここで、当該削除要求には、削除対象のコンテンツのコンテンツIDが含まれる。
検索装置20の削除処理部208は、コンテンツの削除要求を受信すると、削除要求に係るコンテンツのコンテンツ集合データをコンテンツ集合テーブルから削除してコンテンツ集合を更新するコンテンツ集合の更新処理を行う(ステップS2105)。なお、コンテンツ集合の更新処理の詳細については後述する。
検索装置20の削除処理部208は、コンテンツ集合の更新処理を行うと、削除要求に含まれるコンテンツIDのコンテンツデータを、コンテンツDB205から削除する(ステップS2105)。これにより、ユーザUにより指定されたコンテンツが検索装置20から削除される。
続いて、検索装置20の削除処理部208は、コンテンツを削除すると、指定されたコンテンツが削除されたことを示す削除結果を端末装置10に送信する(ステップS2107)。
最後に、端末装置10の表示制御部105は、コンテンツが削除されたことを示す削除結果画面を表示装置12に表示させる(ステップS2108)。
以上により、本実施形態の検索システム1では、ユーザUにより端末装置10を用いて、検索装置20に登録されているコンテンツが削除される。また、このとき、本実施形態の検索システム1では、削除されたコンテンツをコンテンツ集合から削除する。これにより、本実施形態の検索システム1では、コンテンツの削除に応じて、コンテンツを検索するためのインデックス(すなわち、コンテンツ集合)を動的に更新することができる。
次に、上記のステップS2105におけるコンテンツ集合の更新処理の詳細について、図23を参照しながら説明する。図23は、第三の実施形態のコンテンツ集合の更新処理の一例を示すフローチャートである。
まず、削除処理部208の集合取得部221は、コンテンツ集合DB207からコンテンツ集合テーブルを1件取得する(ステップS2301)。
次に、削除処理部208の削除判定部222は、集合取得部221によりコンテンツ集合テーブルが取得されると、当該コンテンツ集合テーブルに、削除要求に含まれるコンテンツIDのコンテンツ集合データが含まれるか否かを判定する(ステップS2302)。
ステップS2302において、削除判定部222により削除要求に含まれるコンテンツIDのコンテンツ集合データが含まれると判定された場合、削除部223は、当該コンテンツ集合データをコンテンツ集合テーブルから削除する(ステップS2303)。
ステップS2302において、削除判定部222により削除要求に含まれるコンテンツIDのコンテンツ集合データが含まれないと判定された場合、削除処理部208は、ステップS2304に進む。
続いて、削除処理部208の集合取得部221は、次のコンテンツ集合テーブルがコンテンツ集合DB207に存在するか否かを判定する(ステップS2304)。
ステップS2304において、集合取得部221により次のコンテンツ集合テーブルがコンテンツ集合DB207に存在すると判定された場合、削除処理部208は、ステップS2301に戻る。すなわち、削除処理部208は、コンテンツ集合DB207に格納されている全てのコンテンツ集合テーブルに対してステップS2301〜ステップS2304の処理を行う。
ステップS2304において、集合取得部221により次のコンテンツ集合テーブルがコンテンツ集合DB207に存在しないと判定された場合、削除処理部208は、処理を終了させる。
以上により、本実施形態の検索システム1では、ユーザUにより指定された削除対象のコンテンツに対応するコンテンツ集合データがコンテンツ集合テーブルから削除される。このように、本実施形態の検索システム1では、コンテンツの削除に応じて、コンテンツのインデックスであるコンテンツ集合を動的に更新することができる。
以上、本発明の実施形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
10 端末装置
20 検索装置
30 端末プログラム
40 検索プログラム
101 入力受付部
102 登録要求部
103 取得要求部
104 検索要求部
105 表示制御部
201 登録処理部
202 集合取得処理部
203 検索処理部
204 コンテンツ取得処理部
205 コンテンツDB
206 集合定義DB
207 コンテンツ集合DB
211 登録部
212 取得部
213 判定部
214 インデックス部
215 集合部
N ネットワーク
特許第2549745号公報

Claims (7)

  1. インデックスを用いて、データベースに格納されたコンテンツデータを検索する検索システムであって、
    前記インデックスとするデータ項目を示すインデックス対象項目と、前記コンテンツデータを前記データベースから取得するための取得条件とを含む集合定義を登録する第1の登録手段と、
    前記第1の登録手段により集合定義が登録されると、該集合定義に含まれる前記取得条件を満たすコンテンツデータを前記データベースから取得する取得手段と、
    前記取得手段により取得されたコンテンツデータにおいて、前記集合定義に含まれる前記インデックス対象項目を抽出して、前記インデックスを生成する生成手段と、
    を有する検索システム。
  2. コンテンツデータを前記データベースに登録する第2の登録手段と、
    前記第2の登録手段により前記コンテンツデータが前記データベースに登録されると、該コンテンツデータが、前記第1の登録手段により登録された集合定義に含まれる取得条件を満たすか否かを判定する判定手段とを有し、
    前記生成手段は、
    前記判定手段により前記コンテンツデータが前記取得条件を満たすと判定された場合、該コンテンツデータにおいて、前記インデックス対象項目を抽出して、前記インデックスを生成する、請求項1に記載の検索システム。
  3. 前記生成手段は、
    前記コンテンツデータにおいて、前記インデックス対象項目が含まれない場合、該インデックス対象項目を所定の値に設定して、前記インデックスを生成する、請求項1又は2に記載の検索システム。
  4. 前記所定の値は、空白又は空値である、請求項3に記載の検索システム。
  5. 前記データベースには、第1のデータ構造で表される第1のコンテンツデータと、第2のデータ構造で表される第2のコンテンツデータとを含むコンテンツデータが格納される、請求項1ないし4のいずれか1項に記載の検索システム。
  6. インデックスを用いて、データベースに格納されたコンテンツデータを検索する検索装置であって、
    前記インデックスとするデータ項目を示すインデックス対象項目と、前記コンテンツデータを前記データベースから取得するための取得条件とを含む集合定義を登録する第1の登録手段と、
    前記第1の登録手段により集合定義が登録されると、該集合定義に含まれる前記取得条件を満たすコンテンツデータを前記データベースから取得する取得手段と、
    前記取得手段により取得されたコンテンツデータにおいて、前記集合定義に含まれる前記インデックス対象項目を抽出して、前記インデックスを生成する生成手段と、
    を有する検索装置。
  7. インデックスを用いて、データベースに格納されたコンテンツデータを検索する検索装置を、
    前記インデックスとするデータ項目を示すインデックス対象項目と、前記コンテンツデータを前記データベースから取得するための取得条件とを含む集合定義を登録する第1の登録手段、
    前記第1の登録手段により集合定義が登録されると、該集合定義に含まれる前記取得条件を満たすコンテンツデータを前記データベースから取得する取得手段、
    前記取得手段により取得されたコンテンツデータにおいて、前記集合定義に含まれる前記インデックス対象項目を抽出して、前記インデックスを生成する生成手段、
    として機能させるためのプログラム。
JP2015166703A 2015-08-26 2015-08-26 検索システム、検索装置、及びプログラム Pending JP2017045236A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2015166703A JP2017045236A (ja) 2015-08-26 2015-08-26 検索システム、検索装置、及びプログラム
PCT/JP2016/003806 WO2017033451A1 (en) 2015-08-26 2016-08-22 Retrieval system and retrieval apparatus
EP16838801.5A EP3341862A4 (en) 2015-08-26 2016-08-22 Retrieval system and retrieval apparatus
US15/741,355 US20190005077A1 (en) 2015-08-26 2016-08-22 Retrieval system and retrieval apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015166703A JP2017045236A (ja) 2015-08-26 2015-08-26 検索システム、検索装置、及びプログラム

Publications (1)

Publication Number Publication Date
JP2017045236A true JP2017045236A (ja) 2017-03-02

Family

ID=58101256

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015166703A Pending JP2017045236A (ja) 2015-08-26 2015-08-26 検索システム、検索装置、及びプログラム

Country Status (4)

Country Link
US (1) US20190005077A1 (ja)
EP (1) EP3341862A4 (ja)
JP (1) JP2017045236A (ja)
WO (1) WO2017033451A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180070917A (ko) * 2016-12-19 2018-06-27 안광세 데이터 처리 방법 및 장치

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11265389A (ja) * 1998-03-16 1999-09-28 Ntt Communication Ware Kk 共用データベース装置および共用データベースシステム
JP2002132562A (ja) * 2000-10-20 2002-05-10 Aantsusha:Kk データベース更新システム
US7093194B2 (en) * 2000-10-27 2006-08-15 Swiftknowledge, Inc. Data access system
JP2003006020A (ja) * 2001-06-26 2003-01-10 Hitachi Ltd 複製データベースアクセス装置とそのアクセス方法
US7421442B2 (en) * 2002-07-02 2008-09-02 American Express Travel Related Services Company, Inc. System and method for data capture and reporting

Also Published As

Publication number Publication date
US20190005077A1 (en) 2019-01-03
EP3341862A1 (en) 2018-07-04
WO2017033451A1 (en) 2017-03-02
EP3341862A4 (en) 2018-07-04

Similar Documents

Publication Publication Date Title
US11423359B2 (en) Managing tasks in a content management system
US11989694B2 (en) Managing projects in a content management system
US8271445B2 (en) Storage, organization and searching of data stored on a storage medium
WO2014090119A1 (zh) 电子书的提供方法、系统及云端服务器
KR20060044905A (ko) 단층화된 계층적 구조에서 의미 있는 이름의 생성
US11625526B2 (en) Systems and methods for displaying digital forensic evidence
JP5284030B2 (ja) 検索条件指定装置、検索条件指定方法及びプログラム
TWI334091B (en) Data file management and search method and system based on file attributes
US20200342029A1 (en) Systems and methods for querying databases using interactive search paths
KR101234795B1 (ko) 컨텐츠 브라우징 장치 및 방법
JP2012083929A (ja) ファイル検索装置およびファイル検索プログラム
JP2017045236A (ja) 検索システム、検索装置、及びプログラム
JP2020197839A (ja) データ管理プログラム、データ管理方法およびデータ管理システム
JP5383292B2 (ja) 情報処理装置、情報処理方法、プログラム及び記憶媒体
JPWO2014185004A1 (ja) 情報処理装置、情報処理方法およびプログラム
JP2020181516A (ja) テンプレート検索システムおよびテンプレート検索方法
KR102507487B1 (ko) 문서를 구성하는 페이지들을 빠르게 편집할 수 있도록 지원하기 위한 전용 문서 파일을 생성하는 전자 장치 및 그 동작 방법
WO2017033447A1 (en) Version management system, version management apparatus, program, and non-transitory recording medium
CN116401424A (zh) 资源处理方法、装置、计算机设备和存储介质
JP2011018202A (ja) アノテーションの検索情報作成、登録手段及び検索手段を実現するための情報処理装置
JP2019096248A (ja) 文書処理装置及びプログラム
JP2019109766A (ja) クライアント装置、制御方法及びそのプログラム
JP2011145992A (ja) 情報検索装置、情報検索方法、及びプログラム