JP4796108B2 - 構造化文書検索装置、方法及びプログラム - Google Patents
構造化文書検索装置、方法及びプログラム Download PDFInfo
- Publication number
- JP4796108B2 JP4796108B2 JP2008247998A JP2008247998A JP4796108B2 JP 4796108 B2 JP4796108 B2 JP 4796108B2 JP 2008247998 A JP2008247998 A JP 2008247998A JP 2008247998 A JP2008247998 A JP 2008247998A JP 4796108 B2 JP4796108 B2 JP 4796108B2
- Authority
- JP
- Japan
- Prior art keywords
- stream
- data
- structured document
- scanning
- scan
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/81—Indexing, e.g. XML tags; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/83—Querying
- G06F16/835—Query processing
- G06F16/8365—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/83—Querying
- G06F16/835—Query processing
- G06F16/8373—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/14—Tree-structured documents
- G06F40/143—Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/149—Adaptation of the text data for streaming purposes, e.g. Efficient XML Interchange [EXI] format
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/221—Parsing markup language streams
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
造化文書データを記憶・検索するための構造化文書管理システムとしては、いくつかの方
式が考えられている。第1の方式としては、構造化文書データをそのままテキストファイルとして管理する方式がある。この第1の方式では、データ数やサイズが大きくなると格納効率が悪くなるという問題がある。また、この第1の方式では、構造化文書の特性を生かした検索が困難になるという問題がある。第2の方式としては、RDB(Relational Database)に構造化文書データを管理する方式がある。この第2の方式は、基幹系などで広く使われている。第3の方式としては、構造化文書データを管理するために開発されたOODB(Obje ct Oriented Database)で管理する方式がある。この第3の方式は、RDBを拡張した、例えばXML対応RDBである。RDBは、データをフラットなテーブル形式に格納するため、XMLデータのような階層構造をテーブルに対応付ける複雑なマッピングが必要となる。このマッピングのため、テーブルに関する事前の構造(スキーマ)設計を十分に行わないと、パフォーマンスが低下してしまう問題が発生する。そこで、近年においては、上述した第1〜第3の方式に代わる第4の方式が提案されている。第4の方式は、ネイティブに構造化文書データを管理する方式である。この第4の方式は、多種多様な階層構造を持つXMLデータを特別なマッピング処理すること無しに格納するため、格納や取得時に特別なオーバヘッドが存在しない。また、コストのかかる事前のスキーマ設計が不要になり、ビジネス環境の変化により必要に応じてXMLデータの構造を自由に変更することが可能である。
(1)複雑なXQueryの場合、複数のパスパターンがクエリに含まれる。複数のパスパターンへの照合を行うのに、同一構造化文書データへのトラバースが繰り返し発生する。特にオンメモリにできないサイズを取り扱うケースでは、同一ページへのディスクI/Oが断続発生し、性能劣化が激しくなる。
(2)XQueryのサブセットであるXPathの場合でも、高ヒット時には性能劣化が発生する。つまり、構造化文書の集合の大半をトラバースするケースでは、大量のディスクI/Oが発生してしまう。
(3)高ヒットでないXPathでは性能劣化が著しい。バックトラックベースであるため、CPU処理上のオーバヘッドも大きい。処理の特性上、索引を使った問合わせ処理が難しい。
(a)システムに格納された構造化文書データ集合に現れる全てのパスは、構造ガイドデータに現れる。
(b)構造ガイドデータに現れる全てのパスは、システムに格納された構造化文書データ集合に現れる。
(c)構造ガイドデータに現れるパスは全て一意的である。
E0 「ROOT」に対応する配列要素:(G)0
E1 「書籍」に対応する配列要素:(G)1
E2 「筆者」に対応する配列要素:(G)2
・・・
このように要素を配列してデータストリームを生成することで、2次元的な構造の構造化文書データを1次元の配列データとなるデータストリームにストリーム変換部21は変換する。
・“/” 要素間は親子関係であることを示すオペレータ
・“//” 要素間は先祖子孫関係であることを示すオペレータ
・“.” 任意の要素
<走査プラン生成処理>
次に、本実施の形態にかかるサーバ1の行う処理の手順について説明する。まず、サーバ1が走査プランを生成する処理の手順について図13を用いて説明する。検索インターフェイス部24は、クライアント端末3から送信された検索要求を受け取ると、当該検索要求であるクエリデータを構文解析した後、ストリーム集合走査プラン生成部25を呼び出して走査プランを生成させる。ストリーム集合走査プラン生成部25は、まず、クエリデータからクエリグラフを生成する(ステップS1)。クエリグラフは、タグとタグとの間の関連をツリー形式で表現することで生成することができる。XQueryにより記述されるクエリデータからのクエリグラフは、Yacc(Yet Another Compiler Compiler)などの構文解析ツールを使うことで機械的に生成することができる。このようなクエリグラフの生成は、例えば、特許文献3に示されるパスパターンコンパイル処理と類似処理とにより行うことができる。
・XMLデータの要素間階層条件
−root要素の子孫要素(//)に構造要素<書籍>がある。
−構造要素<書籍>の子要素(/)に構造要素<タイトル>がある。
−構造要素<書籍>の子要素(/)に構造要素<筆者>がある。
・XMLデータのテキスト比較条件
−構造要素<タイトル>のテキスト要素は「XML」を含んでいる(contains)。
−構造要素<筆者>のテキスト要素は「服部」を含んでいる(contains)。
・テキスト比較条件CMPを有するサブグラフ
・要素間階層条件TAGだけで構成されるサブグラフ
・サブグラフAは、要素間階層条件TAGだけで構成されるサブグラフである。
・サブグラフB,Cは、テキスト比較条件CMPを各々有するサブグラフである。
・サブグラフAは構造に関するものなので、サブグラフAにはデータストリームが割り当てられる。
・サブグラフBは構造要素<タイトル>に関する比較条件を有するものである。ここでは図9に示した設定情報が参照され、サブグラフBには索引ストリーム1が割り当てられる。
・サブグラフCは構造要素<筆者>に関する比較条件を有するものである。ここでは図9に示した設定情報を参照が参照され、サブグラフCには索引ストリーム2が割り当てられる。
次に、サーバ1が走査プランを実行する処理の手順について図17を用いて説明する。サーバ1のストリーム集合走査プラン実行部26は、走査プランに従って、ストリームの終端に到達するまで(ステップS20:YES)、文書単位で以下の処理を繰り返し行う。まず、ストリーム集合走査プラン実行部26は、走査プランを実行するためのパラメータとして「N:=1、OP:=SCAN」を設定する(ステップS21)。即ちここでストリーム集合走査プラン実行部26は、走査の対象の段Nを「1段目」に設定し、実行内容として「走査」を設定する。そして、走査の対象となる段Nが最終段でなく(ステップS23:NO)、実行内容が「走査」であり(ステップS24:SCAN)、制御命令が「FILTER」である場合(ステップS25:YES)、ステップS26に進む。ステップS26では、ストリーム集合走査プラン実行部26は、走査対象の段Nのストリームについて、次の同期信号SYNCが出現するまで走査して、走査範囲内における検索条件に該当するものがあるか否かを判定する。即ち、ストリーム集合走査プラン実行部26は、同期信号が出現してから次の同期信号が出現するまでの間のデータブロックを文書単位の走査範囲として走査する。ただし、この間のデータブロックが複数ある場合には、検索条件によっては、全てのデータブロックではなく一部のデータブロックのみ走査すれば良い場合もある。
(GS1)まず、ストリーム集合走査プラン実行部26は、走査対象の段として1段目である索引ストリーム1のIndexBlock[1][y]を走査すると、走査範囲内における検索条件として「XML」というテキスト要素が存在するか否かを判定し、ここではこれが存在していると判定する(ステップS21,S23〜S28)。
(GS2)次いで、ストリーム集合走査プラン実行部26は、走査対象の段として2段目である索引ストリーム2のIndexBlock[2][z]を走査すると、走査範囲内における検索条件として「服部」というテキスト要素が存在するか否かを判定し、ここではこれが存在していると判定する(ステップS22,S23〜S28)。
(GS3)次いで、ストリーム集合走査プラン実行部26は、走査対象の段として3段目であるデータストリームのDataBlock[x]を走査して、結果データ、即ち、文書1のデータを得る(ステップS22,S23〜S28)。
(GS5)この場合、ストリーム集合走査プラン実行部26は、次に走査対象となる2段目である索引ストリーム2のデータブロックIndexBlock[2][z+1]及びIndexBlock[2][z+2]の走査をスキップする(ステップS22〜S24,S36)。
(GS6)同様に、ストリーム集合走査プラン実行部26は、次に走査対象となる3段目であるデータストリームのデータブロックDataBlock[x+2]の走査をスキップする(ステップS22〜S24,S36)。
(GS8)次いで、ストリーム集合走査プラン実行部26は、走査対象の段として2段目である索引ストリーム2のIndexBlock[2][z+3]を走査すると、「服部」というテキスト要素が存在していると判定する(ステップS22,S23〜S28)。
(GS9)次いで、ストリーム集合走査プラン実行部26は、走査対象の段として3段目であるデータストリームのDataBlock[x+3]を走査して、結果データ、即ち、文書3のデータを得る(ステップS22,S23〜S28)。
(GS1´)まず、ストリーム集合走査プラン実行部26は、走査対象の段として1段目であるデータストリームのIndexBlock[1][x]を走査すると、走査範囲内における検索条件として、「ROOT」の階層木の中に「本」という構造要素が存在するか否かを判定し、ここではこれが存在しないと判定する(ステップS21,S23〜S27,S29)。尚、「本」という構造要素は同一の文書内の要素のうち1番目の要素であるため、同一の文書についてのブロックのうち2番目以降のブロック、ここでは、DataBlock[x+1]を走査する必要はない。
(GS2´)この場合、ストリーム集合走査プラン実行部26は、走査対象の段として2段目である索引ストリーム1のIndexBlock[1][y]の走査をスキップする(ステップS22〜S24,S36)。
(GS3´)同様に、ストリーム集合走査プラン実行部26は、次に走査対象となる3段目である索引ストリーム2のデータブロックIndexBlock[2][z]の走査をスキップする(ステップS22〜S24,S36)。
(GS5´)次いで、ストリーム集合走査プラン実行部26は、走査対象の段として2段目である索引ストリーム1のIndexBlock[1][y+1]を走査すると、走査範囲内における検索条件として「XML」というテキスト要素が存在するか否かを判定し、ここではこれが存在していないと判定する(ステップS22〜S27,S29)。
(GS6´)この場合、ストリーム集合走査プラン実行部26は、次に走査対象となる3段目である索引ストリーム2のデータブロックIndexBlock[2][z+1]及びIndexBlock[2][z+2]の走査をスキップする(ステップS22〜S24,S36)。
(GS8´)この場合、ストリーム集合走査プラン実行部26は、走査対象の段として2段目である索引ストリーム1のIndexBlock[1][y+2]の走査をスキップする(ステップS22〜S24,S36)。
(GS9´)同様に、ストリーム集合走査プラン実行部26は、次に走査対象となる3段目である索引ストリーム2のデータブロックIndexBlock[2][z+3]の走査をスキップする(ステップS22〜S24,S36)。
(GS10´)その後、ストリーム集合走査プラン実行部26は、走査対象の段として1段目であるデータストリームの走査に戻り、上述の処理を継続する。
(GS1”)まず、ストリーム集合走査プラン実行部26は、走査対象の段として1段目である索引ストリーム1のIndexBlock[1][y]を走査すると、走査範囲内における検索条件として「XML」というテキスト要素が存在するか否かを判定し、ここではこれが存在していると判定する(ステップS21,S23〜S28)。
(GS2”)この場合、ストリーム集合走査プラン実行部26は、次に走査対象となる2段目である索引ストリーム2のデータブロックIndexBlock[2][z]の走査をスキップする(ステップS22〜S24,S36)。
(GS3”)次いで、ストリーム集合走査プラン実行部26は、走査対象の段として3段目であるデータストリームのDataBlock[x]を走査して、結果データ、即ち、文書1のデータを得る(ステップS22,S23〜S28)。
(GS5”)次いで、ストリーム集合走査プラン実行部26は、走査対象の段として2段目である索引ストリーム2のIndexBlockIndexBlock[2][z+1]及びIndexBlock[2][z+2]を走査すると、走査範囲内における検索条件として「服部というテキスト要素が存在するか否かを判定し、ここではこれが存在していないと判定する(ステップS20〜S21,S23〜S27,S29)。
(GS6”)この場合、ストリーム集合走査プラン実行部26は、次に走査対象となる3段目であるデータストリームのデータブロックDataBlock[x+2]の走査をスキップする(ステップS22〜S24,S36)。
(GS8”)この場合、ストリーム集合走査プラン実行部26は、走査対象の段として2段目である索引ストリーム2のIndexBlock[2][z+3]の走査をスキップする(ステップS22〜S24,S36)。
(GS9”)次いで、ストリーム集合走査プラン実行部26は、走査対象の段として3段目であるデータストリームのDataBlock[x+3]を走査して、結果データ、即ち、文書3のデータを得る(ステップS22,S23〜S28)。
2 ネットワーク
3 クライアント端末
11 格納処理部
12 検索処理部
13 構造化文書DB
13a 構造ガイドデータ領域
13b データストリーム領域
13c 索引ストリーム領域
20 格納インターフェイス部
21 ストリーム変換部
22 データストリーム格納部
23 索引ストリーム格納部
24 検索インターフェイス部
25 ストリーム集合走査プラン生成部
26 ストリーム集合走査プラン実行部
27 詳細条件検査部
30 構造化文書登録部
31 構造化文書検索処理部
105 媒体駆動装置
106 通信制御装置
107 表示部
108 入力部
109 バスコントローラ
110 記憶媒体
Claims (11)
- 複数の要素が階層化されて各々含まれる複数の構造化文書データを記憶する構造化文書検索装置であって、
前記複数の構造化文書データに各々含まれる各要素が構文解析の結果順に配列されたデータストリームを第1記憶領域に格納する第1格納手段と、
前記複数の構造化文書データに各々含まれ且つ当該構造化文書データを検索する際の索引となる前記要素を構文解析の結果順に並べた少なくとも1つの索引ストリームを第2記憶領域に格納する第2格納手段と、
前記構造化文書データを検索するための検索条件に基づいて、前記データストリーム及び前記索引ストリームに対する走査を命じる走査プランを生成する生成手段と、
前記走査プランによって命じられた前記データストリーム及び前記索引ストリームのうち少なくとも一方に対する走査を実行する実行手段とを備え、
前記生成手段は、前記検索条件に基づいて、文書単位で、前記データストリーム及び前記索引ストリームを含む複数のストリームのうち第1のストリームに対する走査を命じ、当該走査の結果に応じて第2のストリームに対する走査を命じる走査プランを生成し、
前記第1格納手段は、固定長のデータブロック毎に配列された前記データストリームについて、前記構造化文書データ毎に先頭の前記データブロックの先頭に同期記号を埋め込んで、当該データストリームを前記第1記憶領域に格納し、
前記実行手段は、前記同期記号が出現してから次の前記同期記号が出現するまでのデータブロックを前記文書単位として前記データストリームに対する走査を実行するものであり、前記走査プランによって命じられた前記第1のストリームに対する走査を文書単位で実行し、前記走査の結果に応じて、前記データストリームである前記第2のストリームについて前記同期記号が出現してから次の前記同期記号が出現するまでのデータブロックに対する走査をスキップする
ことを特徴とする構造化文書検索装置。 - 前記第2格納手段は、固定長のデータブロック毎に配列された前記索引ストリームについて、前記構造化文書データに対応するデータブロック毎にその先頭に同期記号を埋め込んで、当該索引ストリームを前記第1記憶領域に格納し、
前記実行手段は、前記同期記号が出現してから次の前記同期記号が出現するまでのデータブロックを前記文書単位として前記索引ストリームに対する走査を実行するものであり、前記走査プランによって命じられた前記第1のストリームに対する走査を文書単位で実行し、前記走査の結果に応じて、前記索引ストリームである前記第2のストリームについて前記同期記号が出現してから次の前記同期記号が出現するまでのデータブロックに対する走査をスキップする
ことを特徴とする請求項1に記載の構造化文書検索装置。 - 前記検索条件を示す検索要求であるクエリデータをクライアント装置から取得する取得手段を更に備え、
前記生成手段は、前記クエリデータを用いて、前記走査プランを生成する
ことを特徴とする請求項1または2に記載の構造化文書検索装置。 - 前記生成手段は、
前記クエリデータを構文解析して前記検索条件をツリー形式で表したクエリグラフを生成するグラフ生成手段と、
前記クエリグラフを複数のサブグラフに分解する分解手段と、
各前記サブグラフに対して、前記データストリーム及び前記索引ストリームを含む複数のストリームのうち少なくとも1つのストリームを割り当てる割当手段と、
前記サブグラフに対して割当られた各前記ストリームに対する走査を命じる走査命令と、前記サブクラフ間の論理関係に応じて各前記走査命令の手順を決定する制御命令であり、第1のストリームに対する走査命令に従った走査の結果に応じて第2のストリームに対する走査が実行されるように当該第2のストリームに対する前記走査命令を接続する制御命令とを含む走査プランを生成するプラン生成手段とを有する
ことを特徴とする請求項3に記載の構造化文書検索装置。 - 前記割当手段は、各前記ストリームのデータサイズ及び検索条件がストリームに設定されたときに検索条件を満足する要素の数の割合を示す選択率のうち少なくとも一方に基づいて、各前記サブグラフに対して、前記少なくとも1つのストリームを割り当てる
ことを特徴とする請求項4に記載の構造化文書検索装置。 - 前記実行手段は、前記走査プランに含まれる、前記第1のストリームに対する前記走査命令に従って走査を実行した後、前記走査の結果に応じて、前記制御命令によって当該走査命令に接続された、前記第2のストリームに対する前記走査命令に従った走査を実行しないことにより、当該第2のストリームに対する走査をスキップする
ことを特徴とする請求項4又は5に記載の構造化文書検索装置。 - 前記構造化文書データを構文解析し、当該構造化文書データの階層構造の要約を示す構造ガイドデータを用いて、当該構造化文書データに含まれる各要素を構文解析の結果順に配列したデータストリームを生成する第1生成手段を更に備える
ことを特徴とする請求項1乃至6のいずれか一項に記載の構造化文書検索装置。 - 前記構造化文書データを構文解析し、前記構造ガイドデータと、前記複数の要素のうち索引とする要素を指定する設定情報とを用いて、当該構造化文書データに含まれ前記設定情報によって指定された要素を構文解析の結果順に配列した索引ストリームを生成する第2生成手段を更に備える
ことを特徴とする請求項1乃至7のいずれか一項に記載の構造化文書検索装置。 - 前記実行結果に基づいて、前記検索要求に応じた検索結果を出力する出力手段を更に備える
ことを特徴とする請求項1乃至8のいずれか一項に記載の構造化文書検索装置。 - 第1格納手段と、第2格納手段と、生成手段と、実行手段とを備え、複数の要素が階層化されて各々含まれる複数の構造化文書データを記憶する構造化文書検索装置で実行される構造化文書検索方法であって、
前記第1格納手段が、前記複数の構造化文書データに各々含まれる各要素が構文解析の結果順に配列されたデータストリームを第1記憶領域に格納する第1格納ステップと、
前記第2格納手段が、前記複数の構造化文書データに各々含まれ且つ当該構造化文書データを検索する際の索引となる前記要素を構文解析の結果順に並べた少なくとも1つの索引ストリームを第2記憶領域に格納する第2格納ステップと、
前記生成手段が、前記構造化文書データを検索するための検索条件に基づいて、前記データストリーム及び前記索引ストリームに対する走査を命じる走査プランを生成する生成ステップと、
前記実行手段が、前記走査プランによって命じられた前記データストリーム及び前記索引ストリームのうち少なくとも一方に対する走査を実行する実行ステップとを含み、
前記生成ステップは、前記検索条件に基づいて、文書単位で、前記データストリーム及び前記索引ストリームを含む複数のストリームのうち第1のストリームに対する走査を命じ、当該走査の結果に応じて第2のストリームに対する走査を命じる走査プランを生成し、
前記第1格納ステップは、固定長のデータブロック毎に配列された前記データストリームについて、前記構造化文書データ毎に先頭の前記データブロックの先頭に同期記号を埋め込んで、当該データストリームを前記第1記憶領域に格納し、
前記実行ステップは、前記同期記号が出現してから次の前記同期記号が出現するまでのデータブロックを前記文書単位として前記データストリームに対する走査を実行するものであり、前記走査プランによって命じられた前記第1のストリームに対する走査を文書単位で実行し、前記走査の結果に応じて、前記データストリームである前記第2のストリームについて前記同期記号が出現してから次の前記同期記号が出現するまでのデータブロックに対する走査をスキップする
ことを特徴とする構造化文書検索方法。 - 請求項10に記載の方法をコンピュータに実行させることを特徴とするプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008247998A JP4796108B2 (ja) | 2008-09-26 | 2008-09-26 | 構造化文書検索装置、方法及びプログラム |
US12/503,439 US9378301B2 (en) | 2008-09-26 | 2009-07-15 | Apparatus, method, and computer program product for searching structured document |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008247998A JP4796108B2 (ja) | 2008-09-26 | 2008-09-26 | 構造化文書検索装置、方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010079646A JP2010079646A (ja) | 2010-04-08 |
JP4796108B2 true JP4796108B2 (ja) | 2011-10-19 |
Family
ID=42058580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008247998A Active JP4796108B2 (ja) | 2008-09-26 | 2008-09-26 | 構造化文書検索装置、方法及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US9378301B2 (ja) |
JP (1) | JP4796108B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102081597A (zh) * | 2009-12-01 | 2011-06-01 | 鸿富锦精密工业(深圳)有限公司 | 失效分析报告生成系统及方法 |
JP2012063868A (ja) | 2010-09-14 | 2012-03-29 | Internatl Business Mach Corp <Ibm> | 言語処理パーサーを組み合わせて、組み合わせパーサーを生成する方法、並びにそのコンピュータ及びコンピュータ・プログラム |
US8935267B2 (en) * | 2012-06-19 | 2015-01-13 | Marklogic Corporation | Apparatus and method for executing different query language queries on tree structured data using pre-computed indices of selective document paths |
CN103827860B (zh) * | 2012-09-20 | 2017-05-17 | 株式会社东芝 | 结构化文档管理装置及方法 |
JP5939583B2 (ja) | 2013-12-13 | 2016-06-22 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 抽出装置、データ処理システム、抽出方法および抽出プログラム |
US20160299928A1 (en) * | 2015-04-10 | 2016-10-13 | Infotrax Systems | Variable record size within a hierarchically organized data structure |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5685003A (en) * | 1992-12-23 | 1997-11-04 | Microsoft Corporation | Method and system for automatically indexing data in a document using a fresh index table |
US5530852A (en) * | 1994-12-20 | 1996-06-25 | Sun Microsystems, Inc. | Method for extracting profiles and topics from a first file written in a first markup language and generating files in different markup languages containing the profiles and topics for use in accessing data described by the profiles and topics |
JP2000057163A (ja) | 1998-08-12 | 2000-02-25 | Nec Corp | 構造化文書データベースシステム |
JP3492246B2 (ja) | 1999-07-16 | 2004-02-03 | 富士通株式会社 | Xmlデータ検索処理方法および検索処理システム |
US7398201B2 (en) * | 2001-08-14 | 2008-07-08 | Evri Inc. | Method and system for enhanced data searching |
US20040111396A1 (en) * | 2002-12-06 | 2004-06-10 | Eldar Musayev | Querying against a hierarchical structure such as an extensible markup language document |
US7113942B2 (en) * | 2003-06-27 | 2006-09-26 | Microsoft Corporation | Scalable storage and processing of hierarchical documents |
US7917480B2 (en) * | 2004-08-13 | 2011-03-29 | Google Inc. | Document compression system and method for use with tokenspace repository |
JP4037859B2 (ja) * | 2004-09-29 | 2008-01-23 | 株式会社東芝 | 全文検索システム及び方法 |
GB0428365D0 (en) * | 2004-12-24 | 2005-02-02 | Ibm | Methods and apparatus for generating a parser and parsing a document |
US20070136340A1 (en) * | 2005-12-12 | 2007-06-14 | Mark Radulovich | Document and file indexing system |
JP5121146B2 (ja) * | 2006-02-22 | 2013-01-16 | 株式会社東芝 | 構造化文書管理装置、構造化文書管理プログラムおよび構造化文書管理方法 |
-
2008
- 2008-09-26 JP JP2008247998A patent/JP4796108B2/ja active Active
-
2009
- 2009-07-15 US US12/503,439 patent/US9378301B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2010079646A (ja) | 2010-04-08 |
US20100082587A1 (en) | 2010-04-01 |
US9378301B2 (en) | 2016-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5121146B2 (ja) | 構造化文書管理装置、構造化文書管理プログラムおよび構造化文書管理方法 | |
US7293018B2 (en) | Apparatus, method, and program for retrieving structured documents | |
US7231386B2 (en) | Apparatus, method, and program for retrieving structured documents | |
US9009173B2 (en) | Using views of subsets of nodes of a schema to generate data transformation jobs to transform input files in first data formats to output files in second data formats | |
JP4796108B2 (ja) | 構造化文書検索装置、方法及びプログラム | |
RU2507574C2 (ru) | Постраничное разбиение иерархических данных | |
US20060136452A1 (en) | Method of generating database schema to provide integrated view of dispersed data and data integrating system | |
CA2501608A1 (en) | System and method for schemaless data mapping with nested tables | |
JP4247135B2 (ja) | 構造化文書記憶方法、構造化文書記憶装置、構造化文書検索方法 | |
JP4247108B2 (ja) | 構造化文書検索方法、構造化文書検索装置、及びプログラム | |
JP4045400B2 (ja) | 検索装置及び検索方法 | |
JP2008234430A (ja) | クエリ処理装置、プログラムおよびクエリ処理方法 | |
JP2005135199A (ja) | オートマトン作成方法、および、xmlデータ検索方法、ならびに、xmlデータ検索装置、xmlデータ検索プログラム、および、xmlデータ検索プログラムの記録媒体 | |
CN113704575A (zh) | 解析XML与Java文件的SQL方法、装置、设备及存储介质 | |
US8001110B2 (en) | Apparatus, method, and computer program product for processing databases | |
JP4724177B2 (ja) | Xmlデータにアクセスするためのインデックス | |
JP3914081B2 (ja) | アクセス権限設定方法および構造化文書管理システム | |
JP2006127229A (ja) | 構造化文書検索システム、構造化文書検索方法及びプログラム | |
US7451133B2 (en) | Executing nested subqueries of parallel table functions in the parallel single cursor model | |
JP3842572B2 (ja) | 構造化文書管理方法および構造化文書管理装置およびプログラム | |
US8762381B2 (en) | Storing multipart XML documents | |
JP4289022B2 (ja) | 構造化文書処理方法及び装置及び構造化文書処理プログラム及び構造化文書処理プログラムを格納した記憶媒体 | |
KR102422439B1 (ko) | 시드를 이용한 지식 그래프 생성 방법 및 그 장치 | |
JP4242701B2 (ja) | 格納検索装置、格納検索プログラム、および格納検索プログラム記録媒体 | |
JP2004348479A (ja) | 検索装置、検索方法、検索プログラム、および検索プログラム記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100901 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110111 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110301 |
|
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: 20110705 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110728 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4796108 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140805 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 Free format text: JAPANESE INTERMEDIATE CODE: R313114 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |