(57)【要約】文書からデータを読み出すためのシステムおよび方法ならびにデータを検出する方法を記述する。浮動的な（すなわち時間的に変化する）弱く構造化された文書（たとえばＨＴＭＬページ）内に存在するデータを読むための、ユーザーが操作する表示機構および入力手段を有するコンピュータを用いたシステムを提案する。該コンピュータは少なくとも一つの文書にアクセスできる。該コンピュータはプログラムを走らせ、該プログラムによってユーザーによる少なくとも一つの第一の入力が処理され、それによって読み出すべき文書中のデータ範囲が指定される。前記プログラムは指定されたデータ範囲を読み出すための抽出命令を自動的に作成する。該抽出命令は、たとえば保存されることができる。該抽出命令を実行すると、文書内の指定されたデータ範囲が読み出される。これは時間間隔をおいて反復できる。
2006510978.tif 000002
【特許請求の範囲】
【請求項１】
文書からデータを読み出すシステムであって、
ユーザーが操作する表示機構と入力手段をもつ少なくとも一つのコンピュータと、
少なくとも一つの文書にアクセスする手段と、
ユーザーによる少なくとも一つの第一の入力を処理し、文書中で読み出すべきデータ範囲を指定するプログラム手段とを有し、
該プログラム手段は指定されたデータ範囲を読み出すための抽出命令を自動的に作成し、該抽出命令が実行されたときには文書中の指定されたデータ範囲が読み出されることを特徴とするシステム。
【請求項２】
前記プログラム手段は、データ範囲を指定する際に使われる、当該文書の少なくとも一つの構造範囲を指定するユーザーによる第二の入力をも処理し、
前記プログラム手段によって作成される抽出命令が第二の入力に対応する位置指定指示を有することを特徴とする請求項１に記載のシステム。
【請求項３】
抽出命令のための文法があらかじめ定義され、
該文法が少なくとも一つの絶対位置指定指示および少なくとも一つの相対位置指定指示を有することを特徴とする請求項１または２に記載のシステム。
【請求項４】
抽出命令を作成する際に、あらかじめ定義された文法の有効な抽出命令が複数生成され、
この抽出命令が、この命令を実行したときに当該文書の所望のデータ範囲が読み出されるかどうかに関して検査され、
実行したときに当該文書の所望のデータ範囲が読み出されるような抽出命令の中から一つの抽出命令が選び出されることを特徴とする請求項１ないし３のうちいずれか一項に記載のシステム。
【請求項５】
抽出命令の選択が複雑性の基準にしたがって行われることを特徴とする請求項４記載のシステム。
【請求項６】
コンピュータが複数の文書にアクセスし、
一つ以上の抽出命令が、その抽出命令を実行したときにユーザーが所望するデータ範囲を含んだ文書がいくつあるかに関して検査されることを特徴とする請求項１ないし５のうちいずれか一項に記載のシステム。
【請求項７】
コンピュータがコンピュータネットワークに接続されており、該コンピュータネットワークを通じてさまざまな文書にアクセスできることを特徴とする請求項１ないし６のうちいずれか一項に記載のシステム。
【請求項８】
作成された抽出命令を保存する手段を有することを特徴とする請求項１ないし７のうちいずれか一項に記載のシステム。
【請求項９】
文書からデータを読み出す方法であって、
ユーザーが操作する表示機構および入力手段ならびに文書にアクセスする手段をもつ少なくとも一つのコンピュータ上で、
ユーザーによる少なくとも一つの第一の入力を処理し、文書中で読み出すべきデータ範囲を指定するプログラム手段が実行され、
該プログラム手段は指定されたデータ範囲を読み出すための抽出命令を自動的に作成し、該抽出命令が実行されたときに文書中の指定されたデータ範囲が読み出されることを特徴とする方法。
【請求項１０】
請求項９において請求される方法の手段によって抽出命令が作成され、
該抽出命令が保存され、
該抽出命令が時間間隔をおいて反復されることを特徴とする、データを取得する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は文書からデータを読み出すシステムおよび方法ならびにデータを取得する方法に関するものである。
【背景技術】
【０００２】
今日、膨大なデータが電子的な形で保管されている。それは一方ではデータベースの形での保管を含み、コンピュータを用いて一つ以上のデータセットを目標とする問い合わせを想定している。他方では人間のユーザーによる検索や閲覧のために用意された、HMTLファイル、XMLファイル、表、構造化テキスト、表計算用の作業ページといった文書をも含んでいる。しかし、後者の電子文書も前述したデータベースと同様にコンピュータによる読み出しが可能である。しかしながら、そのような文書から単一のデータを問い合わせによって引き出す（たとえば表の中の個別の項目を読み出すなど）には、特別な問い合わせインターフェースは存在していない。そのような文書はデータベースとの対比でここでは弱く構造化されたデータと呼ぶことにするが、そうした弱く構造化されたデータからの自動的データ読み出しは通例、適切なコンピュータ言語による抽出命令を与えてやることを必要とする。適切なコンピュータ言語とは、ＰＥＲＬスクリプトや、ｇｒｅｐ、ｓｅｄ、ａｗｋといった既知のプログラムによって解釈される正規表現である。そのような命令を与えるにはプログラミングの専門知識が必要であり、ユーザーにとってあまりなじみやすいものではない。
【０００３】
文書からのデータの読み出しの目的は、通例、データを読み出して終わる一度きりの動作ではない。むしろ刻々と変化するデータ（すなわち更新されるデータ）はそのような文書から頻繁に読み出し、それを時間間隔をおいて繰り返すことが好ましい。たとえばある所与のアドレス（ＵＲＬ）によって指示されるコンピュータネットワーク上の文書（たとえばＨＴＭＬページ）にはさまざまな都市の気象データの表があって随時更新されているかもしれない。指示されたデータ、たとえば気温は日々変化する。場合によっては、データ範囲の絶対位置が書式変更のために変わってしまうことだってありうる。たとえば、ある日、パリの気温データは２列目の３行目で記述されていたのが、別の日には２列目の別の行になっていたということもあるかもしれない。
【０００４】
時間的に情報内容が変化するという、とりわけ興味深い文書の部類を以後「浮動的」と呼ぶことにする。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
この発明の目的は、文書からデータを読み出すシステムおよび方法を提供することである。また、特に弱く構造化された浮動性のある文書から問い合わせによってデータを引き出せる抽出命令をユーザーが簡単に作成できるデータ取得方法を提供することをも目的としている。
【課題を解決するための手段】
【０００６】
この目的は請求項１において定義されるシステム、請求項９において定義されるデータを読み出す方法、請求項１０において定義されるデータを検出する方法によって解決される。従属請求項はこの発明を有効に利用した実施形態によって定義される。
【０００７】
この発明に従った解決においては、ユーザーは文書中の興味のあるデータ範囲を、コンピュータで実行されているプログラムにおいて該コンピュータによって処理される入力により指定する。前記プログラムによってこの目的のための抽出命令が自動的に生成される。
【発明を実施するための最良の形態】
【０００８】
前記コンピュータは少なくとも一つの文書にアクセスできる。該コンピュータはたとえばインターネットのようなコンピュータネットワークに接続されていて、該コンピュータネットワークを通じて遠方の文書にアクセスすることが好ましい。
【０００９】
前記コンピュータ上で実行されている前記プログラムは、たとえば文書を示してユーザーに興味のあるデータ範囲を指定することを求める。その指定はたとえば指示装置（マウスのような）でしるしを付けることによって行われる。任意的に、ユーザーはそれに加えて、所望のデータ範囲をみつけるのに役立つかもしれない一つ以上のさらなるデータ範囲（ここでは構造範囲と呼ぶ）を指定する第二の入力をしてもよい。たとえば、こうした構造範囲は、表において所望の内容のセルにつながる行や列の見出しでもよい。
【００１０】
この発明によれば、抽出命令はユーザーによる入力に基づいて自動的に生成される。該抽出命令はコンピュータによって読み取れる形で与えられ、しかるべき解釈プログラムによって実行されるものであり、保存されることが好ましい。抽出命令を実行すると、当該文書の指定されたデータ範囲が読み出される。ユーザーがそれに加えてあらかじめ構造範囲を指定していた場合には、生成された抽出命令は、あらかじめ指定された構造範囲の位置または内容に対応する位置指示を含んでいることが好ましい。
【００１１】
この発明のさらなる実施形態によれば、抽出命令のために特別な文法があらかじめ定義される。あらかじめ定義された終端記号の並びから有効な表現が構成される。前記文法は、ある文書における所与の諸位置を、一方では絶対的に（たとえばその文書のイントロダクション）、他方では先に指示されたデータ範囲に対して相対的に（たとえば２行下など）位置指定するための位置指示を含むことが好ましい。
【００１２】
用いられる文法は単純な構造を有することが好ましい。前記文法は関心のある文書の種類によって変更できることが好ましい。たとえば、べたの文章の中で位置指定を行うためには、たとえば単語や文をもとにして（たとえば３番目の文の２番目の単語というように）位置指定できるような特別な文法が用意されてもよい。あるいはまた表に対しては行や列をもとにした（たとえば「パリ」で始まる行の３番目の欄というように）位置指定がとてもよくできるような特別な文法が用意されてもよい。
【００１３】
この発明のさらなる実施形態によれば、抽出命令の自動生成において前記あらかじめ定義された文法の有効な抽出命令が複数生成されるようになっていてもよい。それらの抽出命令は、実行したときに対象文書の興味あるデータ範囲が読み出されるかどうかが検査される。合格した抽出命令から一つを選択するのは、たとえば複雑さを基準として行われる。
【００１４】
自動抽出命令の用意は、単一の文書によって実現されるばかりではなく、複数のトレーニング文書を処理対象とすることが好ましい。この方法では、浮動性の文書でも絶えず改変する必要なしに、自動生成された抽出命令が常に所望のデータを与えるようになる可能性が高くなる。
【００１５】
ひとたび生成され、好ましくは複数のトレーニング文書を用いて検証された抽出命令は、保存されることが好ましい。そうすれば時間間隔をおいて繰り返し、それによって常時更新される文書の位置指定された範囲から現在の値を読み出すことができるようになる。その値はさらに、多くの異なる方法で処理できる。たとえば、コンピュータネットワークから呼び出せる異なる諸文書の現在の情報を組み合わせ、個人の設定に従ってまとめ上げられた情報の形に加工することができる。
【００１６】
この発明のこれらの、そして他の諸側面は、以下に述べる実施形態から明らかであり、また該実施形態を参照することで明快なものとなるであろう。
【００１７】
この実施形態においては、現在の気象情報が、たとえばＷＯ９９／３９４６６において記述されているような自動的に提供される個人ラジオ番組の中に挿入される。必要とされる現在の気象情報はいつでもさまざまなインターネットページ（ＨＴＭＬ文書）から得ることができる。ユーザーはコンピュータによって簡単な方法で情報を指定することができるべきであり、該情報はその後そのユーザーの日々の個人ラジオ番組に（音声合成を用いて）挿入される。
【００１８】
この目的のため、入力手段（たとえばキーボードやマウス）および出力手段（たとえば画面表示装置）を備えたコンピュータシステムが用いられる。該コンピュータはインターネットに接続されている。該コンピュータにはプログラムが組み込まれており、そのプログラムを用いてユーザーは、自分に興味のあるデータ用の抽出命令を簡単に定式化し、それらのデータを自分の個人ラジオ番組をまとめてくれるサービスプロバイダーに送信することができる。以下に、この番組の機能を詳細に説明する。
【００１９】
問い合わせを定式化するための文法が与えられる。それはいかなる形で定義してもよい。そのような文法は以下のような種類の終端記号を有する。
１．文書内で絶対的に固定されたデータ範囲を指定するための絶対位置指定（たとえばＴＯＰ、ＢＯＴＴＯＭ、ＲＯＯＴ）。
２．文書内でもとの場所またはもとのデータ範囲を基点として場所や範囲を指定するための相対位置指定（たとえば、ｎｅｘｔ＿ｐａｒａｇｒａｐｈ、ｐｒｅｖｉｏｕｓ＿ｗｏｒｄ、ｎｅｘｔ＿ｌｉｓｔ＿ｉｔｅｍ、ｃｅｌｌ＿ｕｐ、ｔｏ＿ｆｉｒｓｔ＿ｒｏｗ、ｐａｒｅｎｔ＿ｎｏｄｅ、ｆｉｒｓｔ＿ｃｈｉｌｄ、ｎｅｘｔ＿ｓｉｂｌｉｎｇ）。
３．与えられた条件の下で場所を指定する検索コマンド。検索コマンドは検索範囲（たとえば、ｉｎ＿ｐａｒａｇｒａｐｈ、ｉｎ＿ｓｕｂ−ｔｒｅｅ、ｗｉｔｈｉｎ＿ｃｏｌｕｍｎ）および条件（たとえば、ｃｏｎｔａｉｎｓ＿ｔｅｘｔ（Ｔ）、ｈａｓ＿ｆｏｒｍａｔ（Ｆ）、ｉｓ＿ａ＿ｎｕｍｂｅｒ、ｉｓ＿ｓｍａｌｌｅｒ＿ｔｈａｎ（ｎ）、ｃａｒｒｉｅｓ＿ｘｍｌ＿ｔａｇ（Ｔ））をもち、該条件が適用される場所への相対パス（たとえば前記２の相対位置指定）および該当が複数あった場合に一つのものを選び出すための指示子（たとえば、ｆｉｒｓｔ＿ｏｃｃｕｒｒｅｎｃｅ、ｎｔｈ＿ｏｃｃｕｒｒｅｎｃｅ（ｎ））ももっていてもよい。
【００２０】
異なる諸文書を対象とする抽出命令も上述した終端記号の複数の組み合わせによって構築することができる。たとえば、当業者には次のような種類の抽出命令が構築しうることは明白であろう。「該文書の３番目の表を取り上げ、１列目の入力が『カナダ』である行中にある＄記号が後ろについている数字で初出のものを取り上げる」。そのような抽出命令はたとえば次のようにして形成できる。
ＴＯＰ  ｔｏ＿ｎｅｘｔ＿ｔａｂｌｅ  ｔｏ＿ｎｅｘｔ＿ｔａｂｌｅ  ｔｏ＿ｎｅｘｔ＿ｔａｂｌｅ
ｆｉｎｄ（ｉｎ＿ｔａｂｌｅ，
ｉｓ＿ａ＿ｎｕｍｂｅｒ
かつ  ｈａｓ＿ｆｏｒｍａｔ（“＄”）
かつ  （ｔｏ＿ｆｉｒｓｔ＿ｃｏｌｕｍｎ  ｃｏｎｔａｉｎｓ＿ｔｅｘｔ（“カナダ”）），ｆｉｒｓｔ＿ｏｃｃｕｒｒｅｎｃｅ）
コンピュータ上で実行されているプログラムはユーザーから、文書中で興味のあるデータを指示する入力を受け取る。次いで該プログラムは自動的に抽出命令を作成する。該抽出命令はあらかじめ定義された文法に則って定式化されており、関連する文書において対応する実行、すなわち対応する解釈プログラムを通じた実行をした際には、指示されたデータを与える。
【００２１】
たとえば、ユーザーがフランクフルトに住んでおり、自分の個人ラジオ番組の枠組み内においてフランクフルトの現在の気温や湿度といった気象データについて毎日情報を得たいとする。そのユーザーはインターネットから呼び出せるＨＴＭＬページを検索し、そのページはこれらの題目について毎日最新の情報を掲載しているものとする。次の表は例としてそのようなページの内容を示したものである。
【００２２】
【表１】
2006510978.tif 000003
個人ラジオ番組に現在の湿度についての情報を挿入するためには、ユーザーはプログラムを用いてコンピュータに問い合わせをし、その問い合わせ結果が個人ラジオ番組を合成するためのサービスプロバイダーに送信される。前記プログラムを実行する際、ユーザーは上述した表を含む文書を呼び出して興味のある値にしるしを付ける。ここでは興味のある値はフランクフルトの湿度の値（６０）とし、表中で下線を付けてある。それに加えてユーザーは行見出し（「フランクフルト」）に対し、興味ある値を位置指定する際に使える構造範囲としてしるしを付けている。
【００２３】
この情報から、前記プログラムはあらかじめ定義された文法に従って自動的に抽出命令を作成する。該プログラムの動作様式を擬似コードとして下記に掲げる。
１．ＳＥＴ  ＴａｒｇｅｔＥｘｐｒｅｓｓｉｏｎ：＝＜ｅｍｐｔｙ＞
ＳＥＴ  ＤｏｃｕｍｅｎｔＡｎｄＭａｒｋｓＬｉｓｔ：＝＜ｅｍｐｔｙ＞
２．ＦＯＲ  ｄ  ＩＮ｛すべてのトレーニング文書｝ＤＯ
３．ＩＦ  ＴａｒｇｅｔＥｘｐｒｅｓｓｉｏｎがトレーニング文書ｄにおけるユーザーの有効な入力につながるような抽出命令になっている
ＴＨＥＮ  ＴａｒｇｅｔＥｘｐｒｅｓｓｉｏｎによってしるしを付けられた範囲を示す
しるしの付いた領域が所望のデータに対応しているかどうかをユーザーに質問
ＩＦ  ユーザーの答えが「はい」  ＴＨＥＮ  ＧＯＴＯ  ５
４．トレーニング文書ｄにおいて所望のデータ範囲にしるしを付ける入力をユーザーに要求。任意的に、ユーザーは問い合わせの際に考慮すべき構造範囲に一つ以上のしるしを与えることもできる（ユーザーがこの指定をしなかったらＳＥＴ  Ａ：＝＜ｅｍｐｔｙ＞）。
５．三連データ（ｄ、Ｍ，Ａ）をＤｏｃｕｍｅｎｔｓＡｎｄＭａｒｋｓＬｉｓｔに付す。
６．ＦＯＲ  文法Ｇから導かれ、あらかじめ定義されている複雑性指標を超えないすべての抽出命令Ｌ
７．    ＳＥＴ  ｃｏｕｎｔ：＝０
８．    ＦＯＲ  すべての三連データ（ｔ．Ａ，ｔ．Ｍ，ｔ．Ｄ）  ＩＮ  ＤｏｃｕｍｅｎｔｓＡｎｄＭａｒｋｓＬｉｓｔ  ＤＯ
９．    ＩＦ（ＭＡＲＫＩＮＧ＿ＤＵＥ＿ＴＯ＿ＬＯＣＡＴＯＲ＿ＥＸＰＲ（ｔ．Ｄ，Ｌ）＝＝ｔ．Ｍ）
ＡＮＤ  （ｔ．Ａ⊆ＬＯＣＡＴＯＲ＿ＥＸＰＲＥＳＳＩＯＮ＿ＰＡＴＨ（ｔ．Ｄ，Ｌ））
ＴＨＥＮ  ｃｏｕｎｔ＋＋
１０．  ＤＯＮＥ（ステップ８に戻って次の三連データを処理）
１１．  ＩＦ（ｃｏｕｎｔ＞ｂｅｓｔｃｏｕｎｔ）
ＯＲ（（ｃｏｕｎｔ＝＝ｂｅｓｔｃｏｕｎｔ）ＡＮＤ（ＣＯＭＰＬＥＸＩＴＹ（Ｌ）＜ＣＯＭＰＬＥＸＩＴＹ（ｂｅｓｔＬ）））
ＴＨＥＮ
ＳＥＴ  ｂｅｓｔＬ：＝Ｌ；  ＳＥＴ  ｂｅｓｔｃｏｕｎｔ：＝ｃｏｕｎｔ
１２．ＤＯＮＥ（ステップ６に戻って次の抽出命令に）
１３．ＤＯＮＥ（ステップ２に戻って次の文書に）
１４．ＲＥＴＵＲＮ  ｂｅｓｔＬ
このプログラムは以下の関数を使っている。
ＭＡＲＫＩＮＧ＿ＤＵＥ＿ＴＯ＿ＬＯＣＡＴＯＲ＿ＥＸＰＲ（文書ｄ，抽出命令）：
この関数は、抽出命令を解釈し、文書ｄ中で抽出命令によってしるしを付けられた場所にあるデータを返す。
ＬＯＣＡＴＯＲ＿ＥＸＰＲＥＳＳＩＯＮ＿ＰＡＴＨ（文書ｄ，抽出命令）：
この関数は、文書ｄにおいて抽出命令を実行する際に調べられるデータ範囲の集合を返す。
ＣＯＭＰＬＥＸＩＴＹ（抽出命令Ｌ）
抽出命令Ｌの複雑性の指標（たとえば表式の長さ）。この複雑性指標は、複数の等価な抽出命令があった場合に選択基準として用いられる。
当該プログラムはいくつかのトレーニング文書に対して動作する。それらの文書は、好ましくは同一のＵＲＬのもとに異なる時点において呼び出すことのできる内容の異なる諸文書であり、そうであれば興味のある文書の浮動性は一連のトレーニング文書が使えることによって十二分にカバーされる。しかし、当該プログラムが使われる際には、トレーニング文書が少数しかなかったり、単一のトレーニング文書しか手にはいらなかったりする場合さえあるかもしれない。そのときは外側のループ（２〜１３）が実行される回数はそのぶん少なくなる。
【００２４】
上記にて擬似コードとして提示されたプログラムは下記のように動作する。
【００２５】
外側のループ（２〜１３）が利用可能なあらゆるトレーニング文書に対して実行される。抽出命令ＴａｒｇｅｔＥｘｐｒｅｓｓｉｏｎがすでに生成されていて有効な入力につながるようなものになっていた場合、この範囲がしるしを付けられ、ユーザーに対してこれが所望の範囲であるかどうかが尋ねられる（ステップ３）。もしこれが所望の範囲でなければユーザーは所望のデータ範囲に（そして任意的に一つ以上の構造範囲にも）自分でしるしを付けるよう要求される（ステップ４）。
【００２６】
トレーニング文書、所望のデータ範囲、（任意的に）構造範囲からなる三連データがＤｏｃｕｍｅｎｔｓＡｎｄＭａｒｋｓＬｉｓｔのリストに付される（ステップ５）。
【００２７】
ステップ６では文法Ｇによっていくつかの抽出命令Ｌが生成される。これらの抽出命令は好ましくはすべて文法Ｇにおいて有効であり、あらかじめ定義された複雑性指標（たとえば、表式全体の長さ）の値も超えない表式である。当業者には文法の定義から有効な表式を自動的に生成することは容易にできるであろう。
【００２８】
生成された抽出命令Ｌ一つ一つについて、利用可能なあらゆる三連データ（目標範囲および任意的に構造範囲をもつ文書）は、その抽出命令の表式が所望の結果につながるかどうかが調べられる。もしそうであれば、カウンターが増加させられる（ステップ８〜１０）。
【００２９】
抽出命令の成果、すなわち利用できる諸トレーニング文書における正しいしる付けの数は、現在最高の成果（ｂｅｓｔｃｏｕｎｔ）と比較され、それよりも大きければ現在の表式が最良候補として保持される。現在の最良候補と同じ値であれば、複雑性指標の小さな表式が保持される（ステップ１１）。
【００３０】
最後に、このようにして決定された最良の表式が、みつけられた抽出命令として返される（ステップ１４）。
【００３１】
以下に、プログラムの実行を簡単な例によって説明することにする。
【００３２】
たとえば表構造のデータに対して用いられるかもしれない簡単な文法を下記に例として挙げる。終端記号は小文字で、非終端記号は大文字で示す。
ＥＸＰＲＥＳＳＩＯＮ：：＝
ｔｏｐ＿ｌｅｆｔ＿ｃｅｌｌ
ＲＯＷ＿ＨＥＡＤＥＲ＿ＳＥＡＲＣＨ＿ＥＸＰＲ
ＲＯＷ＿ＨＥＡＤＥＲ＿ＳＥＡＲＣＨ＿ＥＸＰＲ：：＝
ｆｉｎｄ（ｗｉｔｈｉｎ＿ｃｏｌｕｍｎ，ｃｏｎｔａｉｎｓ＿ｔｅｘｔ（＃））
ＲＯＷ＿ＥＬＥＭＥＮＴ＿ＳＥＬＥＣＴＩＯＮ
ＲＯＷ＿ＥＬＥＭＥＮＴ＿ＳＥＬＥＣＴＩＯＮ：：＝
ｓｅｌｅｃｔ＿ｅｎｔｉｒｅ＿ｃｅｌｌ  ｜
ｃｅｌｌ＿ｒｉｇｈｔ
ＲＯＷ＿ＥＬＥＭＥＮＴ＿ＳＥＬＥＣＴＩＯＮ
上記のアルゴリズムをこの文法とともに前記した表に対して使うと、数字の６０が目標範囲としてしるしが付けられ、「フランクフルト」という単語が構造範囲としてしるしが付けられていたことを考えれば、図１に示されるような生成された抽出命令
ｔｏｐ＿ｌｅｆｔ＿ｃｅｌｌ  ｆｉｎｄ（ｗｉｔｈｉｎ＿ｃｏｌｕｍｎ，ｃｏｎｔａｉｎｓ＿ｔｅｘｔ（“フランクフルト”））
ｃｅｌｌ＿ｒｉｇｈｔ  ｃｅｌｌ＿ｒｉｇｈｔ  ｓｅｌｅｃｔ＿ｅｎｔｉｒｅ＿ｃｅｌｌ
が文法から導くことができる。しるしの付けられた構造範囲の「フランクフルト」という内容がそこでは“ｆｉｎｄ”の指示に変換され、それに基づいて第１列内で「フランクフルト」が検索される（当該文法では記号“＃“は選択された構造範囲の内容「フランクフルト」によって置き換えられる）。
【００３３】
こうしてみつかったセルから出発すると、「６０」という内容をもつ所望のセルはさらに２セル右にある。すなわち、ｃｅｌｌ＿ｒｉｇｈｔを２回呼び出すことで到達できる。こうしてみつかったセルはセル全体がしるし付けされ、所望の内容「６０」を与える。
【図面の簡単な説明】
【００３４】
【図１】図１は抽出命令を導くための図式を示している。
【図１】
2006510978.tif 000004
【国際調査報告】
2006510978.tif 000005
2006510978.tif 000006
2006510978.tif 000007