JP4956757B2 - 数式記述構造化言語オブジェクト検索システムおよび検索方法 - Google Patents

数式記述構造化言語オブジェクト検索システムおよび検索方法 Download PDF

Info

Publication number
JP4956757B2
JP4956757B2 JP2008505183A JP2008505183A JP4956757B2 JP 4956757 B2 JP4956757 B2 JP 4956757B2 JP 2008505183 A JP2008505183 A JP 2008505183A JP 2008505183 A JP2008505183 A JP 2008505183A JP 4956757 B2 JP4956757 B2 JP 4956757B2
Authority
JP
Japan
Prior art keywords
structured language
mathematical expression
search
document
language object
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.)
Active
Application number
JP2008505183A
Other languages
English (en)
Other versions
JPWO2007105759A1 (ja
Inventor
嘉徳 土方
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.)
University of Osaka NUC
Original Assignee
Osaka University NUC
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 Osaka University NUC filed Critical Osaka University NUC
Priority to JP2008505183A priority Critical patent/JP4956757B2/ja
Publication of JPWO2007105759A1 publication Critical patent/JPWO2007105759A1/ja
Application granted granted Critical
Publication of JP4956757B2 publication Critical patent/JP4956757B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90—Details of database functions independent of the retrieved data types
    • G06F16/95—Retrieval from the web
    • G06F16/951—Indexing; Web crawling techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (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)

Description

この出願の発明は、数式記述構造化言語オブジェクト検索システムおよび検索方法に関するものである。さらに詳しくは、この出願の発明は、Web文書に含まれる数式を高速に検出することのできる新しい数式記述構造化言語オブジェクト検索システムおよび検索方法に関するものである。
従来のWeb検索エンジンは、キーワードを元にそのキーワードが含まれるWeb文書を探すものであった。しかし、検索クエリにはアルファベットと数字、全角のひらがな、カタカナ、漢字、全角記号を含んだ文字列しか指定できず、数式を入力することはできなかった。したがって、従来のWeb検索エンジンでは、Web文書に含まれる数式を検索することはできなかった。
数式記述構造化言語としてのMathML (Mathematics Markup Language)を対象とした類似数式検索技術は、研究されている(中西崇文,岸本貞弥,村方衛,大塚透,櫻井鉄也,北川高嗣:数式データを対象とした複合連想検索システムの実現,日本データベース学会Letters, Vol.4, No.1, 2005)が、数式に関連する文書部分の検索や、変数変換、数式展開などはまだ実現されていない。また、上記類似数式検索技術はベクトル空間モデルを用いているため、検索速度が遅いという問題があった。
ここでMathMLとは、XML(文書やデータの意味を記述するための言語の一つ。「タグ」と呼ばれる特定の文字列で地の文に構造を埋め込んでいく言語のことで、XMLはユーザが独自のタグを指定できる)ベースの数式記述言語のことであり、1998年4月にW3C(WWWで利用される技術の標準化をすすめる団体)勧告として公開されたものである。MathMLでは数式の表記と数式の意味を伝えるための2種類のタグが用意されている。MathMLファイルは単独で使用されるほか、他のXML文書に埋め込んで使用することができる。XHTMLとの連携を意識して、Webブラウザでも対応が進むものと考えられている。
そこで、この出願の発明は、以上のとおりの事情に鑑みてなされたもので、この出願の発明は、Web文書に含まれる数式を高速に検出することができ、数式に関連する文書部分の検索や、変数変換、数式展開なども可能とする、新しい数式記述構造化言語オブジェクト検索システムおよび検索方法を提供することを課題とする。
この出願の発明は、上記の課題を解決するものとして、第1には、数式記述構造化言語オブジェクトの文書木構造をもとに数式記述構造化言語オブジェクトが埋め込まれたWeb文書をあらかじめクローラーにより収集し、数式記述構造化言語オブジェクトの文書木構造を索引語として索引付けし、索引付けしたWeb文書を転置ファイルの形式でデータベースに格納している数式記述構造化言語検索エンジンと、クライアントとなるWebブラウザと、クライアントから検索クエリ情報を受け取り、その検索クエリ情報をもとに検索クエリを数式記述構造化言語検索エンジンに入力することにより検索をかけ、関連する数式記述構造化言語オブジェクトを含むWeb文書またはWeb文書部分を取得した後、クライアントに送信するサーバを備え、クライアントからの検索クエリ情報が、ユーザが指定した数式記述構造化言語オブジェクトを含むWeb文書部分であり、サーバがそのWeb文書部分からキーワードと数式記述構造化言語オブジェクトを抽出し、抽出したキーワードを検索クエリとして検索をかけることを特徴とする数式記述構造化言語オブジェクト検索システムを提供する。
上記1の発明においては、クライアントが指定した数式記述構造化言語オブジェクトを含むWeb文書部分を、ユーザのポインティングデバイス操作イベントにより得られるものとすることができる。
また、第2には、上記第1の発明において、クライアントが指定した数式記述構造化言語オブジェクトを含むWeb文書部分が、クライアントに提供されたWeb文書に埋め込まれた、ユーザのポインティングデバイス操作を検出し、指定された文書部分の検索クエリ情報をサーバに送信させるクライアントプログラムにより得られるものであることを特徴とする数式記述構造化言語オブジェクト検索システムを提供する。
また、第3には、上記第1の発明において、検索クエリによる関連する数式記述構造化言語オブジェクトが記述されたWeb文書またはWeb文書部分の取得が、数式記述構造化言語オブジェクトの文書木構造を用いて行われることを特徴とする数式記述構造化言語オブジェクト検索システムを提供する。
また、第4には、上記第1の発明において、数式記述構造化言語検索エンジンは、数式記述構造化言語オブジェクトを含むWeb文書ファイルを、数式記述構造化言語のタグとタグで囲まれた文字列を用いた索引付けされたデータ管理構造の転置ファイルとして管理していることを特徴とする数式記述構造化言語オブジェクト検索システムを提供する。
また、第5には、上記第4の発明において、サーバは、索引付けされたデータ管理構造の転置ファイルより、文書構造アクセス用パス規定言語を用いて検索結果を獲得することを特徴とする数式記述構造化言語オブジェクト検索システムを提供する。
また、第6には、上記第5の発明において、サーバは、取得した検索結果の数式記述構造化言語の文書木構造のすべてのパスに対して、文書構造アクセス用パス規定言語を用いて検索クエリに適合するか否かを検証することを特徴とする数式記述構造化言語オブジェクト検索システムを提供する。
また、第7には、上記第6の発明において、サーバは、数式記述構造化言語オブジェクトの文書木構造のすべての葉ノードの文字列をチェックすることにより、変数名が異なっている箇所を検出することを特徴とする数式記述構造化言語オブジェクト検索システムを提供する。
また、第8には、上記第7の発明において、サーバは、検出された葉ノードの文字列を検索クエリに含まれる文字列で置き換えることにより変数変換を行うことを特徴とする数式記述構造化言語オブジェクト検索システムを提供する。
本発明の数式記述構造化言語オブジェクト検索システムの好ましい態様としては、次のようなものを挙げることができる。
上記発明において、抽出した関連するWeb文書またはWeb文書部分を、ユーザがポインティングデバイス操作を行ったWeb文書中でイベントが発生したオブジェクトの、兄弟または子供のノードとして挿入させること。
上記発明において、サーバは、クライアントからユーザが指定した2つの数式記述構造化言語オブジェクトの検索クエリ情報を受け取り、受け取った検索クエリ情報から2つの数式記述構造化言語オブジェクトを抽出して検索クエリとし、これら2つの数式記述構造化言語オブジェクトの間にある1つ以上の数式記述構造化言語オブジェクトがあるWeb文書部分を取得して式展開検索を行うこと。
上記発明において、サーバは、ユーザが指定した2つの数式記述構造化言語オブジェクトの間にある1つ以上の数式記述構造化言語オブジェクトの文書木構造のすべての葉ノードの文字列をチェックすることにより、変数名が異なっている箇所を検出し、検出された葉ノードの文字列を検索クエリに含まれる文字列で置き換えることにより変数変換を行うこと。
上記発明において、クライアントプログラムは、ユーザが指定した2つの数式記述構造化言語オブジェクトが含まれる文書木構造の部分構造を、獲得した部分構造で置き換えるか、前記部分構造の兄弟または子供オブジェクトとして挿入すること。
上記発明において、数式記述構造化言語をMathML (Mathematics Markup Language)とすること。
上記発明において、文書木をDOM (Document Object Model)とすること。
上記発明において、文書構造アクセス用パス規定言語をXPath (XML Path Language)とすること。
上記発明において、ポインティングデバイスをマウスとすること。
上記発明において、クライアントからの検索クエリ情報を、グラフィカル数式エディタまたはテキストエディタを用いて直接入力されたMathMLオブジェクトとすること。
また、第9には、数式記述構造化言語オブジェクトの文書木構造をもとに数式記述構造化言語オブジェクトが埋め込まれたWeb文書をあらかじめクローラーにより収集し、数式記述構造化言語オブジェクトの文書木構造を索引語として索引付けし、索引付けしたWeb文書を転置ファイルの形式でデータベースに格納している数式記述構造化言語検索エンジンを用い、サーバが、クライアントとなるWebブラウザから検索クエリ情報を受け取り、その検索クエリ情報をもとに検索クエリを数式記述構造化言語検索エンジンに入力することにより検索をかけ、関連する数式記述構造化言語オブジェクトを含むWeb文書またはWeb文書部分を取得した後、クライアントに送信する数式記述構造化言語オブジェクト検索方法であって、クライアントからの検索クエリ情報が、ユーザが指定した数式記述構造化言語オブジェクトを含むWeb文書部分であり、サーバがそのWeb文書部分からキーワードと数式記述構造化言語オブジェクトを抽出し、抽出したキーワードを検索クエリとして検索をかけることを特徴とする数式記述構造化言語オブジェクト検索方法を提供する。
上記第9の発明においては、クライアントが指定した数式記述構造化言語オブジェクトを含むWeb文書部分を、ユーザのポインティングデバイス操作イベントにより得られるものとすることができる。
また、第10には、上記第9の発明において、クライアントが指定した数式記述構造化言語オブジェクトを含むWeb文書部分が、クライアントに提供されたWeb文書に埋め込まれた、ユーザのポインティングデバイス操作を検出し、指定された文書部分の検索クエリ情報をサーバに送信させるクライアントプログラムにより得られるものであることを特徴とする数式記述構造化言語オブジェクト検索方法を提供する。
また、第11には、上記第9の発明において、検索クエリによる関連する数式記述構造化言語オブジェクトが記述されたWeb文書またはWeb文書部分の取得が、数式記述構造化言語オブジェクトの文書木構造を用いて行われることを特徴とする数式記述構造化言語オブジェクト検索方法を提供する。
また、第12には、上記第9の発明において、数式記述構造化言語検索エンジンは、数式記述構造化言語オブジェクトを含むWeb文書ファイルを、数式記述構造化言語のタグとタグで囲まれた文字列を用いた索引付けされたデータ管理構造の転置ファイルとして管理していることを特徴とする数式記述構造化言語オブジェクト検索方法を提供する。
また、第13には、上記第12の発明において、サーバは、索引付けされたデータ管理構造の転置ファイルより、文書構造アクセス用パス規定言語を用いて検索結果を獲得することを特徴とする数式記述構造化言語オブジェクト検索方法を提供する。
また、第14には、上記第13の発明において、サーバは、獲得した検索結果の数式記述構造化言語の文書木構造のすべてのパスに対して、文書構造アクセス用パス規定言語を用いて検索クエリに適合するか否かを検証することを特徴とする数式記述構造化言語オブジェクト検索方法を提供する。
また、第15には、上記第14の発明において、サーバは、数式記述構造化言語オブジェクトの文書木構造のすべての葉ノードの文字列をチェックすることにより、変数名が異なっている箇所を検出することを特徴とする数式記述構造化言語オブジェクト検索方法を提供する。
また、第16には、上記第15の発明において、サーバは、検出された葉ノードの文字列を検索クエリに含まれる文字列で置き換えることにより変数変換を行うことを特徴とする数式記述構造化言語オブジェクト検索方法を提供する。
本発明の数式記述構造化言語オブジェクト検索方法の好ましい態様としては、次のようなものを挙げることができる。
上記発明において、抽出した関連するWeb文書またはWeb文書部分を、ユーザがポインティングデバイス操作を行ったWeb文書中でイベントが発生したオブジェクトの、兄弟または子供のノードとして挿入させること。
上記発明において、サーバは、クライアントからユーザが指定した2つの数式記述構造化言語オブジェクトの検索クエリ情報を受け取り、受け取った検索クエリ情報から2つの数式記述構造化言語オブジェクトを抽出して検索クエリとし、これら2つの数式記述構造化言語オブジェクトの間にある1つ以上の数式記述構造化言語オブジェクトがあるWeb文書部分を獲得して式展開検索を行うこと。
上記発明において、サーバは、ユーザが指定した2つの数式記述構造化言語オブジェクトの間にある1つ以上の数式記述構造化言語オブジェクトの文書木構造のすべての葉ノードの文字列をチェックすることにより、変数名が異なっている箇所を検出し、検出された葉ノードの文字列を検索クエリに含まれる文字列で置き換えることにより変数変換を行うこと。
上記発明において、サーバは、クライアントプログラムに、ユーザが指定した2つの数式記述構造化言語オブジェクトが含まれる文書木構造の部分構造を、獲得した部分構造で置き換えること。
上記発明において、数式記述構造化言語をMathML (Mathematics Markup Language)とすること。
上記発明において、文書木をDOM (Document Object Model)とすること。
上記発明において、文書構造アクセス用パス規定言語をXPath (XML Path Language)とすること。
上記発明において、ポインティングデバイスをマウスとすること。
上記発明において、クライアントからの検索クエリ情報を、グラフィカル数式エディタまたはテキストエディタを用いて直接入力されたMathMLオブジェクトとすること。
また、本発明は、上記いずれかに記載の数式記述構造化言語オブジェクト検索方法をコンピュータに実行させるための数式記述構造化言語オブジェクト検索プログラムを提供する。
さらに、本発明は、上記数式記述構造化言語オブジェクト検索プログラムを記録した、フレキシブルディスクやCD、DVD、光磁気ディスク等のコンピュータ読取可能な記録媒体を提供する。
この出願の明細書において、「MathML」は前記したとおりのものであり、「数式記述構造化言語」、「文書木構造」、「DOM」、「XPath」、「索引付け」とはそれぞれ下記のものを意味する。
「数式記述構造化言語」とは、MathMLのほか、数式をXMLのような構造化言語で記述した言語のことをいう。
「文書木構造」とは、DOM (Document Object Model)構造や、構造化文書をそのタグを解析することによって木構造として得られる文書構造のことをいう。
「DOM」とは、W3Cで標準化されたHTML文書およびXML文書のようなWeb文書のためのアプリケーション=プログラミング=インターフェース(API)のことをいう。これは、計算機が文書の論理的構造や、前記構造に基づく文書部分にアクセスする方法や操作の方法を定義するものである。具体的には、タグにより構造化されたWeb文書は、計算機のプログラム上で木構造として表現され、その木構造を利用して、自由に文書構造及び前記構造に基づく文書部分にアクセスできるものである。
「文書構造アクセス用パス規定言語」とは、XPathに代表される文書構造にアクセスするためのパスを規定した言語のことをいう。
「XPath」とは、XML文書の中の特定の要素を指し示す記述方法を定めた言語のことをいい、W3Cが勧告した標準仕様である。XSLTやXPointerで使われる位置指定の記述方式を独立させたものでもある。基本的な記述の仕方は、文書木構造の頂点となるルートノードを「/」で表し、以下、「/」で区切って要素をたどり、その名前を記述していく。たとえば、a要素の中のbという値を参照するには「/a/b」と記述する。また、ノードのデータ型やノードの種類、名前空間 (XML namespace)を使用して条件式や演算などを含んだ複雑な位置指定を行うこともできる。
「索引付け」とは、テキストから検索語を抽出する処理のことである。索引システムを完成するためには、テキスト中からそのテキストを特徴付ける索引語を抽出する必要がある。
この出願の発明によれば、数式をクエリとした文書検索を高速で行うことが可能となる。
また、この出願の発明によれば、マウス操作により簡単に検索クエリとなる数式が入力できる;閲覧しているWeb文書中に、検索に適合した数式と関連するWeb文書部分を、動的に埋め込むことが可能となる;数式中に異なる変数名を用いていても、数式の構造が同じであれば検索できる;閲覧しているWeb文書中の数式の変数名にあわせて、検索結果の数式の変数名を変換して、埋め込むことができる;検索クエリに展開元との式と展開先の式を指定すると、その式展開を行っているWeb文書を検索することができるという顕著な効果も得られる。
そして、この出願の発明は、教育コンテンツの生成、教育コンテンツの再構成サービス、特許や科学技術文書などの類似検索、数式の検索サービス、数式のライブラリのポータルサービス、上記製品・サービスにおけるWeb広告サービス等の事業に貢献することが期待される。
図1は、この出願の発明に係る数式記述構造化言語オブジェクト検索システムの一実施形態の構成を模式的に示す図である。 図2は、図1のMathMLオブジェクト検索システムにより関連文書検索を行うときの手順を示すフローチャートである。 図3は、図1のMathMLオブジェクト検索システムにより関連文書検索を行うときの手順を示すフローチャートである。 図4は、図1のMathMLオブジェクト検索システムにより関連文書検索を行うときの手順を示すフローチャートである。 図5は、図1のMathMLオブジェクト検索システムにより関連文書検索を行うときの手順を示すフローチャートである。 図6は、図1のMathMLオブジェクト検索システムにより関連文書検索を行うときの手順を示すフローチャートである。 図7は、図1のMathMLオブジェクト検索システムにより関連文書検索を行うときの手順を示すフローチャートである。 図8は、図1のMathMLオブジェクト検索システムにより関連文書検索を行うときの手順を示すフローチャートである。 図9は、DOM木上の部分木の抽出の説明図である。 図10は、キーワードとMathMLオブジェクト抽出の例を示す図である。 図11は、縦型探索時の左端のパスのXPath表記を示す図である。 図12は、すべてのパスのXPath表記を示す図である。 図13は、図1のMathMLオブジェクト検索システムにより式展開検索を行うときの手順を示すフローチャートである。 図14は、図1のMathMLオブジェクト検索システムにより式展開検索を行うときの手順を示すフローチャートである。 図15は、図1のMathMLオブジェクト検索システムにより式展開検索を行うときの手順を示すフローチャートである。 図16は、図1のMathMLオブジェクト検索システムにより式展開検索を行うときの手順を示すフローチャートである。 図17は、図1のMathMLオブジェクト検索システムにより式展開検索を行うときの手順を示すフローチャートである。 図18は、図1のMathMLオブジェクト検索システムにより式展開検索を行うときの手順を示すフローチャートである。 図19は、図1のMathMLオブジェクト検索システムにより式展開検索を行うときの手順を示すフローチャートである。 図20は、図1のMathMLオブジェクト検索システムにより式展開検索を行うときの手順を示すフローチャートである。 図21は、検索システムにより関連文書検索を行うときの手順を示すフローチャートである。
この出願の発明は上記のとおりの特徴をもつものであるが、以下にその実施の形態について説明する。
図1に、この出願の発明に係る数式記述構造化言語オブジェクト検索システムの一実施形態の構成を模式的に示す。
この実施形態では、数式記述構造化言語としてMathMLを、文書木構造としてDOMを、アプリケーション・プラミング・インターフェースとしてXPathをそれぞれ用いたものを例として説明する。
この実施形態のMathMLオブジェクト検索システムは、ユーザ側に配置されたクライアント(1)となるWebブラウザ;センター側に配置されたクライアント(1)のWebブラウザに提供するWeb文書中にユーザのマウス操作を検出するためのクライアントプログラムを埋め込むユニットとしてのプロキシサーバ(2)、MathMLを含む関連Web文書部分を検索するサービスを行うサーバ(3)、及びMathMLを含むWeb文書をMathMLを検索クエリとして検索できるMathML文書検索エンジン(4);一般の検索エンジン(5)から構成される。サーバ(3)は図1に示すように、検索クエリ抽出、MathML適合判定、変数変換、関連文書部分抽出等の機能を備えている。クライアントプログラムは、ユーザによるマウスイベントの発生を検出し、ユーザが指定したMathMLオブジェクトを含むWeb文書部分をサーバ(3)に送信し、イベントが発生したオブジェクトに対し、サーバ(3)から戻ってきた、抽出した関連Web文書またはWeb文書部分を挿入する等の機能を備えている。プロキシサーバ(2)とMathML文書検索エンジン(4)のいずれか一方あるいは両方はサーバ(3)と一体となっていてもよいし、別々となっていてもよい。
MathML文書検索エンジン(2)は、MathMLオブジェクトのDOM構造をもとに、インターネットのウェブ上にある、MathMLオブジェクトが埋め込まれた多数のWeb文書をあらかじめクローラーにより収集し、MathMLオブジェクトのDOM構造を索引語として索引付けし、索引付けしたWeb文書を転置ファイルの形式でデータベースに格納している。実際にはWeb文書ファイルのURLを格納している。また、そのデータベースで管理している転置ファイルは適時更新される。
この実施形態では、クライアント(1)からサーバ(3)に検索クエリ情報が送られ、サーバ(3)が、その検索クエリ情報をもとに検索クエリをMathML文書検索エンジン(4)に入力することにより検索をかけ、関連するMathMLオブジェクトを含むWeb文書またはWeb文書部分を取得した後、クライアント(1)へ戻す。この場合、クライアント(1)からサーバ(3)に送られる検索クエリ情報としては、様々なバリエーションがある。すなわち、このような検索クエリ情報としては、MathMLの数式そのものであってもよいし、通常使用されているグラフィカル数式エディタで入力されたMathMLの数式であってもよいし、テキストエディタでXMLのタグを記入しながら入力されたMathMLの数式であってもよいし、MathMLオブジェクトを含むWeb文書部分であってもよい。
以下、この実施形態のMathMLオブジェクト検索システムについて、ユーザが指定した、MathMLオブジェクトを含むWeb文書部分に関連する文書部分を検索する場合の処理手順(関連文書検索)と、ユーザが指定した2つのMathMLオブジェクトからその2つの式の間の式展開について記述した文書部分を検索する場合の処理手順(式展開検索)を実行する場合に分けて詳細に説明する。
先ず、関連文書検索を行う場合について図2〜図8のフローチャートを参照しながら述べる。
<関連文書検索>
[1]ユーザのマウス操作で指定した文書部分の抽出(図2のステップS1)
先ず、ユーザは、クライアント(1)により希望のMathMLオブジェクトを含んだWebページを取得する。その際、プロキシサーバ(2)により、クライアント(1)のWeb文書中にユーザのマウス操作を検出するためのクライアントプログラムを埋め込む(図3のステップS101)。ユーザはマウス操作でMathMLオブジェクトを含んだWeb文書部分を指定する。クライアント(1)のクライアントプログラムは、ユーザのマウス操作を検出してマウス操作で指定した文書部分を抽出し(ステップS102)、マウスイベントが発生したオブジェクトのDOM木上の親オブジェクト(または指定範囲内の先祖オブジェクト)を含む部分木を抽出する(ステップS103;図9参照)。クライアント(2)のクライアントプログラムは、抽出した部分木中のソースコードをサーバ(3)に送信する(ステップS104)。サーバ(3)側では、受け取ったソースコードからキーワードとMathMLオブジェクトを抽出する(ステップS105;図10参照)。
[2]キーワードからの関連Webページの検索と関連文書部分の抽出(図2のステップS2)
サーバ(3)では、抽出したキーワードでMathML文書検索エンジン(4)に検索をかけ(図4のステップS201)、その検索結果中のWeb文書から、Web文書中にMathMLオブジェクトを含むものを選択する(ステップS202)。そして、選択したWeb文書のDOM木の構造上で検索キーワードに最も近い位置にあるMathMLオブジェクトを探し(ステップS203)、その検索キーワードとMathMLオブジェクトを含む部分木(または前記部分木のルートノードから指定範囲内の先祖オブジェクトを含む部分木)を抽出する(ステップS204)。
ここで、選択したWeb文書のDOM木の構造上で検索キーワードに最も近い位置にあるMathMLオブジェクトを探す方法としては、たとえば、次のような方法がある。すなわち、検索キーワードのあるDOM木構造上のノードから、その先祖ノードあるいはその子孫ノードをたどっていき、そのどちらかで最も近い位置にあるMathMLオブジェクトを特定する。そして、検索キーワードあるDOM木構造上のノードとMathMLオブジェクトを含むような最小の部分木を抽出する。具体的には、検索キーワードのあるノードの方がMathMLオブジェクトよりもDOM木構造上、上位にある場合には、検索キーワードのあるノードから下位構造をすべて抽出する。MathMLオブジェクトの方が、検索キーワードのあるノードよりも、DOM木構造上、上位にある場合には、MathMLオブジェクトのあるノードよりも下位構造をすべて抽出する。
[3]MathMLオブジェクトからの関連Webページの検索と関連文書部分の抽出(図2のステップS3)
サーバ(3)では、抽出したMathMLオブジェクトのDOM構造(以下、検索元DOM構造という)を獲得し、以下の手順で処理を行う。
(i)検索元DOM構造を縦型探索した時の一番初めのパスをXPathで表現する(図5のステップS301)。ただしこのとき、XPathには葉ノードの文字列値を評価するものとする(図11(a)参照)。上記XPathで、MathML文書検索エンジン(4)に問合せを行う(ステップS302)。検索の入力は、XPathで与えられる。ステップS303において、問い合わせた結果がnullであれば、下記(ii)を実行する。問い合わせた結果がnullでなければ、問合せの結果得られたWeb文書から、XPathに適合したMathMLオブジェクトを抽出し(ステップS304)、そのDOM構造(検索結果DOM構造)を獲得する(ステップS305)。そして、検索結果DOM構造と検索元DOM構造を比較する(ステップS306)。このとき、葉ノードの文字列値まで一致するかどうかを調べる。この比較には、ルートからすべての葉ノードまでのパスのXPathを獲得し(このとき、XPathには葉ノードの文字列値を評価するものとする)(図12(a)参照)、そのすべてのパスのXPathが数も内容も完全一致するかどうかを調べる(ステップS307)。完全一致すれば検索結果のWeb文書から、上記MathMLオブジェクトの親オブジェクトを含む部分木(または前記親オブジェクトから指定範囲内の先祖オブジェクトを含む部分木)を抽出して終了する(ステップS308)。完全一致しなければ下記(iii)を実行する。
(ii)検索元DOM構造を縦型探索した時の一番初めのパスをXPathで表現する(図6のステップS311)。ただしこのとき、XPathには葉ノードの文字列値を評価しないものとする(図11(b)参照)。上記XPathで、MathML文書検索エンジン(4)に問合せを行う(ステップS312)。ステップS313において、問い合わせた結果がnullかどうか判断し、問合せ問い合わせた結果がnullであれば、関連文書部分はないものとして終了する。問い合わせた結果がnullでなければ、問合せの結果得られたWeb文書から、XPathに適合したMathMLオブジェクトを抽出し(ステップS314)、そのDOM構造(検索結果DOM構造)を獲得する(ステップS315)。そして下記(iii)を実行する。
(iii)検索結果DOM構造と検索元DOM構造と比較する(図7のステップS321)。この比較には、ルートからすべての葉ノードまでのパスのXPathを獲得し(このとき、XPathには葉ノードの文字列値を評価しないものとする)(図12(b)参照)、そのすべてのパスのXPathが数も内容も完全一致するかどうかを調べる。ステップS322の比較において、完全一致すれば、下記(iv)を実行する。完全一致しなければ、関連文書部分はないものとして終了する。
(iv)検索結果DOM構造と検索元DOM構造の葉ノードの文字列が一致しない箇所を特定する。本特定には、両DOM構造のXPathを獲得(このとき、XPathには葉ノードの文字列値を評価するものとする)して(図8のステップS331、S332)、それらXPathの一致しない箇所を調べることで行う。検索結果のWeb文書から、上記MathMLオブジェクトの親オブジェクトを含む部分木(または前記親オブジェクトから指定範囲内の先祖オブジェクトを含む部分木)を抽出して(ステップS333)、上記文字列が一致しない葉ノードの文字列を、検索元DOM構造の葉ノードの文字列で置き換える(ステップS334)。
上記では、MathML文書検索エンジン(4)はMathMLオブジェクトを含むWeb文書を管理する場合を例に説明したが、MathML文書検索エンジン(4)はMathMLオブジェクトそのものを管理するものとすることもでき、また、MathMLオブジェクトを含むWeb文書部分を管理するものとすることもできる。
また、MathML文書検索エンジン(4)は転置ファイルで実装されているが、転置ファイルは、索引(インデックス)としてMathMLのDOM構造の一番初めのパスだけを記憶するバージョン、索引(インデックス)としてMathMLのDOM構造の全てのパスを記憶するバージョン、索引(インデックス)としてMathMLのDOM構造のいくつかの特定のパスを記憶しているバージョンのいずれであってもよい。
[4]関連文書部分の埋め込み(図2のステップS4)
上記の手順[2]または[3]で抽出した関連Web文書部分をクライアント(2)のクライアントプログラムに送信する。クライアントプログラムは、抽出された関連Web文書部分を、マウス操作イベントが発生したオブジェクトの兄弟または子供のノードとして挿入する。
最終的にクライアント(1)の画面に表示されるものは、もともと閲覧していたWeb文書に関連する文書部分を動的に挿入する場合には、検索結果として返されたWeb文書から1つを選択し、関連する文書部分に挿入されたものである。なお、挿入後に、次候補を挿入しなおすこともできる。
次に、式展開検索を行う場合について図13〜図21のフローチャートを参照しながら述べる。
<式展開検索>
[5]ユーザのマウス操作で指定したMathMLオブジェクトの抽出(図13のステップS5)
クライアント(2)は、上記の手順[1]でWeb文書に埋め込まれたクライアントプログラムで、ユーザのマウス操作を検出する(図14のステップS501)。次に、特定のマウスイベントが発生した2つのMathMLオブジェクトを取得する(ステップS502)。そして、クライアント(2)は2つのMathMLオブジェクトのソースコードをサーバ(3)に送信する(ステップS503)。サーバ(3)は、受け取ったソースコードをもとにMathMLオブジェクトを抽出する(ステップS504)。
[6]MathMLオブジェクトからの関連Webページの検索(図13のステップS6) サーバ(3)は以下の手順で関連Webページの検索を行う。
(i)抽出した2つのMathMLオブジェクトの文書木構造(以下、検索元文書木構造)を取得する(図15のステップS601)。1つ目のMathMLオブジェクトの文書木構造を検索元文書木構造(展開元)、2つ目のMathMLオブジェクトの文書木構造を検索元文書木構造(展開先)と呼ぶ。検索元文書木構造(展開元)を縦型探索した時の一番初めのパスをXPathで表現し(葉ノードの文字列値を評価するものとする)(ステップS602)、MathML文書検索エンジン(4)に問合せを行う(ステップS603)。ステップS604において問い合わせた結果がnullであるか判断する。問い合わせた結果がnullであれば、下記の(iv)を実行する。問い合わせた結果がnullでなければ、下記の(ii)を実行する。
(ii)検索元文書木構造(展開元)での問合せの結果得られたWeb文書から、XPathに適合したMathMLオブジェクトを抽出し(図16のステップS611)、その文書木構造を取得する(ステップS612)。そして、取得した文書木構造と検索元文書木構造(展開元)を比較する。このとき、葉ノードの文字列値まで一致するかどうかを調べる。また、検索元文書木構造(展開先)を縦型探索した時の一番初めのパスをXPathで表現し(葉ノードの文字列値を評価するものとする)(ステップS613)、上記Web文書にこのXPathを含むMathMLオブジェクトが含まれているかどうかを確認し(ステップS614)、含まれていれば、その文書木構造を取得する。そして、取得した文書木構造と検索元文書木構造(展開先)と比較する(ステップS615)。このとき、葉ノードの文字列値まで一致するかどうかを調べる。両方の調査において完全一致するものがあれば下記(iii)を実行する。そうでなければ終了する。
(iii)上記の(ii)で得られたWeb文書において、検索元文書木構造(展開元)と同じ文書木構造、検索元文書木構造(展開先)と同じ文書木構造の間に、1つ以上のMathMLオブジェクトが含まれているかどうかを確認する(図17のステップ621、S622)。1つ以上のMathMLオブジェクトが含まれていればそれを式展開とみなし(ステップS623)、上記2つの文書木構造を含む最小部分木(または前記最小部分木のルートオブジェクトから指定範囲内の先祖オブジェクトを含む部分木)を抽出し(ステップS624)、下記手順[7]を実行する。1つもMathMLオブジェクトが含まれていなければ、終了する。
(iv)検索元文書木構造(展開元)を縦型探索した時の一番初めのパスをXPathで表現する(図18のステップS631)。ただしこのとき、XPathは葉ノードの文字列値を評価しないものとする。上記XPathで、MathML文書検索エンジン(4)に問合せを行う(ステップS632)。ステップS633で問い合わせた結果がnullであるか判断し、問い合わせた結果がnullであれば、関連文書部分はないものとして終了する。問い合わせた結果がnullでなければ、下記(v)を実行する。
(v)検索元文書木構造(展開元)での問合せの結果得られたWeb文書から、XPathに適合したMathMLオブジェクトを抽出し(図19のステップS641)、その文書木構造(以下、検索結果文書木構造(展開元))を取得する(ステップ642)。そして、検索結果文書木構造(展開元)それと、検索元文書木構造(展開元)と比較する。このとき、葉ノードの文字列値は評価しない。また、検索元文書木構造(展開先)を縦型探索した時の一番初めのパスをXPathで表現し(葉ノードの文字列値は評価しないものとする)(ステップS643)、上記Web文書にこのXPathを含むMathMLオブジェクトが含まれているかどうかを確認し(ステップS644)、含まれていれば、その文書木構造を取得する(以下、検索結果文書木構造(展開先))。そして検索結果文書木構造と検索元文書木構造(展開先)を比較する(ステップS646、ステップS647)。このとき、葉ノードの文字列値は評価しない。両方の調査において完全一致するものがあれば下記(vi)を実行する。そうでなければ終了する。
(vi)上記(v)で得られたWeb文書において、検索結果文書木構造(展開元)と検索結果文書木構造(展開先)の間に、1つ以上のMathMLオブジェクトが含まれているかどうかを確認する(図20のステップS651、ステップS652)。1つ以上のMathMLオブジェクトが含まれていればそれを式展開とみなし(ステップS653)、上記2つの文書木構造を含む最小部分木(または前記最小部分木のルートオブジェクトから指定範囲内の先祖オブジェクトを含む部分木)を抽出し(ステップS654)、下記(vii)を実行する。1つもMathMLオブジェクトが含まれていなければ、終了する。
(vii)検索元文書木構造(展開元)と検索結果文書木構造(展開元)を比較し、値の異なる葉ノードを検出する(図21のステップS661)。その葉ノードにおける検索元文書木構造(展開元)の値(以下、検索元値)と、検索結果文書木構造(展開元)での値(以下、検索結果値)を記憶しておく(ステップS662)。上記(vi)で得られた部分木において、検索結果文書木構造(展開元)から検索結果文書木構造(展開先)の間にあるすべてのMathMLオブジェクトにおいて、検索結果値を持つ葉ノードの値を検索元値で置き換える。下記手順(7)を実行する。
[7]取得した部分木をクライアントプログラムに送信する(図13のステップS7)。
[8]クライアントプログラムは、検索元文書木構造(展開元)から検索元文書木構造(展開先)の文書部分を獲得した部分木で置き換えるか、前記部分木の兄弟または子供オブジェクトとして挿入する(図13のステップS8)。
以上述べた関連文書検索のモードと式展開検索のモードの切り替えは、たとえばWebブラウザにクライアントプログラムをダウンロードして実行した時に、クライアントプログラム用のウィンドウが開き、その上でラジオボタンなどをマウスで切り替えるような形式か、マウスのドラッグの操作により、複数のオブジェクトを指定した時に、その中に2つ以上のMathMLオブジェクトが入っていれば、ドラッグ操作を終了するときに(マウスのボタンを離した時に)、ポップアップウィンドウが表示され、その上でラジオボタンなどをマウスで切り替えるような形式を採用することができるが、これらに限定されない。
式展開検索においても、前記関連文書検索の場合と同様に、MathML文書検索エンジン(4)はMathMLオブジェクトを含むWeb文書を管理する場合を例に説明したが、MathML文書検索エンジン(4)はMathMLオブジェクトそのものを管理するものとすることもでき、また、MathMLオブジェクトを含むWeb文書部分を管理するものとすることもできる。
また、MathML文書検索エンジン(4)が実装する転置ファイルも、前記関連文書検索の場合と同様に、索引(インデックス)としてMathMLのDOM構造の一番初めのパスだけを記憶するバージョン、索引(インデックス)としてMathMLのDOM構造の全てのパスを記憶するバージョン、索引(インデックス)としてMathMLのDOM構造のいくつかの特定のパスを記憶しているバージョンのいずれであってもよい。
以上、この出願の発明を一実施形態に基づいて説明したが、この出願の発明はこの実施形態に限定されるものではなく、種々の変形、変更が可能である。
たとえば、上記実施形態では、クライアントからの検索クエリ情報が、ユーザが指定した数式記述構造化言語オブジェクトを含むWeb文書部分としたが、グラフィカル数式エディタまたはテキストエディタを用いて直接入力されたMathMLオブジェクトとしてもよい。この場合、通常の検索エンジンと同様、複数のWeb文書のタイトルと、各Web文書内における入力したMathMLオブジェクトの周辺部分が、スニペット(入力したキーワード付近の要約テキスト)として表示させることができる。
また、上記実施形態では、数式記述構造化言語としてMathMLを、文書木構造としてDOMを、アプリケーション・プラミング・インターフェースとしてXPathをそれぞれ用いたものを例としたが、もちろんこれらに限定されるものではなく、同等の機能を有するものであれば各種のものが使用可能である。

Claims (16)

  1. 数式記述構造化言語オブジェクトの文書木構造をもとに数式記述構造化言語オブジェクトが埋め込まれたWeb文書をあらかじめクローラーにより収集し、数式記述構造化言語オブジェクトの文書木構造を索引語として索引付けし、索引付けしたWeb文書を転置ファイルの形式でデータベースに格納している数式記述構造化言語検索エンジンと、
    クライアントとなるWebブラウザと、
    クライアントから検索クエリ情報を受け取り、その検索クエリ情報をもとに検索クエリを数式記述構造化言語検索エンジンに入力することにより検索をかけ、関連する数式記述構造化言語オブジェクトを含むWeb文書またはWeb文書部分を取得した後、クライアントに送信するサーバを備え、
    クライアントからの検索クエリ情報が、ユーザが指定した数式記述構造化言語オブジェクトを含むWeb文書部分であり、サーバがそのWeb文書部分からキーワードと数式記述構造化言語オブジェクトを抽出し、抽出したキーワードを検索クエリとして検索をかけることを特徴とする数式記述構造化言語オブジェクト検索システム。
  2. クライアントが指定した数式記述構造化言語オブジェクトを含むWeb文書部分が、クライアントに提供されたWeb文書に埋め込まれた、ユーザのポインティングデバイス操作を検出し、指定された文書部分の検索クエリ情報をサーバに送信させるクライアントプログラムにより得られるものであることを特徴とする請求項1に記載の数式記述構造化言語オブジェクト検索システム。
  3. 検索クエリ入力による関連する数式記述構造化言語オブジェクトが記述されたWeb文書またはWeb文書部分の取得が、数式記述構造化言語オブジェクトの文書木構造を用いて行われることを特徴とする請求項1に記載の数式記述構造化言語オブジェクト検索システム。
  4. 数式記述構造化言語検索エンジンは、数式記述構造化言語オブジェクトを含むWeb文書ファイルを、数式記述構造化言語のタグとタグで囲まれた文字列を用いた索引付けされたデータ管理構造の転置ファイルとして管理していることを特徴とする請求項1に記載の数式記述構造化言語オブジェクト検索システム。
  5. サーバは、索引付けされたデータ管理構造の転置ファイルより、文書構造アクセス用パス規定言語を用いて検索結果を獲得することを特徴とする請求項4に記載の数式記述構造化言語オブジェクト検索システム。
  6. サーバは、取得した検索結果の数式記述構造化言語の文書木構造のすべてのパスに対して、文書構造アクセス用パス規定言語を用いて検索クエリに適合するか否かを検証することを特徴とする請求項5に記載の数式記述構造化言語オブジェクト検索システム。
  7. サーバは、数式記述構造化言語オブジェクトの文書木構造のすべての葉ノードの文字列をチェックすることにより、変数名が異なっている箇所を検出することを特徴とする請求項6に記載の数式記述構造化言語オブジェクト検索システム。
  8. サーバは、検出された葉ノードの文字列を検索クエリに含まれる文字列で置き換えることにより変数変換を行うことを特徴とする請求項7に記載の数式記述構造化言語オブジェクト検索システム。
  9. 数式記述構造化言語オブジェクトの文書木構造をもとに数式記述構造化言語オブジェクトが埋め込まれたWeb文書をあらかじめクローラーにより収集し、数式記述構造化言語オブジェクトの文書木構造を索引語として索引付けし、索引付けしたWeb文書を転置ファイルの形式でデータベースに格納している数式記述構造化言語検索エンジンを用い、
    サーバが、クライアントとなるWebブラウザから検索クエリ情報を受け取り、その検索クエリ情報をもとに検索クエリを数式記述構造化言語検索エンジンに入力することにより検索をかけ、関連する数式記述構造化言語オブジェクトを含むWeb文書またはWeb文書部分を取得した後、クライアントに返送する数式記述構造化言語オブジェクト検索方法であって、
    クライアントからの検索クエリ情報が、ユーザが指定した数式記述構造化言語オブジェクトを含むWeb文書部分であり、サーバがそのWeb文書部分からキーワードと数式記述構造化言語オブジェクトを抽出し、抽出したキーワードを検索クエリとして検索をかけることを特徴とする数式記述構造化言語オブジェクト検索方法。
  10. クライアントが指定した数式記述構造化言語オブジェクトを含むWeb文書部分が、クライアントに提供されたWeb文書に埋め込まれた、ユーザのポインティングデバイス操作を検出し、指定された文書部分の検索クエリ情報をサーバに送信させるクライアントプログラムにより得られるものであることを特徴とする請求項9に記載の数式記述構造化言語オブジェクト検索方法。
  11. 検索クエリ入力による関連する数式記述構造化言語オブジェクトが記述されたWeb文書またはWeb文書部分の取得が、数式記述構造化言語オブジェクトの文書木構造を用いて行われることを特徴とする請求項9に記載の数式記述構造化言語オブジェクト検索方法。
  12. 数式記述構造化言語検索エンジンは、数式記述構造化言語オブジェクトを含むWeb文書ファイルを、数式記述構造化言語のタグとタグで囲まれた文字列を用いた索引付けされたデータ管理構造の転置ファイルとして管理していることを特徴とする請求項9に記載の数式記述構造化言語オブジェクト検索方法。
  13. サーバは、索引付けされたデータ管理構造の転置ファイルより、文書構造アクセス用パス規定言語を用いて検索結果を獲得することを特徴とする請求項12に記載の数式記述構造化言語オブジェクト検索方法。
  14. サーバは、獲得した検索結果の数式記述構造化言語の文書木構造のすべてのパスに対して、文書構造アクセス用パス規定言語を用いて検索クエリに適合するか否かを検証することを特徴とする請求項13に記載の数式記述構造化言語オブジェクト検索方法。
  15. サーバは、数式記述構造化言語オブジェクトの文書木構造のすべての葉ノードの文字列をチェックすることにより、変数名が異なっている箇所を検出することを特徴とする請求項14に記載の数式記述構造化言語オブジェクト検索方法。
  16. サーバは、検出された葉ノードの文字列を検索クエリに含まれる文字列で置き換えることにより変数変換を行うことを特徴とする請求項15に記載の数式記述構造化言語オブジェクト検索方法。
JP2008505183A 2006-03-15 2007-03-14 数式記述構造化言語オブジェクト検索システムおよび検索方法 Active JP4956757B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008505183A JP4956757B2 (ja) 2006-03-15 2007-03-14 数式記述構造化言語オブジェクト検索システムおよび検索方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2006070307 2006-03-15
JP2006070307 2006-03-15
JP2008505183A JP4956757B2 (ja) 2006-03-15 2007-03-14 数式記述構造化言語オブジェクト検索システムおよび検索方法
PCT/JP2007/055103 WO2007105759A1 (ja) 2006-03-15 2007-03-14 数式記述構造化言語オブジェクト検索システムおよび検索方法

Publications (2)

Publication Number Publication Date
JPWO2007105759A1 JPWO2007105759A1 (ja) 2009-07-30
JP4956757B2 true JP4956757B2 (ja) 2012-06-20

Family

ID=38509575

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008505183A Active JP4956757B2 (ja) 2006-03-15 2007-03-14 数式記述構造化言語オブジェクト検索システムおよび検索方法

Country Status (3)

Country Link
US (1) US20090019015A1 (ja)
JP (1) JP4956757B2 (ja)
WO (1) WO2007105759A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8745082B2 (en) * 2007-06-29 2014-06-03 Alcatel Lucent Methods and apparatus for evaluating XPath filters on fragmented and distributed XML documents
US9785987B2 (en) 2010-04-22 2017-10-10 Microsoft Technology Licensing, Llc User interface for information presentation system
US9043296B2 (en) 2010-07-30 2015-05-26 Microsoft Technology Licensing, Llc System of providing suggestions based on accessible and contextual information
US20130013616A1 (en) * 2011-07-08 2013-01-10 Jochen Lothar Leidner Systems and Methods for Natural Language Searching of Structured Data
US9003316B2 (en) 2011-07-25 2015-04-07 Microsoft Technology Licensing, Llc Entering technical formulas
JP5827874B2 (ja) * 2011-11-11 2015-12-02 株式会社ドワンゴ キーワード取得装置、コンテンツ提供システム、キーワード取得方法、プログラム及びコンテンツ提供方法
CN102663138A (zh) * 2012-05-03 2012-09-12 北京大学 一种公式查询条件的输入方法与装置
US9069882B2 (en) * 2013-01-22 2015-06-30 International Business Machines Corporation Mapping and boosting of terms in a format independent data retrieval query
US9092527B2 (en) 2013-01-30 2015-07-28 Quixey, Inc. Performing application search based on entities
JP6355501B2 (ja) * 2014-09-29 2018-07-11 シャープ株式会社 検索装置、検索方法、プログラム、および記録媒体
CN104572577B (zh) * 2014-12-17 2018-09-04 百度在线网络技术(北京)有限公司 数学公式处理方法及装置
KR101842873B1 (ko) * 2016-09-29 2018-03-28 조봉한 수학번역기, 수학번역 디바이스 및 플랫폼
CA3055172C (en) * 2017-03-03 2022-03-01 Perkinelmer Informatics, Inc. Systems and methods for searching and indexing documents comprising chemical information
US11599325B2 (en) 2019-01-03 2023-03-07 Bluebeam, Inc. Systems and methods for synchronizing graphical displays across devices
CA3046608C (en) * 2019-06-14 2025-06-17 Mathresources Incorporated DOCUMENT PUBLISHING SYSTEMS AND METHODS
CN113051370B (zh) * 2021-03-31 2022-10-04 河北大学 基于数学表达式评估语言的相似性测度方法
WO2023187862A1 (ja) * 2022-03-28 2023-10-05 twelS株式会社 検索サーバー、検索システム、及び検索プログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003271670A (ja) * 2002-03-19 2003-09-26 Mitsubishi Electric Corp 情報収集装置、情報収集方法及びプログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5737732A (en) * 1992-07-06 1998-04-07 1St Desk Systems, Inc. Enhanced metatree data structure for storage indexing and retrieval of information
US6823492B1 (en) * 2000-01-06 2004-11-23 Sun Microsystems, Inc. Method and apparatus for creating an index for a structured document based on a stylesheet
US6981219B2 (en) * 2001-11-27 2005-12-27 George L. Yang Method and system for processing formulas and curves in a document
WO2003071393A2 (en) * 2002-02-15 2003-08-28 Mathsoft Engineering And Education, Inc. Linguistic support for a regognizer of mathematical expressions
ATE392667T1 (de) * 2002-05-27 2008-05-15 Sap Ag Verfahren und computersystem zum indexieren strukturierter dokumente
US7120637B2 (en) * 2003-05-30 2006-10-10 Microsoft Corporation Positional access using a b-tree
US7827181B2 (en) * 2004-09-30 2010-11-02 Microsoft Corporation Click distance determination
US20060129538A1 (en) * 2004-12-14 2006-06-15 Andrea Baader Text search quality by exploiting organizational information
US8843475B2 (en) * 2006-07-12 2014-09-23 Philip Marshall System and method for collaborative knowledge structure creation and management
US8589869B2 (en) * 2006-09-07 2013-11-19 Wolfram Alpha Llc Methods and systems for determining a formula

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003271670A (ja) * 2002-03-19 2003-09-26 Mitsubishi Electric Corp 情報収集装置、情報収集方法及びプログラム

Also Published As

Publication number Publication date
JPWO2007105759A1 (ja) 2009-07-30
US20090019015A1 (en) 2009-01-15
WO2007105759A1 (ja) 2007-09-20

Similar Documents

Publication Publication Date Title
JPWO2007105759A1 (ja) 数式記述構造化言語オブジェクト検索システムおよび検索方法
US8554800B2 (en) System, methods and applications for structured document indexing
US7958444B2 (en) Visualizing document annotations in the context of the source document
Ekbal et al. A web-based Bengali news corpus for named entity recognition
Slavic Faceted classification: management and use
Leidner An evaluation dataset for the toponym resolution task
Hubmann-Haidvogel et al. Multiple coordinated views for searching and navigating web content repositories
Carr et al. The case for explicit knowledge in documents
WO2008041367A1 (fr) Dispositif de recherche de document, procédé de recherche de document et programme de recherche de document
Afzal et al. Creating Links into the Future.
Maurer et al. Transclusions in an html-based environment
CN102257490A (zh) 文档信息选择方法和计算机程序产品
KR100522186B1 (ko) 동적으로 홈페이지를 제작하는 방법 및 이 방법을 웹에서구현하는 장치
US20090083300A1 (en) Document processing device and document processing method
Sabri et al. Improving performance of DOM in semi-structured data extraction using WEIDJ model
Ciardelli et al. The EDIT cyberplatform for taxonomy and the taxonomic workflow: Selected components
Angel et al. Qualitative geocoding of persistent web pages
Kogalovsky et al. Open citation content data
Muniz et al. Taming the Tiger Topic: An XCES Compliant Corpus Portal to Generate Subcorpora Based on Automatic Text-Topic Identification
US20080005085A1 (en) Server Device and Search Method
Lam XML and global name access control
Bhowmick et al. Representation of web data in a web warehouse
Nojoumian Document engineering of complex software specifications
Hammo et al. ViStA: a visualization system for exploring Arabic text
Howarth et al. Visualizing search results from metadata-enabled repositories in cultural domains

Legal Events

Date Code Title Description
A529 Written submission of copy of amendment under article 34 pct

Free format text: JAPANESE INTERMEDIATE CODE: A5211

Effective date: 20080826

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080929

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100202

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20110304

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20110304

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120125

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120221

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150