JP2002366576A - データ検索の方法、システム、およびプログラム製品 - Google Patents

データ検索の方法、システム、およびプログラム製品

Info

Publication number
JP2002366576A
JP2002366576A JP2002102491A JP2002102491A JP2002366576A JP 2002366576 A JP2002366576 A JP 2002366576A JP 2002102491 A JP2002102491 A JP 2002102491A JP 2002102491 A JP2002102491 A JP 2002102491A JP 2002366576 A JP2002366576 A JP 2002366576A
Authority
JP
Japan
Prior art keywords
data
match
fptr
fragments
computer
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.)
Granted
Application number
JP2002102491A
Other languages
English (en)
Other versions
JP3832821B2 (ja
Inventor
Rajendra Kumar Bera
ラジェンドラ・クムラ・ベーラ
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2002366576A publication Critical patent/JP2002366576A/ja
Application granted granted Critical
Publication of JP3832821B2 publication Critical patent/JP3832821B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users

Landscapes

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

Abstract

(57)【要約】 【課題】 検索照会によって識別される部分を突き止め
るためにデータを検索する方法、装置およびコンピュー
タ製品を提供すること。 【解決手段】 データに、データベース内のテキスト・
ファイルを含めることができる。検索照会には、探され
るデータの部分に任意の順序で含まれると期待される複
数のデータ断片が含まれる。この方法には、データ断片
を受け取るステップと、データとそれぞれのデータ断片
の間の一致を突き止めるためにデータを検索するステッ
プとが含まれる。オーバーラップなしでデータ断片のす
べてを含むデータの最小部分が見つかるまで、反復検索
処理によって、オーバーラップする一致が区別され、置
換される。用語最小は、データ断片の1つの完全な組
(すべてではないがいくつかが重複する可能性がある)
だけを含む部分を意味する。テキストの識別された部分
を、データの表示で強調表示することができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータ環境
でのデータ検索すなわち、ユーザによってコンピュータ
に供給された検索照会に作用し、照会に従ってデータを
突き止める方法、システム、およびプログラム製品に関
する。排他的ではなく、具体的には、本発明は、保管さ
れたテキスト・ファイルのデータベース内に存在する可
能性があり、ユーザが供給した検索照会に従うテキスト
を突き止めることに関する。
【0002】本明細書での用語「プログラム製品」は、
CD−ROMもしくは1つまたは複数のフロッピ(R)
・ディスクなどの機械可読記憶媒体によって保管される
か、リモート・コンピュータ・サイトからダウンロード
のために使用可能にされるコンピュータ・コードの本体
を意味する。
【0003】
【従来の技術】テキスト・ファイルのデータ・ベース内
で特定の文書またはテキストのブロックを識別するか突
き止めるために、特定のテキスト・ストリングを含むユ
ーザ供給の検索要求を受け取ることができ、索引付きデ
ータベースの階層検索を実行してデータベース内の一致
するストリングを見つける方法および装置を提供するこ
とが既知である。そのような既知の方法および装置の1
つが、米国特許第5781772号に開示されている。
また、データベースに保管された文書が、AND、OR、お
よびAND NOTなどの論理演算子によってリンクされた複
数のテキスト・ストリングからなる検索照会に基づいて
突き止められる、ブール検索を実行するシステムが既知
である。時には、たとえば、2つの特定の単語が、文書
内で互いに並んでまたはお互いから指定された単語数以
内に現れる場合に文書が突き止められる「near」など、
特殊な論理演算子も使用可能である。
【0004】大きいデータベースの検索の結果には、多
数の、おそらくは大量の「ヒット」が含まれることが当
然であり、これは、検索者が、自分が探している項目を
正確に想起することができないことと、検索をさらに洗
練することを可能にするある検索機能が欠けていること
に起因する。また、既知のシステムは、検索照会に含ま
れるテキスト・ストリングを含む特定の文書を識別する
ことができるが、見つかった各文書を検索して、テキス
ト・ストリングがその文書内のどこにあるかと、たとえ
ば意味のある形で一節を識別するテキスト節に含まれる
かどうかなど、テキスト・ストリングが意味のある全体
になっているかどうかを識別する必要がある。
【0005】本願の譲受人に譲渡され、参照によって本
明細書に組み込まれる米国特許出願第09/57415
2号に、一実施形態が所定の順序でのテキスト断片を含
むテキスト部分を探すことを目的とする、テキスト検索
方法が開示されている。より一般的には、この方法に、
データの本体(データは、テキストとすることができる
が、必ずテキストであるわけではない)内に含まれるこ
とが期待される複数のデータ断片のシーケンスを受け取
るステップと、データとそれぞれのデータ断片の間の一
致を突き止めるためにデータの本体を検索するステップ
と、シーケンスの最初のデータ断片との一致のアドレス
およびシーケンス内の最後のデータ断片との一致の終端
アドレスから、データの本体の部分を識別するステップ
が含まれる。
【0006】上記の特許出願書に記載された方法の一実
施形態では、所与の順序のテキスト断片を含む最小テキ
スト部分が識別される(この用語最小部分は、テキスト
断片の1つの完全なシーケンスだけを含む部分を意味す
る。一般に、断片の少なくとも1つが、1回だけ現れる
が、この部分に、1つまたは複数の断片の複数のインス
タンスが含まれる可能性がある)。しかし、おそらく
は、複数の所与のテキスト断片を含むが、その順序が既
知でない部分について、所与のテキスト内を検索する必
要がある。たとえば、見つけたいテキスト部分が、 1. The man was lurking in the dark alley. または 2. The alley was dark. The man was lurking the
re. のいずれかであることを曖昧に記憶している場合があ
る。
【0007】テキスト断片"man ... lurking ... dark"
を含む検索要求が、前に提案されたアルゴリズムに渡さ
れる場合には、この要求によって、第1のテキスト部分
が見つかるが、第2のテキスト部分は見つからない。そ
の一方で、検索要求がテキスト断片"dark ... man ...
lurking"からなる場合には、第2のテキスト部分が見つ
かるが、第1のテキスト部分は見つからない。これは、
前に提案されたアルゴリズムが、テキストのうち、テキ
スト断片が検索要求で与えられたものと同一の順序で現
れる部分を探すからである。
【0008】
【発明が解決しようとする課題】本発明の目的は、文書
を識別するかテキスト・ファイルのデータベース内のテ
キストのブロックを突き止めるための、追加の機能性ま
たは追加の検索照会フォーマットを提供する検索アルゴ
リズムを使用可能にすることである。
【0009】本発明のもう1つの目的は、検索照会によ
って識別されるテキストの特定のブロックをよりよく区
別することができるデータ検索の装置および方法を提供
することである。
【0010】具体的には、目的は、テキスト断片を含む
検索照会を処理し、これらの断片を検索照会の順序と異
なる順序で含むテキスト部分を見つける、アルゴリズム
を提供することである。
【0011】
【課題を解決するための手段】本発明には、検索照会に
よって識別されるデータの部分を突き止めるために前記
データを検索するコンピュータ方法、システム、および
プログラム製品が含まれる。本発明には、前記データ内
に含まれると期待される複数のデータ断片を含む検索照
会を受け取り、前記データと前記データ断片のそれぞれ
との間の一致を突き止めるために前記データを検索し、
前記データ断片のすべてとの一致を含む前記データの最
小部分を識別する、ステップ、手段、またはプログラム
部分が含まれる。
【0012】本発明では、用語「最小部分」によって、
データ断片の1つの完全な組だけを含むデータの部分を
意味する。すなわち、最小部分に、その部分に複数回現
れる1つまたは複数の断片が含まれる場合があるが、こ
れらのすべてが複数回現れることはできず、データ断片
の少なくとも1つが、1回だけ現れる。これをさらに説
明するために、検索照会に、データ断片A、B、および
Cが含まれるが、検索される所与のデータに次の断片が
含まれるものとする。 ABBAACCA
【0013】最小部分は、下線付きの部分である。すな
わち、最小部分には、検索照会のデータ断片A、B、お
よびCのすべてが含まれるが、そのうちの少なくとも2
つ、この例では2番目と最後が、1回だけ現れる。テキ
スト断片を含むデータの最小部分を識別することによっ
て、意味のある形で断片に関連する部分が見つかる可能
性が高まり、たとえば、断片"man"、"lurking"、およ
び"dark"を含む照会の前の例では、最小部分が、これら
の断片を含む所与の文または句になる。データの最小部
分を識別するために、この「課題を解決するための手
段」で前に説明したように、検索照会を受け取り、デー
タとそれぞれのデータ断片との間の一致を突き止めるた
めにデータを検索した後に、本発明に、前記データ断片
のすべてを含み、前記データ断片のうちデータ内で最後
に現れる1つとの最初の一致の終端位置である終了位置
と、前記データ断片のうちデータ内で最初に現れる1つ
との、前記終了位置の前の最も近い一致の位置である開
始位置との間に存在する部分を識別することを含めるこ
とができる。
【0014】どの場合でも、データを、データの前記識
別された部分の強調表示または他の形でその部分をグラ
フィカルに示すことを用いて表示画面に表示することが
できる。
【0015】本発明のよりよい理解と、本発明を実施で
きる方法を示すために、例として添付図面を参照する。
【0016】
【発明の実施の形態】本明細書で説明する方法は、下記
の機能を提供することを意図されている。すなわち、テ
キストと、各テキスト断片が区切り記号によってテキス
トから分離される複数のテキスト断片を含む検索要求と
を与えられるものとして、作業は、テキストの先頭か
ら、すべてのテキスト断片を含むが、断片が検索要求に
現れる順序に無関係な、テキストの最初の最小部分を見
つけることである。検索は、そのようなテキストの最小
部分が見つかる場合に成功とみなされる。このアルゴリ
ズムは、特定の順序で断片を含むテキストを見つける、
前述の前に提案されたアルゴリズムをも含むソフトウェ
アに関連して使用されることを意図され、また、そのよ
うなソフトウェアに組み込むことができる。どの特定の
アルゴリズムを使用するかを指定するために、それぞれ
の異なる区切り文字を、テキスト断片の間で使用するこ
とができる。たとえば、前の特許出願で開示された、順
序に依存する検索について、省略記号を使用することが
でき(前の特許出願に開示されているように)、たとえ
ばアンド記号などの代替分離文字を、順序に依存しない
検索に使用することができる。
【0017】テキストの最小部分には、検索テキスト断
片の1つの完全な組だけが含まれる。しかし、検索要求
からの、すべてではないが1つまたは複数のテキスト断
片が、この部分に複数回現れる場合がある。複数のテキ
スト断片は、同一の内容を担わず、テキスト断片を、検
索要求内の別のテキスト断片のサブストリングにするこ
ともできない。本明細書で説明する本発明の好ましい実
施形態では、テキスト断片が、互いに部分的にオーバー
ラップすることができるが、このオーバーラップを解決
するためには、アルゴリズムに複雑さが追加される。
【0018】検索要求に、1つのテキスト断片だけが含
まれる場合には、テキストの最小部分は、単純に、所与
のテキスト内のそのテキスト断片の最初のオカレンスで
ある。
【0019】本明細書で説明するアルゴリズムが有用に
なる可能性がある状況の具体的な例は、次のとおりであ
る。 "insurgent&&&gent and &&&her cat&&& and other&&&gr
een&&&sun" が、検索要求であるものとする。ここには、6つのテキ
スト断片すなわち、"insurgent"、"gent and "、"her c
at"、" and other"、"green"、および"sun"がある。テ
キスト断片が、3つの連続するアンド記号(本明細書で
使用される区切り記号)によって区切られていることに
留意されたい。テキスト断片の先頭および末尾の空白
は、存在する場合に、そのテキスト断片の一部とみなさ
れる。テキスト "Counterinsurgent and other categories of insurgen
t people sat aroundher cat. The gent and others w
ith him stood a little far off from thisgroup. Wi
th the setting sun, and the lake on one side of th
e house, anda green pasture on the other, it was a
picturesque scene." と、上の検索要求を与えられたものとして、作業は、テ
キストの先頭から、検索要求を満足する「テキストの最
小部分」を見つけることである。
【0020】この例では、成功するアルゴリズムが、
「テキストの最小部分」が下記であることを見つける。 " and other categories of insurgent people sat aro
und her cat. The gent and others with him stood a
little far off from this group. With thesetting
sun, and the lake on one side of the house, and a
green"
【0021】テキスト検索と同様に、本発明による検索
の方法、システム、およびプログラムは、下記などの他
の状況で使用することができる。 1.断片間の間隔が未知の状況で、DNA断片を見つけ
ることが所望される、ゲノム内のDNAシーケンスの検
索(たとえば、遺伝子と、それらにコード化された、治
療的価値を有する可能性があるタンパクの探求を助ける
ため。DNAのコードの97%が、遺伝子ではなく、し
たがって、よい検索技法が真に有用になる可能性がある
ことに留意されたい)。 2.データ・マイニングすなわち、データ・フィールド
への明示的な参照なしでのデータベース・レコードの検
索。たとえば、アプリケーション・プログラムによって
データベースから照合されたテキスト・ファイルとして
作成された住所のリストを使用して、その人に関する断
片的な情報だけが使用可能である人を検索することがで
きる。この場合に、データベースの構造は重要ではな
く、アプリケーション・プログラムによって作成される
テキスト・ファイルが重要である。 3.ウェブ検索。ウェブ上の文書のより意味のある検
索。ウェブでのキーワード検索が、非常に長い文書のリ
ストをもたらす時に、本発明などの検索アルゴリズムに
よって、特に自分の専門領域の文書を検索する領域専門
家によって使用される時に、関連性に関する、リストさ
れた文書のさらなる検索を自動化することができる。 4.非常に大きいコード内のあるパターンに従うコード
断片の検索。
【0022】図1に、本発明を実施することができるコ
ンピューティング環境の1例を示す。
【0023】この実施形態には、いわゆる独立型のコン
ピュータ1すなわち、ネットワークに永久的にリンクさ
れてはおらず、表示モニタ2、キーボード3、マイクロ
プロセッサ・ベースの中央処理装置4、ハード・ディス
ク5、およびランダム・アクセス・メモリ6を含み、こ
れらのすべてが接続バス7によって互いに結合される、
コンピュータである。キーボード3は、ユーザが、検索
照会などのユーザ・データと共にコマンドをコンピュー
タに入力できるようにするために動作可能である。キー
ボード3と同様に、コンピュータには、特にコンピュー
タがグラフィカル・ユーザ・インターフェースを有する
オペレーティング・システムによって制御される場合
に、ユーザ・コマンドを入力するためのマウスまたはト
ラック・ボール(図示せず)を含めることができる。
【0024】プログラム命令をコンピュータ1に導入す
るため、すなわち、プログラム命令をランダム・アクセ
ス・メモリ6にロードするか、ハード・ディスク5に保
管するか、その両方を行い、その結果、コンピュータ
が、動作を開始するか、指令された時に動作できるよう
にされるようにするために、本発明に従って、コンピュ
ータ1に、CD−ROM9を受け取るCD−ROMドラ
イブ8が含まれる。
【0025】プログラム命令が、CD−ROM9に保管
され、このCD−ROM9から、CD−ROMドライブ
8によって読み取られる。しかし、当業者によってよく
理解されるように、CD−ROMドライブ8によって読
み取られる命令は、CD−ROM9から直接に使用可能
ではなく、ランダム・アクセス・メモリ6にロードさ
れ、ハード・ディスク5に保管され、そこからコンピュ
ータ1によって使用される場合がある。また、命令は、
CD−ROM上またはランダム・アクセス・メモリ6内
の適当な伸長ソフトウェアを使用してCD−ROMから
伸長される必要がある場合があり、どの場合でも、CD
−ROMに保管されるシーケンスと異なるシーケンスで
コンピュータ1によって受け取られ、保管される場合が
ある。
【0026】CD−ROMドライブ8の他に、またはそ
の代わりに、たとえばフロッピ(R)・ディスク・ドラ
イブ、磁気テープ・ドライブ、または、赤外線レシーバ
などの無線通信デバイス(いずれも図示せず)などの他
の適当な入力手段を設けることができる。
【0027】最後に、コンピュータ1には、電話モデム
10も含まれ、この電話モデム10を介して、コンピュ
ータが、電話回線11、インターネット・サービス・プ
ロバイダ(ISP)の構内に配置されたモデム12、お
よびISPのコンピュータ13を介して、インターネッ
トに一時的にリンク・アップすることができる。やはり
インターネットに接続されるのが、コンピュータ14な
どの多数のリモート・コンピュータであり、これらのリ
モート・コンピュータから、コンピュータ1へのダウロ
ードのために情報、ソフトウェア、および他のサービス
が使用可能である。
【0028】したがって、本発明によるプログラム製品
には、コンピュータ1に発明的方法を実行させるコンピ
ュータ・コードの本体を保管されたCD−ROMなどの
記憶媒体を含めることができる。その代わりに、プログ
ラム製品を、コンピュータ14を運営または使用する供
給者によってコンピュータ14からコンピュータ1への
ダウンロードのために使用可能にされるコンピュータ・
コードの本体として実施することができる。ISPのコ
ンピュータ13も、コンピュータ14と同一の形で使用
することができる。
【0029】コンピュータ1は、独立型環境にある必要
はない。その代わりに、永久的に接続される他のコンピ
ュータと共にネットワーク(図示せず)の一部を形成す
ることができる。コンピュータ1は、いわゆるイントラ
ネットに永久的に結合されるか、一時的リンクを有する
こともでき、このイントラネットは、インターネット・
サイトまたはURLに類似する、インターネットと同一
の形で配置されるが、たとえば特定の会社の従業員な
ど、特定のユーザだけがアクセス可能な、データ保持サ
イトのグループである。電話モデム10の代わりに、コ
ンピュータ1が、ISPのコンピュータ13へのディジ
タル・ハードワイヤード・リンクを有することができ、
また、コンピュータ1自体に、他のリモート・ユーザの
ためのISPとして働くか否かに無関係に、永久的に接
続されたインターネット・サイト(URL)を含めるこ
とができる。言い換えると、本発明は、ローカルのキー
ボード3を介してのみ使用可能であるのではなく、IS
Pとしてまたは単にインターネット・サイトとして働く
コンピュータ1への一時的または永久的リンクを介して
作業するリモート・ユーザに使用可能にすることができ
る。
【0030】検索されるデータは、おそらくは長い期間
にわたって、キーボード3を介してコンピュータに入力
され、ハード・ディスク5または、ドライブおよび他の
CD−ROMが、CD−ROMへのデータの書換が可能
であると仮定してCD−ROMドライブ8に入れられた
別のCD−ROM、または前述の任意選択のフロッピ
(R)・ディスクまたは磁気テープ・ドライブに保管さ
れた、データとすることができる。検索されるデータ
は、プログラム命令と共にCD−ROM9に保管された
データとすることもでき、また、たとえば前述のネット
ワークの一部を形成するファイル・サーバ(図示せず)
から、または、インターネットまたは前述のイントラネ
ット内のデータ保持サイトから入手可能なデータとする
ことができる。
【0031】検索方法を、図2を参照して下で説明する
が、図2の番号付きのステップは、下の説明のステップ
番号に対応する。しかし、まず、検索要求内の所与のテ
キストおよびまたはテキスト断片を、検索を開始する前
に標準形にフォーマットできることを諒解されたい。こ
れは、図2には示されていないが、推奨される。この標
準形では、たとえば、複数の連続する空白を、単一の空
白によって置換することができ、ある句読点(ピリオ
ド、コンマ、セミコロン、コロン、ハイフン、感嘆符、
疑問符など)の前に空白が見つかった場合に、その空白
が除去され、そのような句読点の後に空白がない場合
に、空白が置かれる。この標準フォーマッティングは、
たとえば、検索されるテキストが専門家によって編集さ
れていない場合に役立つ。
【0032】この検索方法は、上で定義したテキストの
最小部分bを見つけることを意図されている。変数bsta
rtおよびbendが、それぞれ部分bの先頭および末尾を指
すのに使用される。
【0033】このアルゴリズムを実行するコンピュータ
・コードに、ブロックbの強調表示ならびにその中のテ
キスト断片の強調表示などの機能を組み込むことができ
る。
【0034】検索作業を達成するアルゴリズムを、これ
から説明する。
【0035】frag[0]、frag[1]、…、frag[n-1]が、検
索要求のテキスト断片であるものとする。同一の断片が
なく、別の断片のサブストリングである断片もないと仮
定する。そのような断片の組について、i≠jであるも
のとして、frag[i]の末尾部分がfrag[j]の先頭部分とオ
ーバーラップする場合に、frag[i]がfrag[j]にオーバー
ラップすると言う。上の仮定の下で、オーバーラップ
が、部分的になるに過ぎず、絶対に完全にならないこと
に留意されたい。このテキスト断片の組に対して、i、
j=0、…、n−1について、下記の動作を実行する。
【0036】ステップ1 ストリング配列変数を作成
し、これをfrag[ ]と呼び、この配列に、検索要求内に
現れるのと同一のシーケンスで(便宜上。どのような順
序付けでも構わない)テキスト断片を書き込む。したが
って、上に示した検索の例について、n=6であり、下
記が得られる。 frag[0] = "insurgent" frag[1] = "gent and " frag[2] = "her cat" frag[3] = " and other" frag[4] = "green" frag[5] = "sun"
【0037】frag[0]がfrag[1]にオーバーラップし、fr
ag[1]がfrag[3]にオーバーラップし、frag[3]がfrag[2]
にオーバーラップすることに留意されたい。frag[i]の
それぞれについて、対応するポインタ変数fptr[i]を作
成して、テキスト内で見つかったfrag[i]のインスタン
スの位置に関する情報、および、このインスタンスに関
するオーバーラップがあればそのオーバーラップ情報を
保管する。また、対応するポインタ変数nptr[i]を作成
して、テキスト内で次に見つかったfrag[i]のインスタ
ンスの位置に関する情報を保管する。bstart=0にする。
以下では、ステップ2ないし8が反復的である。
【0038】ステップ2 frag[i]のそれぞれについ
て、所与のテキストの先頭からその最初のインスタンス
を探し、見つかった場合に、frag[i]のインスタンスへ
のポインタを、文字ストリングの形でfptr[i]に保管す
る。この保管されたポインタを、<fptr[i]>と表す。す
べてのfrag[i]のインスタンスが見つかった場合には、
次のステップに進み、そうでない場合には、ステップ9
に進む。
【0039】ステップ3 iのそれぞれについて、ある
fptr[j](j≠i)に保管されたアドレス(すなわち<fp
tr[j]>)が、<fptr[i]>と<fptr[i]> + strlen(frag[i])
の間にある、すなわち<fptr[j]> > <fptr[i]>かつ<fptr
[j]> < <fptr[i]> + strlen(frag[i])であるかどうかを
判定する。あるjについてそうである場合に、fptr[i]
に保管されたアドレスに、ストリング".<fptr[j]>,j"を
付加し、その結果、fptr[i]に、修正されたストリング"
<fptr[i]>.<fptr[j]>,j"が含まれるようにする。ここで
は、ドットを使用して、frag[i]のこのインスタンスに
ついて、frag[i]が終わる前にfrag[j]が始まることを示
し、",j"を使用して、後の参照のためにインデックスj
を保管することに留意されたい。また、frag[j]が、た
とえばもう1つの断片frag[k]とオーバーラップする場
合に、この事実が、fptr[j]が検査される時に明らかに
なることに留意されたい。したがって、そのような性質
の複数のオーバーラップを、互いに連鎖し、追跡するこ
とができる。最後に、少なくとも1つのfptr[i]が、ド
ット付き拡張を有しない、たとえば、最上位アドレスを
有するfptr[i]が、ドット付き拡張を有しないことに留
意されたい。
【0040】ステップ4 fptr[i]のどれもが、ステッ
プ3でドット付きにならなかった場合には、現在の反復
を終え、bstart = min(fptr[ ])、およびbend = lptr +
strlen(lptr) - 1、ただしlptr = max(fptr[ ])を計算
し、ステップ8に進む。そうでない場合には、次のステ
ップに進む。
【0041】ステップ5 iのそれぞれについて、frag
[i]の次のインスタンスを検索し、見つかった場合に、
そのポインタをnptr[i]に保管する。見つからない場合
には、ヌル・ポインタをnptr[i]に保管する。
【0042】ステップ6 ドット付き拡張、たとえばfp
tr[j]を有するfptr[i]について(すなわち、<fptr[i]>.
<fptr[j]>,jの形を有する)、fptr[j]、nptr[i]、およ
びnptr[j]を調べ、適用可能な下記のサブステップ
(a)ないし(f)に進む。ドット付き拡張を有するfp
tr[i]がなくなるまでこのステップを繰り返し、その
後、ステップ7に進む。 (a)fptr[j]がドット付き拡張を有しておらず、か
つ、nptr[i]およびnptr[j]の両方にヌル・ポインタが含
まれる場合には、ステップ9に進む。 (b)fptr[j]がドット付き拡張を有しておらず、か
つ、nptr[i]にヌル・ポインタが含まれるが、nptr[j]に
ヌル・ポインタが含まれない場合には、fptr[i]の内容
からドット付き拡張を削除し(すなわち、サブストリン
グ".<frag[j]>,j"を除去し)、fptr[j]の内容をnptr[j]
の内容に置換する。 (c)fptr[j]がドット付き拡張を有しておらず、か
つ、nptr[i]にヌル・ポインタが含まれないが、nptr[j]
にヌル・ポインタが含まれる場合には、fptr[i]の内容
をnptr[i]の内容に置換する。 (d)fptr[j]がドット付き拡張を有しておらず、か
つ、<nptr[i]> < <nptr[j]>である場合には、fptr[ ]内
で"<fptr[k]>.<fptr[i]>,i"を検索し(存在するとして
も1つだけである)、見つかった場合には、"<fptr[k]
>.<fptr[i]>,i"を"<fptr[k]>"に置換する。"<fptr[i]>.
<fptr[j]>,i"を"<nptr[i]>"に置換する。 (e)fptr[j]がドット付き拡張を有しておらず、か
つ、<nptr[i]> > <nptr[j]>である場合には、fptr[i]の
内容からドット付き拡張を削除し(すなわち、サブスト
リング".<frag[j]>,j"を除去し)、fptr[j]の内容をnpt
r[j]の内容に置換する。 (f)fptr[j]がドット付き拡張を有する場合には、ド
ット付き拡張のないfptr[l]が見つかるまでチェーンを
たどる(そのようなものが1つある)。fptr[l]への上
向きリンクがfptr[k]である(すなわち、fptr[k]の内容
が、<fptr[k]>.<fptr[l]>,lである)ものとする。fptr
[k]をfptr[i]として扱い、fptr[l]をfptr[j]として扱
い、上のステップ6(a)からもう一度開始する。
【0043】ステップ7 ステップ3に進む。
【0044】ステップ8 ステップ2に進み、テキスト
を、ポインタbstart + 1から始まり、ポインタbendで終
わる文字シーケンスとして再定義して、次の反復を開始
する。このステップで、検索要求内のテキスト断片のす
べての少なくとも1つのインスタンスを含むテキスト・
ブロックを有することに留意されたい。反復では、検索
要求の条件に違反しない、bstartの最も高い値を探すこ
とによって、このブロックのサイズを圧縮するという作
業を行う。
【0045】ステップ9 bstart = 0の場合には、検索
を不成功としてマークし、そうでない場合には成功とし
てマークする。成功の場合に、見つかったテキストb
は、bstartから始まり、bendで終わる。bが、前の反復
の所与のテキストであることに留意されたい。
【0046】説明した方法へのさらなる洞察を与えるた
めに、所与のテキストが下記である例(前に説明した)
にこの方法を適用する。 "Counterinsurgent and other categories of insurgen
t people sat aroundher cat. The gent and others w
ith him stood a little far off from thisgroup. Wi
th the setting sun, and the lake on one side of th
e house, anda green pasture on the other, it was a
picturesque scene."
【0047】所与のテキストは(メモリに保管される時
にメモリ・アドレス1000から始まると仮定)され、
検索要求は次の通りである。 "insurgent&&&gent and &&&her cat&&& and other&&&gr
een&&&sun"
【0048】最初の反復ステップ1 n=6であり、テ
キスト断片は次の通りである。 frag[0] = "insurgent" frag[1] = "gent and " frag[2] = "her cat" frag[3] = " and other" frag[4] = "green" frag[5] = "sun" frag[0]がfrag[1]にオーバーラップし、frag[1]がfrag
[3]にオーバーラップし、frag[3]がfrag[2]にオーバー
ラップすることに留意されたい。配列fptr[i]およびnpt
r[i]を作成する。bstart = 0にする。最初の反復を開始
する。
【0049】ステップ2 テキスト断片の最初のインス
タンスへのポインタを、それぞれのfptr[ ]に保管す
る。すなわち、 fptr[0] = "1007" fptr[1] = "1012" fptr[2] = "1023" fptr[3] = "1016" fptr[4] = "1214" fptr[5] = "1164" ただし、所与のテキストが、アドレス1000から始ま
ると仮定されている。すべてのfptr[ ]が取り込まれた
ので、次のステップに進む。
【0050】ステップ3 オーバーラップについて検索
した後に、fptr[ ]の内容が次のように修正される。 fptr[0] = "1007.1012,1" fptr[1] = "1012.1016,3" fptr[2] = "1023" fptr[3] = "1016.1023,2" fptr[4] = "1214" fptr[5] = "1164"
【0051】ステップ4 fptr[ ]のいくつかにドット
付き項目があるので、次のステップに進む。
【0052】ステップ5 nptr[ ]の項目は次の通りで
ある。 nptr[0] = "1041" nptr[1] = "1082" nptr[2] = "1069" nptr[3] = "1086" nptr[4] = "" nptr[5] = ""
【0053】ステップ6 fptr[0]を検査する時に、サ
ブステップ6(f)で設定された条件が当てはまること
がわかる。したがって、fptr[0]からfptr[1]に進み、そ
の後fptr[3]に進み、最後にfptr[2]に進む。fptr[2] =
"1023"への上向きリンクは、fptr[3] = "1016.1023,2"
である。fptr[i] = fptr[3]かつfptr[j] = fptr[2]とし
て、サブステップ6(a)に進む。サブステップ6
(a)ないし6(d)は当てはまらない。fptr[2]がド
ット付き拡張を有しておらず、<nptr[3]>が<nptr[2]>よ
り大きいので、サブステップ6(e)が当てはまる。し
たがって、fptr[3]の内容からドット付き拡張を削除
し、"1016"が残され、fptr[2]の内容が、nptr[2]の内容
に置換される。更新されたfptr[ ]の内容は、次の通り
である。 fptr[0] = "1007.1012,1" fptr[1] = "1012.1016,3" fptr[2] = "1069" fptr[3] = "1016" fptr[4] = "1214" fptr[5] = "1164" サブステップ6(f)は当てはまらない。まだドット付
き拡張を有するfptr[]があるので、ステップ6を繰り返
す。
【0054】ステップ6(繰返し) fptr[0]を検査す
る時に、サブステップ6(f)が当てはまることがわか
る。fptr[0]からfptr[1]に進み、最後にfptr[3]に進
む。fptr[3] = "1016"への上向きリンクは、fptr[1] =
"1012.1016,3"である。fptr[i]= fptr[1]かつfptr[j]
= fptr[3]として、サブステップ6(a)に進む。サブ
ステップ6(a)ないし6(c)は当てはまらない。fp
tr[3]がドット付き拡張を有しておらず、<nptr[1]>が<n
ptr[3]>より小さいので、サブステップ6(d)が当て
はまる。fptr[l]がドット付き拡張であるfptr[k](k =
0)があるので、ドット付き拡張をfptr[0]の内容から削
除し、fptr[1]の内容を、nptr[1]の内容に置換する。fp
tr[ ]の更新された内容は、次のようになる。 fptr[0] = "1007" fptr[1] = "1082" fptr[2] = "1069" fptr[3] = "1016" fptr[4] = "1214" fptr[5] = "1164" サブステップ6(e)および6(f)で設定された条件
は当てはまらない。fptr[ ]は、ドット付き拡張を有す
る要素を有しないので、ステップ7に進み、これによっ
て、この方法が、もう1つの検索反復のためにステップ
3に向けられる。
【0055】ステップ3 fptr[ ]にオーバーラップが
ないので、この方法は、ステップ4に進み、bstart = 1
007およびbend = 1214 + strlen(frag[4]) - 1 = 1214
+ 5- 1 = 1218を計算する。bstartおよびbendによって
挟まれるテキストの部分は次のとおりである。 "insurgent and other categories of insurgent peopl
e sat around her cat. The gent and others with hi
m stood a little far off from this group.With the
setting sun, and the lake on one side of the hous
e, and a green" この方法は、ステップ8を介してステップ2に進み、所
与のテキストが、bstart + 1およびbendによって挟まれ
る、すなわち、所与のテキストが、次のようになる。 "nsurgent and other categories of insurgent people
sat around her cat.The gent and others with him s
tood a little far off from this group.With the set
ting sun, and the lake on one side of the house, a
nd a green"
【0056】2回目の反復ステップ2 これによって下
記が作られる。 fptr[0] = "1041" fptr[1] = "1012" fptr[2] = "1023" fptr[3] = "1016" fptr[4] = "1214" fptr[5] = "1164"
【0057】ステップ3 オーバーラップの検索によっ
て、fptr[ ]が次のように修正される。 fptr[0] = "1041" fptr[1] = "1012.1016,3" fptr[2] = "1023" fptr[3] = "1016.1023,2" fptr[4] = "1214" fptr[5] = "1164"
【0058】ステップ4 fptr[ ]のいくつかにドット
付き項目があるので、次のステップに進む。
【0059】ステップ5 nptr[ ]の項目が次のように
なる。 nptr[0] = "" nptr[1] = "1082" nptr[2] = "1069" nptr[3] = "1086" nptr[4] = "" nptr[5] = ""
【0060】ステップ6 fptr[1]を検査する時に、6
(f)が当てはまることがわかる。fptr[1]からfptr[3]
に進み、最後にfptr[2]に進む。fptr[2] = "1023"への
上向きリンクは、fptr[3] = "1016.1023,2"である。fpt
r[i] = fptr[3]かつfptr[j] =fptr[2]として、ステップ
6(a)に進む。ステップ6(a)ないし6(d)は当
てはまらない。fptr[2]がドット付き拡張を有しておら
ず、<nptr[3]>が<nptr[2]>より大きいので、ステップ6
(e)が当てはまる。したがって、fptr[3]の内容から
ドット付き拡張を削除し、"1016"が残され、fptr[2]の
内容をnptr[2]の内容に置換する。fptr[ ]の更新された
内容は、次のようになる。 fptr[0] = "1041" fptr[1] = "1012.1016,3" fptr[2] = "1069" fptr[3] = "1016" fptr[4] = "1214" fptr[5] = "1164" ステップ6(f)が当てはまらないことがわかる。ドッ
ト付き拡張を有するfptr[ ]がまだあるので、ステップ
6を繰り返す。
【0061】ステップ6(繰返し) fptr[1]を検査す
る時に、fptr[3]がドット付き拡張を有しておらず、<np
tr[1]>が<nptr[3]>より小さいので、ステップ6(d)
が当てはまることがわかる。fptr[1]がそのドット付き
拡張であるfptr[k]がないので、fptr[1]の内容をnptr
[1]の内容に置換する。fptr[ ]の更新された内容は、次
のようになる。 fptr[0] = "1041" fptr[1] = "1082" fptr[2] = "1069" fptr[3] = "1016" fptr[4] = "1214" fptr[5] = "1164" ステップ6(e)および6(f)が当てはまらないこと
がわかる。fptr[ ]は、ドット付き拡張を有する要素を
有しないので、ステップ7に進み、これによって、もう
1つの検索反復のためにステップ3に進む。
【0062】ステップ3 fptr[ ]内でオーバーラップ
が見つからなかった。ステップ4に進む。
【0063】ステップ4 bstart = 1016およびbend =
1214 + strlen(frag[4]) - 1 = 1214 + 5 - 1 = 1218を
計算する。bstartおよびbendによって挟まれるテキスト
の部分は、次のようになる。 " and other categories of insurgent people sat aro
und her cat. The gent and others with him stood a
little far off from this group. With thesetting
sun, and the lake on one side of the house, and a
green" ステップ8に進み、そこからステップ2に進んで、所与
のテキストが、bstart+ 1およびbendによって挟まれ
る、すなわち、所与のテキストが次のようになる。 "and other categories of insurgent people sat arou
nd her cat. The gent and others with him stood a
little far off from this group. With thesetting s
un, and the lake on one side of the house, and a g
reen"
【0064】3回目の反復ステップ2 これによって下
記が作られる。 fptr[0] = "1041" fptr[1] = "1082" fptr[2] = "1023" fptr[3] = "1086" fptr[4] = "1214" fptr[5] = "1164"
【0065】ステップ3 オーバーラップの検索によっ
て、fptr[ ]が次のように修正される。 fptr[0] = "1041" fptr[1] = "1082.1086,3" fptr[2] = "1023" fptr[3] = "1086" fptr[4] = "1214" fptr[5] = "1164"
【0066】ステップ4 fptr[ ]のいくつかにドット
付き項目があるので、次のステップに進む。
【0067】ステップ5 nptr[ ]の項目が次のように
なる。 nptr[0] = "" nptr[1] = "" nptr[2] = "1069" nptr[3] = "" nptr[4] = "" nptr[5] = ""
【0068】ステップ6 fptr[1]を検査する時に、6
(a)が当てはまることがわかる。したがって、ステッ
プ9に進む。
【0069】ステップ9 bstart≠0なので、検索が成
功した。すなわち、前の反復のテキストが、所望のbで
ある。
【0070】本発明の特定の好ましい実施形態を図示
し、本明細書で説明してきたが、当業者が、実施形態を
修正でき、そのような修正形態および開発が、記載され
たまたは請求された発明の範囲内であることを理解され
たい。
【0071】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0072】(1)コンピュータ環境において、検索照
会によって識別されるデータの部分を突き止めるために
前記データを検索する方法であって、前記データ内に含
まれると期待される複数のデータ断片を含む検索照会を
受け取るステップと、前記データと前記データ断片のそ
れぞれとの間の一致を突き止めるために前記データを検
索するステップと、前記データ断片のすべてとの一致を
含む前記データの最小部分を識別するステップとを含む
方法。 (2)前記データ断片のうち前記データ内に最後に現れ
るものとの最初の一致の位置である終了位置と、前記デ
ータ断片のうち前記データ内に最初に現れるものとの、
前記終了位置の前の最も近い一致の位置である開始位置
との間に存在する、前記データ断片のすべてを含む前記
データの部分を識別するステップを含む、上記(1)に
記載の方法。 (3)(i)コンピュータ・メモリ内で前記データを受
け取るステップと、(ii)複数のデータ断片を含む検
索照会を受け取るステップと、(iii)前記データと
前記データ断片のそれぞれとの間の一致を突き止めるた
めに前記データを検索するステップと、(iv)前記一
致のメモリ・アドレスを記録するステップと、(v)一
致のそれぞれについて、他の一致との部分的オーバーラ
ップのすべてを識別するステップと、(vi)そのよう
な部分的オーバーラップのそれぞれについて、他の一致
とオーバーラップしない新しい一致を探すために、前記
データを検索するステップと、(vii)前記データ
の、最初のオーバーラップしない一致の位置から最後の
オーバーラップしない一致の位置までの部分を識別する
ステップとを含む、上記(1)に記載の方法。 (4)(i)前記データ断片をコンピュータ・メモリ内
でストリング変数として保管するステップと、(ii)
前記データと各データ断片との間の最初の一致を突き止
め、各データ断片について、その最初の一致の位置をそ
れぞれのポインタ変数として保管するために、前記デー
タを検索するステップと、(iii)前記ポインタ変数
および前記データ断片のストリング長さへの参照によっ
て、前記一致の間の部分的オーバーラップのすべてを判
定するステップと、(iv)そのような部分的オーバー
ラップのすべてについて、関連するデータ断片との次の
一致を突き止め、その次の一致の位置をそれぞれのさら
なるポインタ変数に保管するために、前記データを検索
するステップと、(v)前記ポインタ変数を参照するこ
とによって、前記一致の間の残りの部分的オーバーラッ
プのすべてを判定し、前記データ断片のすべてを、その
間のオーバーラップなしに含む前記データの部分が識別
されるまで、ステップ(iv)を繰り返すステップとを
含む、上記(1)に記載の方法。 (5)前記データを表示画面に表示し、データの前記識
別された部分を強調表示するステップを含む、上記
(1)に記載の方法。 (6)検索照会によって識別されるデータの部分を突き
止めるために前記データを検索するシステムであって、
複数のデータ断片を含む検索照会を受け取る入力手段
と、検索されるデータを供給するデータ供給手段と、前
記入力手段および前記データ供給手段に接続され、前記
データと前記データ断片のそれぞれとの間の一致を突き
止めるために、前記データ供給手段によって使用可能に
されるデータを検索するように動作可能である制御手段
と、前記データ断片のすべてとの一致を含む前記データ
の最小部分を識別する情報を登録する手段とを含むシス
テム。 (7)ユーザが供給する検索照会によって識別されるデ
ータの部分を突き止めるために前記データを検索するよ
うにコンピュータを動作可能にするコンピュータ・コー
ドの本体を含むコンピュータ・プログラム製品であっ
て、前記コンピュータが複数のデータ断片を含む検索照
会を受け取ることを可能にするコンピュータ・コード部
分と、前記コンピュータに、前記データと前記データ断
片のそれぞれとの間の一致を突き止めるために前記デー
タを検索するように指令するコンピュータ・コード部分
と、前記コンピュータに、前記データ断片のすべてとの
一致を含む前記データの最小部分を識別させるコンピュ
ータ・コード部分とを含むコンピュータ・プログラム製
品。
【図面の簡単な説明】
【図1】コンピューティング環境のブロック図である。
【図2】データ検索処理を示す流れ図である。
【符号の説明】
1 コンピュータ 2 表示モニタ 3 キーボード 4 中央処理装置 5 ハード・ディスク 6 ランダム・アクセス・メモリ 7 接続バス 8 CD−ROMドライブ 9 CD−ROM 10 電話モデム 11 電話回線 12 モデム 13 コンピュータ 14 コンピュータ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ラジェンドラ・クムラ・ベーラ インド560075 バンガロール ジェーヴァ ン・ベーマ・ナガラ エフ4ストリート シーブロック・ラムヤ・リージェンシー ナンバー 101 Fターム(参考) 5B075 ND02 QM01

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】コンピュータ環境において、検索照会によ
    って識別されるデータの部分を突き止めるために前記デ
    ータを検索する方法であって、 前記データ内に含まれると期待される複数のデータ断片
    を含む検索照会を受け取るステップと、 前記データと前記データ断片のそれぞれとの間の一致を
    突き止めるために前記データを検索するステップと、 前記データ断片のすべてとの一致を含む前記データの最
    小部分を識別するステップとを含む方法。
  2. 【請求項2】前記データ断片のうち前記データ内に最後
    に現れるものとの最初の一致の位置である終了位置と、 前記データ断片のうち前記データ内に最初に現れるもの
    との、前記終了位置の前の最も近い一致の位置である開
    始位置との間に存在する、前記データ断片のすべてを含
    む前記データの部分を識別するステップを含む、請求項
    1に記載の方法。
  3. 【請求項3】(i)コンピュータ・メモリ内で前記デー
    タを受け取るステップと、 (ii)複数のデータ断片を含む検索照会を受け取るス
    テップと、 (iii)前記データと前記データ断片のそれぞれとの
    間の一致を突き止めるために前記データを検索するステ
    ップと、 (iv)前記一致のメモリ・アドレスを記録するステッ
    プと、 (v)一致のそれぞれについて、他の一致との部分的オ
    ーバーラップのすべてを識別するステップと、 (vi)そのような部分的オーバーラップのそれぞれに
    ついて、他の一致とオーバーラップしない新しい一致を
    探すために、前記データを検索するステップと、 (vii)前記データの、最初のオーバーラップしない
    一致の位置から最後のオーバーラップしない一致の位置
    までの部分を識別するステップとを含む、請求項1に記
    載の方法。
  4. 【請求項4】(i)前記データ断片をコンピュータ・メ
    モリ内でストリング変数として保管するステップと、 (ii)前記データと各データ断片との間の最初の一致
    を突き止め、各データ断片について、その最初の一致の
    位置をそれぞれのポインタ変数として保管するために、
    前記データを検索するステップと、 (iii)前記ポインタ変数および前記データ断片のス
    トリング長さへの参照によって、前記一致の間の部分的
    オーバーラップのすべてを判定するステップと、 (iv)そのような部分的オーバーラップのすべてにつ
    いて、関連するデータ断片との次の一致を突き止め、そ
    の次の一致の位置をそれぞれのさらなるポインタ変数に
    保管するために、前記データを検索するステップと、 (v)前記ポインタ変数を参照することによって、前記
    一致の間の残りの部分的オーバーラップのすべてを判定
    し、前記データ断片のすべてを、その間のオーバーラッ
    プなしに含む前記データの部分が識別されるまで、ステ
    ップ(iv)を繰り返すステップとを含む、請求項1に
    記載の方法。
  5. 【請求項5】前記データを表示画面に表示し、データの
    前記識別された部分を強調表示するステップを含む、請
    求項1に記載の方法。
  6. 【請求項6】検索照会によって識別されるデータの部分
    を突き止めるために前記データを検索するシステムであ
    って、 複数のデータ断片を含む検索照会を受け取る入力手段
    と、 検索されるデータを供給するデータ供給手段と、 前記入力手段および前記データ供給手段に接続され、前
    記データと前記データ断片のそれぞれとの間の一致を突
    き止めるために、前記データ供給手段によって使用可能
    にされるデータを検索するように動作可能である制御手
    段と、前記データ断片のすべてとの一致を含む前記デー
    タの最小部分を識別する情報を登録する手段とを含むシ
    ステム。
  7. 【請求項7】ユーザが供給する検索照会によって識別さ
    れるデータの部分を突き止めるために前記データを検索
    するようにコンピュータを動作可能にするコンピュータ
    ・コードの本体を含むコンピュータ・プログラム製品で
    あって、 前記コンピュータが複数のデータ断片を含む検索照会を
    受け取ることを可能にするコンピュータ・コード部分
    と、 前記コンピュータに、前記データと前記データ断片のそ
    れぞれとの間の一致を突き止めるために前記データを検
    索するように指令するコンピュータ・コード部分と、 前記コンピュータに、前記データ断片のすべてとの一致
    を含む前記データの最小部分を識別させるコンピュータ
    ・コード部分とを含むコンピュータ・プログラム製品。
JP2002102491A 2001-04-05 2002-04-04 データ検索の方法、システム、およびプログラム製品 Expired - Fee Related JP3832821B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/826710 2001-04-05
US09/826,710 US6963865B2 (en) 2001-04-05 2001-04-05 Method system and program product for data searching

Publications (2)

Publication Number Publication Date
JP2002366576A true JP2002366576A (ja) 2002-12-20
JP3832821B2 JP3832821B2 (ja) 2006-10-11

Family

ID=25247313

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002102491A Expired - Fee Related JP3832821B2 (ja) 2001-04-05 2002-04-04 データ検索の方法、システム、およびプログラム製品

Country Status (2)

Country Link
US (1) US6963865B2 (ja)
JP (1) JP3832821B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040205463A1 (en) * 2002-01-22 2004-10-14 Darbie William P. Apparatus, program, and method for summarizing textual data
US7010522B1 (en) * 2002-06-17 2006-03-07 At&T Corp. Method of performing approximate substring indexing
US20070178049A1 (en) * 2005-12-20 2007-08-02 Verus Pharmaceuticals, Inc. Systems and methods for the delivery of corticosteroids having an enhanced pharmacokinetic profile
US7672982B2 (en) * 2007-01-18 2010-03-02 Raxco Software, Inc. Systems, methods, and computer-usable medium for defragmenting a windows NT file system volume
US9087427B2 (en) * 2007-09-27 2015-07-21 Wayne Fueling Systems Llc Conducting fuel dispensing transactions
WO2011137368A2 (en) 2010-04-30 2011-11-03 Life Technologies Corporation Systems and methods for analyzing nucleic acid sequences
US9268903B2 (en) 2010-07-06 2016-02-23 Life Technologies Corporation Systems and methods for sequence data alignment quality assessment

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04293161A (ja) * 1991-03-20 1992-10-16 Hitachi Ltd 文書検索方法および装置
JPH08147272A (ja) * 1994-11-21 1996-06-07 Casio Comput Co Ltd 文書処理装置
JPH08212230A (ja) * 1995-01-31 1996-08-20 Toshiba Corp 文書検索方法及び文書検索装置
JPH08255172A (ja) * 1995-03-16 1996-10-01 Toshiba Corp 文書検索システム
JPH09153061A (ja) * 1995-11-30 1997-06-10 Fujitsu Ltd 文書検索装置および方法
JPH10340271A (ja) * 1997-06-09 1998-12-22 Fuji Xerox Co Ltd 文書抄録作成装置及び文書抄録作成プログラムを記録した記憶媒体
JPH11110384A (ja) * 1997-07-01 1999-04-23 Hitachi Ltd 構造化文書検索表示方法及び装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694593A (en) * 1994-10-05 1997-12-02 Northeastern University Distributed computer database system and method
GB9605473D0 (en) * 1996-03-15 1996-05-15 Int Computers Ltd Parallel searching technique
US6493709B1 (en) * 1998-07-31 2002-12-10 The Regents Of The University Of California Method and apparatus for digitally shredding similar documents within large document sets in a data processing environment

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04293161A (ja) * 1991-03-20 1992-10-16 Hitachi Ltd 文書検索方法および装置
JPH08147272A (ja) * 1994-11-21 1996-06-07 Casio Comput Co Ltd 文書処理装置
JPH08212230A (ja) * 1995-01-31 1996-08-20 Toshiba Corp 文書検索方法及び文書検索装置
JPH08255172A (ja) * 1995-03-16 1996-10-01 Toshiba Corp 文書検索システム
JPH09153061A (ja) * 1995-11-30 1997-06-10 Fujitsu Ltd 文書検索装置および方法
JPH10340271A (ja) * 1997-06-09 1998-12-22 Fuji Xerox Co Ltd 文書抄録作成装置及び文書抄録作成プログラムを記録した記憶媒体
JPH11110384A (ja) * 1997-07-01 1999-04-23 Hitachi Ltd 構造化文書検索表示方法及び装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
岡 満美子: "情報検索タスクに基づく句表現要約の評価", 情報処理学会研究報告, vol. 第99巻 第95号, CSNG200100180006, 26 November 1999 (1999-11-26), JP, pages 39 - 46, ISSN: 0000745076 *

Also Published As

Publication number Publication date
JP3832821B2 (ja) 2006-10-11
US20020147705A1 (en) 2002-10-10
US6963865B2 (en) 2005-11-08

Similar Documents

Publication Publication Date Title
US7096218B2 (en) Search refinement graphical user interface
US6834276B1 (en) Database system and method for data acquisition and perusal
US20090063440A1 (en) Method and System for Natural Language Recognition Command Interface and Data Management
JP2000029906A (ja) 文書情報管理システム
US7636732B1 (en) Adaptive meta-tagging of websites
JP2004326216A (ja) 文書検索装置、方法、プログラム、及び記録媒体
JP2002207726A (ja) 文書管理装置、関連文書抽出方法、文書操作支援方法
JPH08255163A (ja) 文書検索装置
JP2002366576A (ja) データ検索の方法、システム、およびプログラム製品
JPH10269233A (ja) 文書データベースの検索結果表示方法及び装置
US20120150899A1 (en) System and method for selectively generating tabular data from semi-structured content
JPH0934911A (ja) 情報検索装置
US6625599B1 (en) Method and apparatus for data searching and computer-readable medium for supplying program instructions
KR100341418B1 (ko) 문서자료 검색 데이터베이스화 및 이를 이용한 문서자료검색 방법
JPH1166078A (ja) 検索要求具体化方法及び装置及び検索要求具体化プログラムを格納した記憶媒体
JP4247026B2 (ja) キーワード頻度算出方法及びそれを実行するプログラム
JPH08115340A (ja) 文書検索装置およびそれに用いるインデックスファイルの作成装置
JPH0816617A (ja) 文書検索方法及び装置
JP4221249B2 (ja) 文献データ検索方法及びプログラム
JP4084531B2 (ja) 情報検索装置及び情報検索方法
JPH11161666A (ja) ドキュメントデータ検索方法および装置、並びにドキュメント編集装置
JPH08115336A (ja) マルチメディア処理装置
JP2746198B2 (ja) 全文対象データベース検索方法
JP2001344240A (ja) インターネット上の検索方法及び検索システム
JPH09120402A (ja) 情報検索方法および情報検索装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050308

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20050601

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20050606

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050905

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051018

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20051128

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051128

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20051128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20051129

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060407

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060407

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060607

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060607

TRDD Decision of grant or rejection written
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060707

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20060707

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060707

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060714

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100728

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees