JP4490930B2 - Structured document search apparatus and structured document search method - Google Patents
Structured document search apparatus and structured document search method Download PDFInfo
- Publication number
- JP4490930B2 JP4490930B2 JP2006030110A JP2006030110A JP4490930B2 JP 4490930 B2 JP4490930 B2 JP 4490930B2 JP 2006030110 A JP2006030110 A JP 2006030110A JP 2006030110 A JP2006030110 A JP 2006030110A JP 4490930 B2 JP4490930 B2 JP 4490930B2
- Authority
- JP
- Japan
- Prior art keywords
- vocabulary
- search
- structured document
- document
- information
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
この発明は、階層化された論理構造を持つ構造化文書データベースで管理された異なる文書構造の複数の構造化文書を検索する構造化文書検索装置および構造化文書検索方法に関するものである。 The present invention relates to a structured document search apparatus and a structured document search method for searching a plurality of structured documents having different document structures managed by a structured document database having a hierarchical logical structure.
近年、XML(eXtensible Markup Language)などで記述された構造化文書データを記憶・検索する構造化文書データベースが開発されている。構造化文書データベースに対する問合せ(検索)は、一般に、W3C(World Wide Web Consortium)が標準化を進めているXQuery(XML Query)という問合せ言語によって行われる。 In recent years, structured document databases for storing and retrieving structured document data described in XML (eXtensible Markup Language) or the like have been developed. The query (search) for the structured document database is generally performed by a query language called XQuery (XML Query) which is being standardized by the World Wide Web Consortium (W3C).
XQueryは、条件式の指定によるフィルタリングだけでなく、検索結果を返す部分であるReturn節に仮想的な構造化文書を埋め込むこと、条件式を複雑な入れ子構造とすること、条件式に関数式を定義することなどが可能であり、多様な機能を有する非常に問合せ能力が高度な言語である。 XQuery not only performs filtering by specifying a conditional expression, but also embeds a virtual structured document in the return section that returns the search result, makes the conditional expression a complex nested structure, and adds a functional expression to the conditional expression. It is a language that can be defined, etc., and has a very high query ability with various functions.
XQueryでは、要素や属性などのDOM(Document Object Model)におけるノードレベルの情報を検索対象とする。例えば、特許文献1では、以下の方法により、構造化文書のノードレベルの情報の検索を行う技術が提案されている。
In XQuery, node-level information in DOM (Document Object Model) such as elements and attributes is a search target. For example,
まず、構造化文書をデータベースに格納する際に、対象となる文書のデータ構造を解析し、その構造(ノード)に対する解析情報を語彙索引情報などに埋め込んで索引を作成する。なお、この場合の構造の解析情報は、XPath(XML Path Language)で表現できるパスレベルを同一の構造情報(構造テンプレート)と見なした情報である。 First, when a structured document is stored in a database, the data structure of the target document is analyzed, and an index is created by embedding analysis information for the structure (node) in lexical index information or the like. The structure analysis information in this case is information regarding path levels that can be expressed in XPath (XML Path Language) as the same structure information (structure template).
次に、検索時に検索クエリを解析して問合せグラフを作成し、コスト計算をした上でクエリ実行のプランを作成する。この際、索引処理時にクエリを解析し、それぞれの変数が満たさなければならない構造に対する制約を予め求めることにより、各索引に対する探索範囲を限定した上で索引の検索を行い、中間の候補件数の削減を実現している。 Next, at the time of search, the search query is analyzed to create a query graph, and after calculating the cost, a query execution plan is created. At this time, by analyzing the query at the time of index processing and obtaining constraints on the structure that each variable must satisfy in advance, the search of the index is limited and the number of intermediate candidates is reduced. Is realized.
一方、全文検索の分野では、キーワードの論理条件(AND/ORなど)を指定して合致する文書を検索する機能や、文字の出現位置を条件に指定して検索する機能が実現されている。出現位置を条件とする検索条件の一例として、「<title>タグに、“web”と“title”が5文字以内に存在する情報を検索せよ」のような近傍検索が挙げられる。 On the other hand, in the field of full-text search, a function for searching for a matching document by specifying a logical condition (such as AND / OR) of a keyword or a function for searching by specifying a character appearance position as a condition is realized. An example of a search condition that uses an appearance position as a condition is a neighborhood search such as “Search for information in which“ web ”and“ title ”exist within 5 characters in the <title> tag”.
近傍検索を実現するためには、AND条件の処理を行う際にテキストの位置情報を残しておく必要がある。しかし、XQueryは検索対象がノード単位のモデルであるため、AND条件の処理時に出現位置に関する情報が失われ、近傍検索を実現することができなかった。 In order to realize the neighborhood search, it is necessary to leave the text position information when processing the AND condition. However, since the XQuery is a node-based model, information on the appearance position is lost when the AND condition is processed, and the neighborhood search cannot be realized.
このように、XQueryは、全文検索機能を実現するという観点からは十分な表現能力を有するとは言えなかった。これを解消するため、XQueryを拡張し、全文検索機能を融合したXQFT(XQuery-Full-Text)という言語規格がW3Cによって提案されている。 Thus, XQuery cannot be said to have sufficient expression capability from the viewpoint of realizing the full-text search function. In order to solve this problem, the W3C has proposed a language standard called XQFT (XQuery-Full-Text) that extends XQuery and combines full-text search functions.
XQFTは検索対象のノードに対して、テキストの出現位置の条件を含む複数の条件を記述可能である。例えば、上記の近傍検索の例は、「./title ftcontains "web" && "site" distance at most 5」と記述することができる。XQFTでは、検索対象の情報がXQueryの「ノード」レベルではなく、「テキストの出現位置」レベルであるため、これを考慮した処理方法を実現しなければならない。 XQFT can describe a plurality of conditions including a condition of the appearance position of a text for a node to be searched. For example, the example of the neighborhood search described above can be described as “./title ftcontains“ web ”&&“ site ”distance at most 5”. In XQFT, the information to be searched is not at the “Node” level of XQuery but at the “Text Appearance Position” level, so a processing method that takes this into consideration must be realized.
しかしながら、XQFTでは、テキストの出現位置レベルまで考慮した検索結果の候補を取得するため、結合処理等を行う場合に中間候補数が膨大になり、検索処理速度の低下や、メモリ量の爆発等を招く可能性があるという問題があった。 However, in XQFT, search result candidates that take the text appearance position level into consideration are acquired, so the number of intermediate candidates becomes enormous when performing join processing and the like, resulting in a decrease in search processing speed and an explosion in memory capacity. There was a problem that it might invite.
例えば、ある要素内に“web”が100回、“site”が200回出現する場合、各要素に対する候補を単純に結合すると、中間候補数は20000(100×200)個存在する。XQFTによりテキストの出現位置レベルまで考慮すると、各要素に対する候補数が増大するため、それらの候補を結合して得られる中間候補数の個数はさらに増大する。 For example, when “web” appears 100 times and “site” appears 200 times in a certain element, if candidates for each element are simply combined, there are 20000 (100 × 200) intermediate candidates. When the text appearance position level is considered by XQFT, the number of candidates for each element increases, so the number of intermediate candidates obtained by combining these candidates further increases.
本発明は、上記に鑑みてなされたものであって、構造化文書に対する高速な全文検索機能を実現することができる構造化文書検索装置および構造化文書検索方法を提供することを目的とする。 The present invention has been made in view of the above, and an object thereof is to provide a structured document search apparatus and a structured document search method capable of realizing a high-speed full-text search function for a structured document.
上述した課題を解決し、目的を達成するために、本発明は、階層化された論理構造を有する文書であって、前記論理構造の単位である構造要素に対応する実情報である要素を含む構造化文書と、前記構造化文書を一意に識別する文書IDと、を対応づけて記憶する構造化文書記憶手段と、前記構造要素を一意に識別する構造IDと、前記要素の特徴を表す第1の特徴情報とを対応づけた構造情報を記憶する構造情報記憶手段と、前記構造化文書の検索条件の入力を受付け、受付けた検索条件を解析し、前記構造化文書の前記構造要素に対応した構造の単位であるノードを階層化して有する階層構造の検索条件であって、検索対象となる前記構造IDの候補と前記構造IDの候補に対する検索キーとを対応づけた前記ノードを含む前記階層構造の検索条件を求める解析手段と、前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記構造IDの候補に対応づけられた前記第1の特徴情報を前記構造情報記憶手段から取得する取得手段と、前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記検索キーの特徴を表す第2の特徴情報を算出する算出手段と、前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記構造IDの候補のうち、対応する前記検索キーについて前記算出手段が算出した前記第2の特徴情報が、前記取得手段が取得した前記第1の特徴情報に適合しない前記構造IDの候補を削除する削除手段と、前記削除手段が前記構造IDの候補を削除した前記階層構造の検索条件に基づき、前記階層構造の検索条件を満たす前記構造IDに対応する前記文書IDを求め、前記求められた文書IDに対応する前記構造化文書を前記構造化文書記憶手段から検索する検索手段と、を備えたことを特徴とする。 In order to solve the above-described problems and achieve the object, the present invention includes a document having a hierarchical logical structure, which is an element that is actual information corresponding to a structural element that is a unit of the logical structure. Structured document storage means for storing a structured document in association with a document ID for uniquely identifying the structured document, a structure ID for uniquely identifying the structural element, and a feature ID of the element A structure information storage means for storing structure information associated with one feature information; and input of search conditions for the structured document; analysis of the received search conditions; and correspondence to the structure elements of the structured document A hierarchical search condition having a hierarchical structure of nodes that are units of the structured structure, the hierarchy including the node associating the structure ID candidate to be searched with a search key for the structure ID candidate Construction Analyzing means for obtaining a search condition, and for each node of the search condition of the hierarchical structure obtained by the analyzing means, the first feature information associated with the candidate structure ID included in each node is the structure information. Obtaining means for obtaining from the storage means; for each node of the search condition of the hierarchical structure obtained by the analyzing means; calculating means for calculating second feature information representing a feature of the search key included in each node; For each node of the search condition of the hierarchical structure obtained by the analysis means, the second feature information calculated by the calculation means for the corresponding search key among the candidate structure IDs included in each node is: A deletion unit that deletes the structure ID candidate that does not match the first feature information acquired by the acquisition unit; and the floor from which the deletion unit has deleted the structure ID candidate. Based on a structure search condition, the document ID corresponding to the structure ID satisfying the hierarchical structure search condition is obtained, and the structured document corresponding to the obtained document ID is retrieved from the structured document storage means. And a search means.
また、本発明は、階層化された論理構造を有する文書であって、前記論理構造の単位である構造要素に対応する実情報である要素を含む構造化文書と、前記構造化文書を一意に識別する文書IDと、を対応づけて記憶する構造化文書記憶手段と、前記構造要素を一意に識別する構造IDと、前記要素の特徴を表す第1の特徴情報とを対応づけた構造情報を記憶する構造情報記憶手段と、前記文書IDと、前記要素を一意に識別する要素IDと、前記要素に対応する前記構造要素の前記構造IDとを対応づけた索引を記憶する索引記憶手段と、前記構造化文書の検索条件の入力を受付け、受付けた検索条件を解析し、前記構造化文書の前記構造要素に対応した構造の単位であるノードを階層化して有する階層構造の検索条件であって、検索対象となる前記構造IDの候補と前記構造IDの候補に対する検索キーとを対応づけた前記ノードを含む前記階層構造の検索条件を求める解析手段と、前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記構造IDの候補に対応づけられた前記第1の特徴情報を前記構造情報記憶手段から取得する取得手段と、前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記検索キーの特徴を表す第2の特徴情報を算出する算出手段と、前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記構造IDの候補のうち、対応する前記検索キーについて前記算出手段が算出した前記第2の特徴情報が、前記取得手段が取得した前記第1の特徴情報に適合しない前記構造IDの候補を削除する削除手段と、前記削除手段が前記構造IDの候補を削除した前記階層構造の検索条件に基づき、前記階層構造の検索条件を満たす前記構造IDに対応する前記文書IDと前記要素IDとを前記索引記憶手段から検索する索引検索手段と、前記索引検索手段が検索した前記文書IDに対応する前記構造化文書を前記構造化文書記憶手段から検索する検索手段と、を備えたことを特徴とする。 Further, the present invention is a document having a hierarchical logical structure, wherein the structured document including an element that is actual information corresponding to a structural element that is a unit of the logical structure, and the structured document are uniquely identified. Structured document storage means for associating and storing a document ID to be identified, structure information for associating structure ID for uniquely identifying the structure element, and first feature information representing the feature of the element Structure information storage means for storing; index storage means for storing an index that associates the document ID; an element ID that uniquely identifies the element; and the structure ID of the structure element corresponding to the element; A search condition of a hierarchical structure that accepts input of search conditions for the structured document, analyzes the accepted search conditions, and has hierarchically structured nodes corresponding to the structural elements of the structured document. , Search target Each of the hierarchical structure search condition obtained by the analysis means, the analysis means for obtaining the hierarchical structure search condition including the node that associates the structure ID candidate and the search key for the structure ID candidate. For the node, an acquisition means for acquiring the first feature information associated with the structure ID candidate included in each node from the structure information storage means, and a search condition of the hierarchical structure obtained by the analysis means For each node, the calculation means for calculating the second feature information representing the characteristics of the search key included in each node, and each node of the hierarchical structure search condition obtained by the analysis means are included in each node. Among the candidate structure IDs, the second feature information calculated by the calculation unit for the corresponding search key is the first feature information acquired by the acquisition unit. A deletion unit that deletes the structure ID candidate that does not conform to the structure ID, and the deletion unit corresponds to the structure ID that satisfies the search condition of the hierarchical structure based on the search condition of the hierarchical structure from which the candidate of the structure ID has been deleted. Index search means for searching the document ID and element ID from the index storage means, and search means for searching the structured document corresponding to the document ID searched by the index search means from the structured document storage means And.
また、本発明は、上記装置を実行することができる構造化文書検索方法である。 The present invention is also a structured document search method capable of executing the above apparatus.
本発明によれば、構造化文書の構造要素ごとに対応する要素の特徴を表す特徴情報を格納し、検索時に当該特徴情報を参照して中間候補数を絞り込むことができる。このため、構造化文書に対する高速な全文検索機能を実現することができるという効果を奏する。 According to the present invention, it is possible to store the feature information representing the feature of the corresponding element for each structural element of the structured document, and to narrow down the number of intermediate candidates by referring to the feature information during the search. Therefore, there is an effect that a high-speed full-text search function for the structured document can be realized.
以下に添付図面を参照して、この発明にかかる構造化文書検索装置および構造化文書検索方法の最良な実施の形態を詳細に説明する。 Exemplary embodiments of a structured document search apparatus and a structured document search method according to the present invention will be explained below in detail with reference to the accompanying drawings.
(第1の実施の形態)
第1の実施の形態にかかる構造化文書検索装置は、構造化文書の構造要素ごとに対応する要素の特徴を表す特徴情報を格納し、検索時に当該特徴情報を参照して中間候補数を絞り込むことにより、XQFTのような構造化文書の全文検索機能を高速に実現可能とするものである。
(First embodiment)
The structured document search apparatus according to the first embodiment stores feature information indicating the feature of an element corresponding to each structure element of the structured document, and narrows down the number of intermediate candidates by referring to the feature information at the time of search. Thus, a full-text search function for structured documents such as XQFT can be realized at high speed.
図1は、第1の実施の形態にかかる構造化文書検索装置100の構成を示すブロック図である。同図に示すように、構造化文書検索装置100は、ネットワーク200を介してクライアント300と接続されており、通信部101と、格納処理部110と、検索処理部120と、構造化文書記憶部131と、構造テンプレート記憶部132と、索引記憶部133とを備えている。
FIG. 1 is a block diagram showing a configuration of a structured
クライアント300は、登録する構造化文書(XML文書)や、登録済みの構造化文書を対象とする検索クエリを構造化文書検索装置100に送信し、検索結果を受信するものである。
The
ネットワーク200は、クライアント300と構造化文書検索装置100とを接続するもので、例えば、インターネット、有線LAN(Local Area Network)、無線LANなどのあらゆるネットワーク構成を適用することができる。
The
通信部101は、ネットワーク200を介して、クライアント300から構造化文書、検索クエリを受信し、検索結果をクライアント300に送信するものである。
The
構造化文書記憶部131は、XMLで記述された構造化文書を記憶する記憶部である。ここで、構造化文書の記述形式について説明する。図2は、XMLで記述された構造化文書の一例を示す説明図である。
The structured
同図では、特許に関する情報をXML形式で記述した構造化文書の例が示されている。XMLでは、文書の構造の表現にタグが用いられる。タグには、開始タグと終了タグが存在し、構造化文書の構成要素を開始タグと終了タグで囲むことにより、文書中の文字列(テキスト)の区切りと、そのテキストが構造上いずれの構成要素に属するのかを明確に記述することができる。 In the figure, an example of a structured document in which information related to a patent is described in an XML format is shown. In XML, tags are used to represent the structure of a document. A tag has a start tag and an end tag. By enclosing the components of a structured document with a start tag and an end tag, character strings (text) in the document can be separated and the structure of the text can be any. Can clearly describe whether it belongs to an element.
なお、XMLでは、タグを使って定義したデータの単位を要素という。例えば、<特許>タグと</特許>タグとを含み、両タグで囲まれたデータが1つの要素を構成する。 In XML, data units defined using tags are called elements. For example, data including a <patent> tag and a </ patent> tag, and data surrounded by both tags constitute one element.
また、要素には、省略可能か、繰り返しが可能かなどの付加的な情報を追加するための属性を指定することができる。属性は、開始タグに「<要素名称 属性="属性値">」のような書式で設定する。同図では、“特許”要素の属性として“ID”属性が指定された例が示されている。 Further, an attribute for adding additional information such as whether the element can be omitted or can be repeated can be designated for the element. The attribute is set in a format such as “<element name attribute =“ attribute value ”>” in the start tag. In the figure, an example in which the “ID” attribute is designated as the attribute of the “patent” element is shown.
また、開始タグとは要素名称を記号「<」、「>」で閉じた書式で記載され、終了タグとは要素名称を記号「</」と「>」で閉じた書式で記載される。開始タグと終了タグとの間には、構造化文書の実情報を表すテキスト、または他の要素(子要素)が設定される。「<特許DB></特許DB>」のようにテキストを含まない構成要素は、簡易記法として「<特許DB/>」のように表すこともできる。 The start tag is described in a format in which element names are closed with symbols “<” and “>”, and the end tag is described in a format in which element names are closed with symbols “</” and “>”. Between the start tag and the end tag, text representing actual information of the structured document or other elements (child elements) is set. A component that does not include text such as “<patent DB> </ patent DB>” can also be represented as “<patent DB />” as a simple notation.
同図に示した文書は、「特許」タグから始まる要素を文書ルート(根)とし、その子要素として「タイトル」、「発明者一覧」、「効果」、「キーワードリスト」タグから始まる要素を有する。また、例えば、「タイトル」タグから始まる要素には「構造化文書検索装置」といった、1つのテキスト(文字列)が存在する。 The document shown in the figure has an element starting from a “patent” tag as a document root (root), and its child elements include elements starting from “title”, “inventor list”, “effect”, and “keyword list” tags. . In addition, for example, one element (character string) such as “structured document search device” exists in an element starting from a “title” tag.
なお、このようなXML形式の構造化文書から、各タグの名称や階層関係、繰り返しの個数などを抽出した情報を構造情報という。また、構造化文書の構造情報を構成する論理的な構造の単位を構造要素という。第1の実施の形態では、上述の要素、属性、テキストが構造要素となる。 Note that information obtained by extracting the name, hierarchical relationship, number of repetitions, and the like of each tag from such an XML structured document is referred to as structure information. A logical structural unit constituting the structural information of the structured document is called a structural element. In the first embodiment, the above-described elements, attributes, and text are structural elements.
次に、構造化文書記憶部131に格納された構造化文書のデータ構造について説明する。図3は、構造化文書記憶部131に格納された構造化文書のデータ構造の一例を示す説明図である。
Next, the data structure of the structured document stored in the structured
同図は、図2に示す構造化文書を木構造のデータ構造で表した例を示している。図3では、楕円のノードはフォルダを表すノード、六角形のノードは文書を表すノード、一重線の四角形はタグを表すノード、二重線の四角形は属性を表すノード、角の丸い四角形はテキストを表すノードを意味する。 This figure shows an example in which the structured document shown in FIG. 2 is represented by a tree-structured data structure. In FIG. 3, an ellipse node is a folder node, a hexagon node is a document node, a single-line rectangle is a tag node, a double-line rectangle is an attribute node, and a rounded rectangle is text Means a node representing
例えば、“発明者一覧”タグを表すノード以下の部分木は、“発明者一覧”要素以下の2つの“発明者”要素を含んでいることを表している。 For example, the subtree below the node representing the “inventor list” tag indicates that it includes two “inventor” elements below the “inventor list” element.
構造化文書記憶部131は、このような木構造のデータ構造を表形式で格納する。図4は、表形式で表した構造化文書のデータ構造の一例を示す説明図である。
The structured
同図に示すように、構造化文書記憶部131の構造化文書は、文書IDと、要素IDと、木構造の親子兄弟関係を長男次弟方式で表したときの次弟と長男とを対応づけて格納している。文書IDは、構造化文書を一意に識別するための識別子である。要素IDは、文書IDで識別される構造化文書の木構造の要素(ノード)を一意に識別するための識別子である。
As shown in the figure, the structured document in the structured
例えば、同図の要素ID=3のノードは、図2の“タイトル”タグのノードに対応しており、次弟として図2の“発明者一覧”タグのノード(要素ID=4)、および長男として図2の“テキスト”ノード(要素ID=5)を有することを示している。 For example, the node with the element ID = 3 in the figure corresponds to the node of the “title” tag in FIG. 2, the node of the “inventor list” tag in FIG. 2 (element ID = 4) as the second brother, and The eldest son has the “text” node (element ID = 5) in FIG.
構造テンプレート記憶部132は、上述のようなXML形式の構造化文書から抽出された構造情報を格納するものである。構造テンプレート記憶部132は、構造化文書記憶部131に格納する構造化文書の構造を、構造情報と照合して解析する際に参照される。
The structure
図5は、第1の実施の形態における構造テンプレート記憶部132に格納された構造情報のデータ構造の一例を示す説明図である。同図は、構造情報を木構造で表した例を示している。
FIG. 5 is an explanatory diagram illustrating an example of the data structure of the structure information stored in the structure
同図に示すように、構造情報の木構造は、構造化文書の木構造と同様に、フォルダを表す楕円のノード、文書を表す六角形のノード、タグを表す一重線の四角形のノード、属性を表す二重線の四角形のノード、テキストを表す角の丸い四角形のノードを含んでいる。 As shown in the figure, the tree structure of structure information is similar to the tree structure of structured documents. Ellipse nodes representing folders, hexagonal nodes representing documents, single-line square nodes representing tags, and attributes A double-lined square node representing the text and a rounded-cornered square node representing the text are included.
また、構造情報には、構造情報の各ノードである構造要素を一意に識別するための識別子であるテンプレートID(TID)が付与されている。構造情報は、複数の構造化文書から、構造を表す情報のみを抽出した情報である。したがって、例えば、“発明者”タグのノードのように、構造化文書内では複数設定されうる情報であっても、構造情報上では1つに集約される。 Further, a template ID (TID) that is an identifier for uniquely identifying a structural element that is each node of the structural information is given to the structural information. The structure information is information obtained by extracting only information representing a structure from a plurality of structured documents. Therefore, for example, even information that can be set in a structured document, such as a node of an “inventor” tag, is collected into one on the structure information.
構造テンプレート記憶部132は、このような木構造の構造情報を表形式で格納する。図6は、表形式で表した構造テンプレート記憶部132のデータ構造の一例を示す説明図である。
The structure
同図に示すように、構造テンプレート記憶部132の構造情報は、TIDと、次弟と、長男と、最小語彙IDと、最大語彙IDと、最大テキストサイズとを対応づけて格納している。
As shown in the figure, the structure information in the structure
最小語彙IDおよび最大語彙IDには、TIDで識別される構造要素に対応するテキスト要素内に出現する語彙のうち、それぞれ語彙IDが最小および最大の語彙を設定する。語彙IDとは、索引記憶部133内に格納されている語彙に対し、語彙の出現順に付与された一意に識別するための識別子をいう。索引記憶部133の詳細については後述する。
In the minimum vocabulary ID and the maximum vocabulary ID, the vocabulary having the minimum and maximum vocabulary ID among the vocabulary appearing in the text element corresponding to the structural element identified by the TID is set. The vocabulary ID is an identifier for uniquely identifying the vocabulary stored in the
最大テキストサイズとは、TIDで識別される構造要素に対応するテキスト要素のうち、文字列長が最大のテキスト要素の文字列長の値をいう。 The maximum text size refers to the value of the character string length of the text element having the maximum character string length among the text elements corresponding to the structural element identified by the TID.
このように、構造要素の親子兄弟関係を表す情報(次弟、長男)だけでなく、構造要素に対応するテキスト要素の特徴を表す情報(特徴情報)として最小語彙IDと最大語彙IDと最大テキストサイズとを対応づけて格納することにより、検索時に当該情報を参照して中間候補数を絞り込むことが可能となる。 As described above, not only the information indicating the parent-child relationship of the structural element (second brother and eldest son) but also the information indicating the characteristic of the text element corresponding to the structural element (characteristic information), the minimum vocabulary ID, the maximum vocabulary ID and the maximum text By storing the size in association with each other, it is possible to narrow down the number of intermediate candidates by referring to the information at the time of search.
索引記憶部133は、構造化文書の検索で用いる索引を記憶するものであり、統計情報記憶部133aと、転置ファイル記憶部133bとを備えている。
The
統計情報記憶部133aは、構造化文書記憶部131に格納された各構造化文書内に発生する語彙の統計情報を格納する記憶部である。語彙とは、構造化文書の実情報を表すテキストに含まれる語句を言う。第1の実施の形態では、テキストをNグラム分割した語句を語彙とする。Nグラム分割とは、文字列に含まれるすべての連続するN個の文字を語彙として分割する方法をいう。
The statistical
例えば、文字列“XMLデータベース”をN=3でNグラム分割すると、“XML”、“MLデ”、“Lデー”、“データ”、“ータベ”、“タベー”、“ベース”、“ース”、“ス”の9個の語彙に分割される。 For example, when the character string “XML database” is divided into N grams with N = 3, “XML”, “ML data”, “L data”, “data”, “table”, “tab data”, “base”, “−” It is divided into nine vocabularies, “su” and “su”.
なお、テキストからの語彙の分割方法はこれに限られるものではなく、テキストに含まれる語句を抽出するものであれば、形態素解析で得られる単語を語彙とする方法などのあらゆる方法を適用することができる。 Note that the method of dividing vocabulary from text is not limited to this, and any method can be applied, such as a method that uses words obtained by morphological analysis as vocabulary as long as it can extract words contained in the text. Can do.
図7は、統計情報記憶部133aに格納された統計情報のデータ構造の一例を示す説明図である。同図に示すように、統計情報記憶部133aは、分割された各語彙について、発生順に昇順に付与された識別子である語彙IDと、語彙の全構造化文書内での発生頻度と、転置ファイル番号とを対応づけた統計情報を格納している。
FIG. 7 is an explanatory diagram illustrating an example of a data structure of statistical information stored in the statistical
なお、一般的に出現頻度が高い語彙はいずれの文書内にも存在する可能性が高いことから、語彙IDの値は小さくなる傾向があり、逆に稀少語彙に関しては語彙IDの値は大きくなる傾向がある。 In general, a vocabulary with a high appearance frequency is likely to exist in any document, so the value of the vocabulary ID tends to be small. Conversely, for a rare vocabulary, the value of the vocabulary ID is large. Tend.
また、転置ファイル番号とは、後述する転置ファイル記憶部133bに記憶された転置ファイルを一意に識別するための番号をいう。なお、統計情報記憶部133aに格納された語彙の統計情報と、転置ファイルとにより構造化文書の検索を高速化するための索引が構成される。
The inverted file number is a number for uniquely identifying an inverted file stored in an inverted
転置ファイル記憶部133bは、構造化文書の検索処理を高速化するための索引の一部を構成する転置ファイルを格納する記憶部である。図8は、転置ファイル記憶部133bに格納された転置ファイルのデータ構造の一例を示す説明図である。
The transposed
同図は、統計情報記憶部133aに格納された、ある語彙に対応する1つの転置ファイルのデータ構造を表している。実際には、語彙ごとに同図のような構造の転置ファイルが作成され、転置ファイル記憶部133bに格納される。
This figure shows the data structure of one transposed file corresponding to a certain vocabulary stored in the statistical
同図に示すように、転置ファイル記憶部133bの転置ファイルは、TIDと、文書IDと、要素IDと、発生位置とを対応づけた語彙索引情報を格納している。
As shown in the figure, the transposed file in the transposed
発生位置とは、当該転置ファイルに対応する語彙が、文書IDと要素IDとで識別される構造化文書の要素内で出現する位置を表す情報である。 The occurrence position is information indicating a position where the vocabulary corresponding to the transposed file appears in the element of the structured document identified by the document ID and the element ID.
格納処理部110は、クライアント300から受信した構造化文書を構造化文書記憶部131に格納する処理を実行するもので、構造情報抽出部111と、構造テンプレート決定部112と、索引登録部113と、統計情報更新部114と、文書登録部115とを備えている。
The
構造情報抽出部111は、通信部101がクライアント300から受信した構造化文書から構造情報を抽出するものである。具体的には、構造情報抽出部111は、受信した構造化文書を構文解析してDOMのような木構造の形式に展開し、木構造の各ノードを構造情報として抽出する。展開した木構造の各ノードは、後述する文書登録部115により構造化文書記憶部131に記憶される。なお、文書ID、要素IDは、構造情報抽出部111が構造情報を抽出した際に付与される。
The structure
構造テンプレート決定部112は、構造情報抽出部111が抽出した構造情報を参照し、構造テンプレート記憶部132に記憶された構造情報と照合することにより、展開した木構造の構造化文書の各ノードに対応するTIDを決定するものである。また、構造テンプレート決定部112は、構造テンプレート記憶部132に既に記憶されている構造情報に含まれない新規の構造情報を構造情報抽出部111が抽出した場合は、当該新規構造情報を構造テンプレート記憶部132に格納する。
The structure
索引登録部113は、クライアント300から受信した構造化文書に含まれるテキスト要素に対する語彙索引情報を作成し、転置ファイル記憶部133bに登録するものである。
The
具体的には、索引登録部113は、テキスト要素の文字列をNグラム分割して得られた語彙に対応する転置ファイル内に、構造テンプレート決定部112で決定または算出されたTID、文書ID、要素ID、および発生位置を対応づけた語彙索引情報を新たに転置ファイルに追加する。
Specifically, the
統計情報更新部114は、クライアント300から受信した構造化文書に含まれるテキスト要素から抽出した語彙の統計情報を統計情報記憶部133aに登録するものである。
The statistical
具体的には、統計情報更新部114は、テキスト要素の文字列をNグラム分割して得られた語彙に対応する統計情報記憶部133a内の統計情報を更新する。なお、新規の語彙が抽出された場合は、当該新規の語彙を統計情報記憶部133aの統計情報に追加する。
Specifically, the statistical
また、統計情報更新部114は、構造テンプレート記憶部132内の最小語彙ID、最大語彙ID、最大テキストサイズの更新が必要な場合に、それらの値を更新する処理を行う。例えば、図6のような構造情報が構造テンプレート記憶部132に登録されている場合に、TID=4の構造要素に対応するテキスト要素として最大語彙ID=522の語彙が出現した場合、最大語彙IDを522に更新する。
Further, the statistical
文書登録部115は、構造情報抽出部111が木構造に展開した各ノードに対して、親子兄弟関係を付加し、構造化文書記憶部131に格納するものである。
The
検索処理部120は、クライアント300から受信した検索クエリに従い、構造化文書記憶部131から構造化文書を検索する処理を実行するもので、クエリ解析部121と、制約付加部122と、クエリプランニング部123と、クエリ実行部124とを備えている。
The
検索処理部120の処理は、原則として特許文献1の方法により実行される。以下では、検索処理のうち、語彙索引の処理に関する部分について詳細に説明するが、実際の処理では、語彙索引の処理以外にもさまざまな処理が実行される。
The processing of the
なお、特許文献1の方法では、制約従属型のプラン作成方法に準じ、問合せ言語を解析した内部形式から、階層構造の検索条件であるクエリグラフを作成する。そして、作成したクエリグラフに含まれる全ての変数の具体化を目標として、テーブルと呼ばれる変数集合の取り得る値(候補集合)の組み合わせを表すデータを順次生成する。ここで、1つのテーブルを生成する処理単位をオペレータと呼ぶ。各オペレータの結果は、候補集合として記憶部に保存される。
In the method of
クエリ解析部121は、通信部101がクライアント300から受信した検索クエリを構文解析し、解析結果としてクエリグラフを作成するものである。クエリグラフの作成は、特許文献1に記載の方法など従来から用いられているあらゆる方法を適用することができる。
The
図9は、検索クエリの一例を示す説明図である。同図に示すクエリは、「タイトル要素に“構造化文書”および“XML”を含み、ID=3である“特許”文書を取得し、“<検索結果>”タグで囲った検索結果データを出力する検索条件を表している。 FIG. 9 is an explanatory diagram illustrating an example of a search query. The query shown in the figure is obtained by acquiring “patent” document including “structured document” and “XML” in the title element and ID = 3, and retrieving the search result data surrounded by “<search result>” tags. Represents search conditions to be output.
図10は、クエリグラフの一例を示す説明図である。同図のクエリグラフは、図9の検索クエリをクエリ解析部121が解析して作成したクエリグラフである。
FIG. 10 is an explanatory diagram illustrating an example of a query graph. The query graph in the figure is a query graph created by the
図10に示すように、クエリグラフは構造情報の各構造要素に対応したノードを含む木構造で表される。例えば、図10のクエリグラフのノード2は、「特許」文書の構造要素が対応することを示している。また、例えば、ノード3はタイトルタグが、ノード4はタイトルタグ下のテキスト要素が対応することを示している。
As shown in FIG. 10, the query graph is represented by a tree structure including nodes corresponding to each structural element of the structural information. For example,
構造要素に対する検索条件(以下、検索キー)が存在する場合は、当該検索キーを、検索キーの検索対象となる構造要素に対応するノードに対応づける。例えば、図10では、ノード4に対応するタイトルタグ下のテキスト要素に対して検索キーとして「ftcontains “構造化文書” && “XML”」が対応づけられている。
When there is a search condition (hereinafter referred to as a search key) for a structural element, the search key is associated with a node corresponding to the structural element to be searched for the search key. For example, in FIG. 10, “ftcontains“ structured document ”&&“ XML ”” is associated with the text element under the title tag corresponding to the
制約付加部122は、クエリ解析部121が作成したクエリグラフにおけるノード間の制約関係を求め、当該制約を満たす構造要素の候補を取得してクエリグラフに付加するものである。なお、このような構造要素の候補が中間候補の1つに相当する。
The
制約としては、候補となる構造要素が相互に満たさなければならない構造に関する制約(以下、構造制約という。)、語彙に関する制約(以下、語彙制約という。)が存在する。 As constraints, there are constraints on structures (hereinafter referred to as structure constraints) that must be satisfied by candidate structural elements, and constraints on vocabularies (hereinafter referred to as vocabulary constraints).
構造制約とは、テキスト全体が対応するノードレベルの情報により設定される制約をいう。例えば、クエリグラフのノード4はタイトルタグ下のテキスト要素でなければならないといった制約が構造制約に該当する。この場合、ノード4には、対応する構造要素の候補として、TID=7の構造要素が取得される。なお、構造情報は、図5、図6に示すような内容が格納されていることを前提とする。同様に、ノード2に対してはTID=4の構造要素が、ノード6に対してはTID=5の構造要素が候補として取得される。
The structure constraint is a constraint set by node level information corresponding to the entire text. For example, a constraint that the
この他、制約付加部122は、ある2つの構造要素は同一文書内に存在するといった制約(以下、同一文書制約という。)を構造制約とすることもできる。
In addition, the
語彙制約とは、テキストの語彙レベルの情報により設定される制約をいう。例えば、TID=7のノードに対応する語彙は、語彙IDが最小語彙ID=21から最大語彙ID=1045の間に存在しなければならないといった制約が語彙制約に該当する。なお、最小語彙ID、最大語彙IDは、図6に示すようなノードごとの特徴情報を含む構造テンプレート記憶部132から取得できる。
Vocabulary constraints are constraints set by vocabulary level information of text. For example, a vocabulary corresponding to a node with TID = 7 corresponds to a vocabulary constraint in which a vocabulary ID must exist between a minimum vocabulary ID = 21 and a maximum vocabulary ID = 1045. The minimum vocabulary ID and the maximum vocabulary ID can be acquired from the structure
また、制約付加部122は、近傍検索などの語彙の出現位置を条件とした制約を語彙制約とすることもできる。
In addition, the
制約付加部122は、図1に示すように、特徴情報取得部122aと、特徴情報算出部122bと、TID候補削除部122cとを備えている。
As shown in FIG. 1, the
特徴情報取得部122aは、クエリグラフの各ノードに含まれるTIDの候補に対応づけられた特徴情報である最小語彙IDおよび最大語彙IDを構造テンプレート記憶部132から取得するものである。
The feature
特徴情報算出部122bは、クエリグラフの各ノードに含まれる検索キーの特徴を表す特徴情報を算出するものである。具体的には、特徴情報算出部122bは、検索キーをNグラム分割した結果の語彙を検索キーの特徴情報として算出する。
The feature
TID候補削除部122cは、クエリグラフの各ノードに含まれるTIDの候補から、特徴情報算出部122bが算出した特徴情報である検索キーを分割した語彙の語彙IDが、特徴情報取得部122aが取得した最小語彙IDおよび最大語彙IDの範囲外となる候補を削除するものである。
The TID
クエリプランニング部123は、クエリ解析部121で求めたクエリグラフと、制約付加部122で付加した制約関係を満たす構造要素の候補の情報とを参照し、処理コストが最小になるようなプラン(処理順序)を作成するものである。プランの作成方法としては、特許文献1に記載の方法など従来から用いられているあらゆる方法を適用することができる。なお、Nグラム方式では、グラムレベルでその処理順序を決定するために、グラムごとのコストと、検索語彙全体のコストとが分けて計算される。
The
図11、図12は、処理コスト計算で用いられる語彙の頻度情報の一例を示した説明図である。図11、図12は、単純に語彙の頻度によって処理コストを計算する場合の例を示している。 11 and 12 are explanatory diagrams showing an example of vocabulary frequency information used in processing cost calculation. FIGS. 11 and 12 show an example in which the processing cost is simply calculated based on the vocabulary frequency.
検索結果の候補を早期に絞り込むため、クエリプランニング部123は、原則として頻度が小さい語彙から検索を実行するようなプランを作成する。例えば、テキスト“構造化文書”から抽出された語彙の頻度が、図11に示すような値であった場合、最も頻度の小さい(30)語彙である“造化”から検索を実行するプランが作成される。
In order to narrow down search result candidates at an early stage, the
なお、同一テキスト内の語彙を連続して検索する必要はない。例えば、図12に示すようなテキスト“XML”から抽出された語彙の頻度と、図11に示すような語彙の頻度とから、“造化”、“化文”、“L”の順に処理するようなプランを作成してもよい。 It is not necessary to search continuously for vocabulary in the same text. For example, the vocabulary frequency extracted from the text “XML” as shown in FIG. 12 and the vocabulary frequency as shown in FIG. 11 are processed in the order of “structured”, “chemical sentence”, and “L”. You may make a plan.
また、あるオペレータを実行することで新たに制約が付加される場合もあるが、Nグラム方式で分割して得た索引の場合は、1つでも条件を満たさない語彙が存在する場合は、その時点で以後の処理が中断される。 In addition, a new constraint may be added by executing a certain operator, but in the case of an index obtained by dividing it by the N-gram method, if any vocabulary that does not satisfy the condition exists, At that point, subsequent processing is interrupted.
クエリ実行部124は、クエリプランニング部123が作成したプランに従ってクエリを実行するものであり、索引検索部124aと、検索部124bとを備えている。
The
索引検索部124aは、語彙索引の処理を行う語彙索引処理オペレータを実行するものである。 The index search unit 124a executes a vocabulary index processing operator that performs lexical index processing.
検索部124bは、残りのオペレータを実行することにより、検索条件を満たす構造化文書を検索するものである。 The search unit 124b searches for structured documents that satisfy the search conditions by executing the remaining operators.
次に、このように構成された第1の実施の形態にかかる構造化文書検索装置100による構造化文書格納処理について説明する。図13は、第1の実施の形態における構造化文書格納処理の全体の流れを示すフローチャートである。
Next, a structured document storage process performed by the structured
まず、通信部101が、クライアント300から入力データであるXML文書を受信する(ステップS1301)
First, the
次に、構造情報抽出部111が、入力データを構文解析して木構造の形式に展開し、展開した木構造から構造要素を抽出する(ステップS1302)。
Next, the structure
次に、構造テンプレート決定部112が、木構造と構造テンプレート記憶部132に格納された構造情報とを参照して、木構造の各ノードに対応する構造要素のID(TID)を決定する構造テンプレート決定処理を実行する(ステップS1303)。構造テンプレート決定処理の詳細については後述する。
Next, the structure
次に、索引登録部113が、語彙索引情報を生成し、転置ファイル記憶部133bに登録する(ステップS1304)。転置ファイルに登録する語彙索引情報に必要なTID、文書ID、要素ID、および発生位置の情報は、構造テンプレート決定処理で取得または算出される。
Next, the
次に、統計情報更新部114が、統計情報記憶部133aの統計情報を更新する(ステップS1305)。具体的には、統計情報更新部114は、テキスト要素の文字列をNグラム分割して得られた語彙について、統計情報記憶部133aの統計情報の頻度の値を、テキスト要素内での出現回数分加算した値に更新する。
Next, the statistical
また、統計情報更新部114は、構造テンプレート決定処理内で算出されたTIDごとの最小語彙ID、最大語彙ID、最大テキストサイズに変更がある場合は、変更後の値で構造テンプレート記憶部132の特徴情報(最小語彙ID、最大語彙ID)を更新する。
Further, when there is a change in the minimum vocabulary ID, the maximum vocabulary ID, and the maximum text size for each TID calculated in the structure template determination process, the statistical
次に、文書登録部115が、木構造の各ノードに対して、親子兄弟関係を付加し、表形式で表した構造化文書を構造化文書記憶部131に登録する(ステップS1306)。例えば、図2のようなXML文書を入力し、構造情報抽出部111により図3に示すような木構造が得られた場合、図4のような情報により木構造を表形式で表した構造化文書が登録される。
Next, the
以上が、構造化文書格納処理の全体の流れである。次に、ステップS1303の構造テンプレート決定処理について説明する。図14は、第1の実施の形態における構造テンプレート決定処理の全体の流れを示すフローチャートである。 The above is the overall flow of the structured document storage process. Next, the structure template determination process in step S1303 will be described. FIG. 14 is a flowchart illustrating an overall flow of the structure template determination process according to the first embodiment.
まず、構造テンプレート決定部112は、構造情報抽出部111が抽出した構造要素のうち、テキスト要素に対応する構造要素について、当該テキスト要素に対する語彙分割を実行する(ステップS1401)。語彙分割方法としては、Nグラム方式の分割方法を採用する。
First, the structure
次に、構造テンプレート決定部112は、分割した語彙から重複した語彙を削除し、新規の語彙に対しては語彙IDを付加する(ステップS1402)。なお、既存の語彙の場合は、統計情報記憶部133aから語彙IDを取得する。また、語彙の発生回数は、後に統計情報記憶部133aの頻度を更新する際に利用するのでRAM(Random Access Memory)などの記憶部(図示せず)に記憶しておく。
Next, the structure
次に、構造テンプレート決定部112は、構造テンプレート記憶部132に記憶するTIDごとの特徴情報(最大語彙ID、最小語彙ID、最大テキストサイズ)を算出する(ステップS1403)。具体的には、構造テンプレート決定部112は、ステップS1402で付加または取得した語彙IDのうち、最大値を最大語彙IDとし、最小値を最小語彙IDとして算出する。また、対応するテキスト要素の文字列長を最大テキストサイズとして算出する。
Next, the structure
次に、構造テンプレート決定部112は、構造テンプレート記憶部132を参照し、展開した木構造の構造要素から1つの構造要素を取得し、木構造の構造制約に合致する構造要素を取得する(ステップS1404)。
Next, the structural
次に、構造テンプレート決定部112は、合致する構造要素が取得されたか否かを判断し(ステップS1405)、取得されなかった場合は(ステップS1405:NO)、新規に構造要素を作成する(ステップS1406)。
Next, the structure
次に、構造テンプレート決定部112は、作成した構造要素のTIDを、現在処理している木構造の構造要素に該当するTIDとして設定する(ステップS1407)。
Next, the structure
ステップS1405で、合致する構造要素が取得された場合は(ステップS1405:YES)、構造テンプレート決定部112は、取得した構造要素のTIDを、現在処理している木構造の構造要素に該当するTIDとして設定する(ステップS1408)。
If a matching structural element is acquired in step S1405 (step S1405: YES), the structural
次に、構造テンプレート決定部112は、すべての木構造の構造要素を処理したか否かを判断し(ステップS1409)、すべての構造要素を処理していない場合は(ステップS1409:NO)、次の構造要素について処理を繰り返す(ステップS1404)。
Next, the structure
すべての構造要素を処理した場合は(ステップS1409:YES)、構造テンプレート決定処理を終了する。 If all the structural elements have been processed (step S1409: YES), the structural template determination process ends.
次に、このように構成された第1の実施の形態にかかる構造化文書検索装置100による構造化文書検索処理について説明する。図15は、第1の実施の形態における構造化文書検索処理の全体の流れを示すフローチャートである。
Next, a structured document search process performed by the structured
まず、通信部101が、クライアント300から検索クエリを受信する(ステップS1501)。次に、クエリ解析部121が、受信した検索クエリを解析し、クエリグラフを作成する(ステップS1502)。
First, the
次に、制約付加部122が、クエリ解析部121が作成したクエリグラフに対して制約を付加する制約付加処理を実行する(ステップS1503)。制約付加処理の詳細については後述する。
Next, the
次に、クエリプランニング部123が、制約付加部122により制約が付加されたクエリグラフを参照し、処理コストが最小になる検索実行のプランを作成する(ステップS1504)。
Next, the
次に、索引検索部124aが、検索処理のうち、語彙索引に関する処理である転置ファイルスキャン処理を実行する(ステップS1505)。転置ファイルスキャン処理では、付加された制約に従い、検索対象となる索引の候補を絞り込む処理が実行される。転置ファイルスキャン処理の詳細については後述する。 Next, the index search unit 124a executes a transposed file scan process that is a process related to the vocabulary index in the search process (step S1505). In the transposed file scan processing, processing for narrowing down index candidates to be searched is executed according to the added constraint. Details of the transposed file scanning process will be described later.
次に、検索部124bが、検索処理のうち、転置ファイルスキャン処理以外の残りのプランに該当する処理を実行し、検索条件を満たす構造化文書を検索する(ステップS1506)。 Next, the search unit 124b executes a process corresponding to the remaining plan other than the transposed file scan process in the search process, and searches for a structured document that satisfies the search condition (step S1506).
次に、通信部101が、検索結果である構造化文書をクライアント300に送信し(ステップS1507)、構造化文書検索処理を終了する。
Next, the
次に、ステップS1503の制約付加処理の詳細について説明する。図16は、第1の実施の形態における制約付加処理の全体の流れを示すフローチャートである。 Next, details of the constraint addition processing in step S1503 will be described. FIG. 16 is a flowchart showing an overall flow of the constraint addition processing in the first embodiment.
まず、制約付加部122は、クエリグラフの各ノードの構造制約を満たすTIDの候補の集合(以下、TID候補集合という。)を取得する(ステップS1601)。例えば、図10に示すようなクエリグラフのノード4に対しては、タイトルタグの下のテキスト要素であることから、図5に示すような構造情報のTID7が候補として取得できる。
First, the
なお、ステップS1601の処理により、構造制約を満たすTIDの候補が取得できる。以下のステップS1602からステップS1610では、TIDの候補から語彙制約を満たさない候補を削除する処理を行う。 Note that TID candidates satisfying the structural constraints can be acquired by the processing in step S1601. In steps S1602 to S1610 below, processing is performed to delete candidates that do not satisfy the lexical constraints from the TID candidates.
次に、制約付加部122は、未処理のノードに対するTID候補集合Piを取得する(ステップS1602)。この際、特徴情報取得部122aが、各TIDの候補に対応づけられた最小語彙IDおよび最大語彙IDを構造テンプレート記憶部132から取得しておく。
Next, the
次に、特徴情報算出部122bは、Piに対応する検索キーの語彙を分割する(ステップS1603)。例えば、図10のクエリグラフのノード4に対しては、「ftcontains “構造化文書” && “XML”」という検索キーが対応づけられている。このため、制約付加部122は、“構造化文書”および“XML”をそれぞれ語彙分割する。語彙分割は、上述のようなNグラム分割による方法で行う。
Next, the feature
次に、制約付加部122は、Piに対応する論理条件を取得する(ステップS1604)。例えば、図10のクエリグラフのノード4の場合は、AND条件(“&&”)が取得される。
Next, the
次に、制約付加部122は、取得した論理条件がAND条件のみか否かを判断する(ステップS1605)。AND条件のみの場合は(ステップS1605:YES)、Piの各TID候補のうち、検索キーから分割した語彙の語彙IDのいずれかが、TIDに対応する最小語彙IDと最大語彙IDとの間の範囲外となるTID候補を取得する(ステップS1606)。
Next, the
例えば、検索キーが“構造化文書”の場合、図11に示すように検索キーから分割した語彙の語彙IDは、22から235の間の値を取る。このため、例えば、図6に示すような構造情報が設定されていた場合を前提とすると、語彙IDの値は、TID7の最小語彙ID(=21)と最大語彙ID(=1045)との範囲内に収まる。したがって、TID7は本ステップでは取得されない。一方、TID6については、最小語彙ID(=25)と最大語彙ID(=103)との範囲外となる語彙IDが存在する(語彙ID=22,178,235)。このため、本ステップではTID6が該当するTID候補として取得される。 For example, when the search key is “structured document”, the vocabulary ID of the vocabulary divided from the search key takes a value between 22 and 235 as shown in FIG. Therefore, for example, assuming that the structure information shown in FIG. 6 is set, the value of the vocabulary ID is a range between the minimum vocabulary ID (= 21) and the maximum vocabulary ID (= 1045) of TID7. Fits within. Therefore, TID7 is not acquired in this step. On the other hand, for TID6, there is a vocabulary ID that is outside the range of the minimum vocabulary ID (= 25) and the maximum vocabulary ID (= 103) (vocabulary ID = 22, 178, 235). For this reason, TID6 is acquired as a corresponding TID candidate in this step.
ステップS1605で、AND条件のみでないと判断した場合は(ステップS1605:NO)、制約付加部122は、取得した論理条件がOR条件のみか否かを判断する(ステップS1607)。OR条件のみの場合は(ステップS1607:YES)、Piの各TID候補のうち、検索キーから分割した語彙の語彙IDのすべてが、TIDに対応する最小語彙IDと最大語彙IDとの間の範囲外となるTID候補を取得する(ステップS1608)。
If it is determined in step S1605 that the AND condition is not the only condition (step S1605: NO), the
次に、制約付加部122は、ステップS1606またはステップS1608で、該当するTID候補が取得されたか否かを判断する(ステップS1609)。該当するTID候補が取得された場合は(ステップS1609:YES)、TID候補削除部122cは、Piから該当するTID候補を削除する(ステップS1610)。
Next, the
このようにして、論理条件がAND条件かOR条件かに応じて、TIDの候補を適切に絞り込むことが可能となる。 In this way, TID candidates can be appropriately narrowed down according to whether the logical condition is an AND condition or an OR condition.
ステップS1607で、OR条件のみでないと判断した場合は(ステップS1607:NO)、TID候補の削除処理を行わずにステップS1611以降の位置条件の判定処理を実行する。 If it is determined in step S1607 that only the OR condition is not satisfied (step S1607: NO), the position condition determination process after step S1611 is executed without performing the TID candidate deletion process.
ステップS1610でTID候補を削除した後、または、ステップS1607でOR条件のみでないと判断した場合は、制約付加部122は、Piに対応する検索キーから、近傍検索などの位置に関する条件指定(位置条件)を取得する(ステップS1611)。
After deleting the TID candidate in step S1610, or when it is determined in step S1607 that only the OR condition is not satisfied, the
次に、制約付加部122は、各TID候補が、取得した位置条件を満たすか否かを判断し(ステップS1612)、満たさない場合は(ステップS1612:NO)、該当するTID候補をPiから削除する(ステップS1613)。
Next, the
例えば、「"XML"&&"データベース" distance at most 5」という位置条件が指定されていた場合、少なくとも14(=条件中の文字列の長さ+間隔の値=9+5)文字が、テキスト要素内に存在しなければならない。これに対し、例えば、当該テキスト要素に対応する構造要素のTIDに対応づけられた最大テキストサイズが14未満であれば、位置条件を満たさないとしてPiから削除することができる。 For example, if the position condition "" XML "&&" database "distance at most 5" is specified, at least 14 characters (= length of the character string in the condition + value of the interval = 9 + 5) are included in the text element. Must be present. On the other hand, for example, if the maximum text size associated with the TID of the structural element corresponding to the text element is less than 14, it can be deleted from Pi because the position condition is not satisfied.
なお、最大テキストサイズは、構造テンプレート記憶部132から取得することができる。このようにして、語彙の位置条件に応じてTIDの候補を絞り込むことが可能となる。
The maximum text size can be acquired from the structure
次に、制約付加部122は、すべてのノードを処理したか否かを判断し(ステップS1614)、すべてのノードを処理していない場合は(ステップS1614:NO)、次にノードに対して処理を繰り返す(ステップS1602)。
Next, the
すべてのノードを処理した場合は(ステップS1614:YES)、制約付加部122は、すべてのTID候補集合内のTIDに対して、同一文書内に存在しなければならないTID間の関係を取得し、同一文書制約として付加する(ステップS1615)。
When all the nodes have been processed (step S1614: YES), the
例えば、図10のようなクエリグラフの場合、ノード4およびノード6に対応するTID=7およびTID=5は、それぞれ「特許」文書(TID=4)内に存在しなければならないため、同一文書制約が付加される。なお、以下では、同一文書制約を「TID7<−>TID5」のような形式で記述する。
For example, in the case of the query graph as shown in FIG. 10, TID = 7 and TID = 5 corresponding to the
このように、制約付加処理では、構造制約だけでなく、構造化文書の登録時に格納されたテキスト要素の語彙の特徴を表す特徴情報で表される語彙制約により、中間候補であるTIDの候補数を絞り込むことができる。このため、構造化文書に対する高速な全文検索機能を実現することができる。 As described above, in the constraint addition process, the number of TID candidates that are intermediate candidates is determined not only by the structure constraint but also by the vocabulary constraint represented by the feature information representing the vocabulary feature of the text element stored when the structured document is registered. Can be narrowed down. Therefore, a high-speed full-text search function for structured documents can be realized.
次に、ステップS1505の転置ファイルスキャン処理の詳細について説明する。図17は、第1の実施の形態における転置ファイルスキャン処理の全体の流れを示すフローチャートである。 Next, details of the transposed file scanning process in step S1505 will be described. FIG. 17 is a flowchart illustrating an overall flow of the transposed file scan process according to the first embodiment.
まず、索引検索部124aは、制約付加部122により付加された構造制約Tと、検索キーから分割した語彙(以下、検索語彙という。)の語彙IDの集合Gとを取得する(ステップS1701)。
First, the index search unit 124a acquires the structural constraint T added by the
次に、索引検索部124aは、クエリプランニング部123が作成したプランに従い、クエリを実行するノードを取得する(ステップS1702)。例えば、最初の処理では、頻度が最も小さい検索語彙に対応するノードを取得する。 Next, the index search unit 124a acquires a node that executes the query according to the plan created by the query planning unit 123 (step S1702). For example, in the first process, the node corresponding to the search vocabulary with the lowest frequency is acquired.
次に、索引検索部124aは、検索語彙に対応する転置ファイルを、転置ファイル記憶部133bから取得する(ステップS1703)。具体的には、検索語彙の語彙IDに対応する転置ファイル番号を統計情報記憶部133aから取得し、取得した転置ファイル番号で識別される転置ファイルを、転置ファイル記憶部133bから取得する。
Next, the index search unit 124a acquires the transposed file corresponding to the search vocabulary from the transposed
次に、索引検索部124aは、転置ファイルから語彙索引情報を取り出す(ステップS1704)。次に、索引検索部124aは、語彙索引情報のTIDが、構造制約Tに含まれるか否かを判断する(ステップS1705)。 Next, the index search unit 124a extracts lexical index information from the transposed file (step S1704). Next, the index search unit 124a determines whether or not the TID of the lexical index information is included in the structure constraint T (step S1705).
構造制約Tに含まれる場合は(ステップS1705:YES)、索引検索部124aは、現在の語彙索引情報を索引の候補集合に追加する(ステップS1706)。 When included in the structure constraint T (step S1705: YES), the index search unit 124a adds the current lexical index information to the index candidate set (step S1706).
ステップS1706で候補集合に追加した後、または、ステップS1705で、語彙索引情報のTIDが構造制約Tに含まれないと判断した場合は(ステップS1705:NO)、索引検索部124aは、すべての語彙索引情報を処理したか否かを判断する(ステップS1707)。 After adding to the candidate set in step S1706 or in step S1705, when it is determined that the TID of the lexical index information is not included in the structure constraint T (step S1705: NO), the index search unit 124a selects all vocabularies. It is determined whether index information has been processed (step S1707).
すべての語彙索引情報を処理していない場合は(ステップS1707:NO)、転置ファイルから次の語彙索引情報を取得して処理を繰り返す(ステップS1704)。 If all lexical index information has not been processed (step S1707: NO), the next lexical index information is acquired from the transposed file and the process is repeated (step S1704).
すべての語彙索引情報を処理した場合は(ステップS1707:YES)、索引検索部124aは、すべての検索語彙を処理したか否かを判断する(ステップS1708)。すべての検索語彙を処理していない場合は(ステップS1708:NO)、次の検索語彙に対して処理を繰り返す(ステップS1703)。 If all vocabulary index information has been processed (step S1707: YES), the index search unit 124a determines whether all search vocabularies have been processed (step S1708). If not all the search vocabularies have been processed (step S1708: NO), the process is repeated for the next search vocabulary (step S1703).
すべての検索語彙を処理した場合は(ステップS1708:YES)、索引検索部124aは、すべてのノードを処理したか否かを判断する(ステップS1709)。すべてのノードを処理していない場合は(ステップS1709:NO)、次のノードを取得して処理を繰り返す(ステップS1702)。 If all search vocabularies have been processed (step S1708: YES), the index search unit 124a determines whether all nodes have been processed (step S1709). If all the nodes have not been processed (step S1709: NO), the next node is acquired and the process is repeated (step S1702).
すべてのノードを処理した場合は(ステップS1709:YES)、転置ファイルスキャン処理を終了する。 If all nodes have been processed (step S1709: YES), the transposed file scan process is terminated.
なお、上述のような処理で得られた索引の候補集合に含まれるTIDから、重複を排除してTID集合が作成され、作成されたTID集合は次のオペレータ処理を実行する際の新たな制約条件として利用される。 A TID set is created by eliminating duplication from the TIDs included in the index candidate set obtained by the above-described processing, and the created TID set is a new restriction when executing the next operator processing. Used as a condition.
次に、第1の実施の形態にかかる構造化文書検索装置100による構造化文書検索処理の具体例について説明する。図18は、構造テンプレート記憶部132に記憶されている構造情報の一例を示す説明図である。また、図19は、入力された検索クエリの一例を示す説明図である。
Next, a specific example of structured document search processing by the structured
以下では、図6および図18に示すような構造情報が構造テンプレート記憶部132に記憶されており、図19に示すような検索クエリが入力された場合の構造化文書検索処理について説明する。
Hereinafter, the structured document search process when the structure information as shown in FIGS. 6 and 18 is stored in the structure
図19に示す検索クエリは、XQFTの言語規格に従い記述されたクエリである。また、本クエリは、“「タイトル」要素の候補として、「構造化文書」かつ「XML」を含み、かつ両者が2文字以内の距離に存在するという制約を満たし、さらに「発明者」要素に「田中」を含む特許文書を検索せよ”、という検索条件を意味する。 The search query shown in FIG. 19 is a query described in accordance with the XQFT language standard. In addition, this query satisfies the restriction that “structured document” and “XML” are included as candidates for the “title” element, and both exist within a distance of two characters or less, and the “inventor” element This means that the search condition is “search for patent documents including“ Tanaka ””.
図20は、検索クエリを解析した結果であるクエリグラフの一例を示す説明図である。同図は、図19の検索クエリを解析した結果のクエリグラフを表す。構造制約としては、以下に示すような4つの制約(A1〜A4)が付加される。
A1:ノード6(TID11、TID19)→田中
A2:ノード4(TID6、TID7、TID15)→XML
A3:ノード4(TID6、TID7、TID15)→構造化文書
A4:ノード4とノード6は同一文書制約を満たす
FIG. 20 is an explanatory diagram illustrating an example of a query graph that is a result of analyzing a search query. The figure shows a query graph as a result of analyzing the search query of FIG. As the structural constraints, the following four constraints (A1 to A4) are added.
A1: Node 6 (TID11, TID19) → Tanaka A2: Node 4 (TID6, TID7, TID15) → XML
A3: Node 4 (TID6, TID7, TID15) → structured document A4:
なお、例えば、“ノード6(TID11、TID19)→田中”とは、ノード6は構造要素の候補がTID11またはTID19でなければならないこと、および、対応するテキストの検索キーとして「田中」が設定されていることを表している。
For example, “Node 6 (TID11, TID19) → Tanaka” means that
また、A4は同一文書制約の構造制約を表し、例えば、ノード4がTID6のときは、ノード6にはTID11が存在しなければならない制約である。したがって、A4の同一文書制約は、「{TID6、TID7}<−>{TID11}」および「{TID15}<−>{TID19}」と表すこともできる。
A4 represents the structure constraint of the same document constraint. For example, when the
また、語彙制約としては以下に示すような2つの制約(B1、B2)が付加される。
B1:ノード4には、「構造」、「造化」、「化文」、「文書」、「書」、「XML」、「ML」、「L」に対応する語彙IDをすべて含む
B1:ノード6には、「田中」、「中」に対応する語彙IDを含む
In addition, the following two constraints (B1, B2) are added as vocabulary constraints.
B1:
なお、ftcontainsなど部分一致検索の場合は、Nグラム以下の文字列長の語彙に関しては条件に加えないが、ここでは説明の都合上付加している。 In the case of partial match search such as ftcontains, a vocabulary having a character string length of N grams or less is not included in the conditions, but is added here for convenience of explanation.
例えば、検索キー「構造化文書」に対する検索語彙は図11に示すように分割されるため、語彙IDの分布は{22,32,55,178,235}となる。 For example, since the search vocabulary for the search key “structured document” is divided as shown in FIG. 11, the distribution of the vocabulary ID is {22, 32, 55, 178, 235}.
TID6の最小語彙IDは図6より25であり、25より小さい語彙ID(22)が存在するためTID6は候補から削除される(ステップS1609:YES、ステップS1610)。TID7およびTID15は制約を満たすため(ステップS1609:NO)、候補から削除されない。 The minimum vocabulary ID of TID6 is 25 from FIG. 6, and since there is a vocabulary ID (22) smaller than 25, TID6 is deleted from the candidates (step S1609: YES, step S1610). Since TID7 and TID15 satisfy the restriction (step S1609: NO), they are not deleted from the candidates.
同様に、検索キー「XML」に対する検索語彙の語彙IDの分布は{43,58,123}であり、TID7、TID15は制約を満たすため候補から削除されない。 Similarly, the vocabulary ID distribution of the search vocabulary for the search key “XML” is {43, 58, 123}, and TID7 and TID15 are not deleted from the candidates because they satisfy the constraints.
ノード6に対しても同様に検索語彙である「田中」および「中」の語彙IDと、TID11およびTID19に対応する最小語彙IDおよび最大語彙IDとが比較される。ここでは、両者ともに候補として残されたことを前提とする。
Similarly for
また、位置条件による制約として、以下のような制約(C1)が付加される。
C1:ノード4は、「構造化文書」と「XML」とが2文字以上離れた距離に存在する
Moreover, the following restrictions (C1) are added as restrictions by position conditions.
C1:
この場合、ノード4に対応するテキストのテキストサイズとして少なくとも10(=「構造化文書」のサイズ+「XML」のサイズ+2=5+3+2)文字が必要となるため、例えば、対応する最大テキストサイズが10未満であるTID候補が存在すれば、この段階で除外することができる(ステップS1613)。
In this case, since the text size of the text corresponding to the
図21は、このような処理により候補が絞り込まれた状態における、クエリグラフの一例を示す説明図である。図20と比較して、図21では、ノード4に対するTID候補が、TID7、TID15に絞り込まれていることが示されている。
FIG. 21 is an explanatory diagram illustrating an example of a query graph in a state where candidates are narrowed down by such processing. Compared with FIG. 20, FIG. 21 shows that TID candidates for the
このようにして制約付加部122で制約を求めた後、クエリプランニング部123によるクエリプランニング処理が実行される。クエリプランニング部123は、頻度が低い検索語彙を優先的に処理するようなプランを作成する。
In this way, after the constraint is added by the
図22は、検索語彙ごと頻度を示した説明図である。同図に示すように、語彙「田中」に対する頻度が最も低い(20)ので、当該語彙に対応するノードから転置ファイルスキャン処理を実行する(ステップS1702)。 FIG. 22 is an explanatory diagram showing the frequency for each search vocabulary. As shown in the figure, since the frequency for the vocabulary “Tanaka” is the lowest (20), the transposed file scan process is executed from the node corresponding to the vocabulary (step S1702).
このように、第1の実施の形態にかかる構造化文書検索装置では、構造化文書の構造要素ごとに対応する要素の特徴を表す特徴情報を格納し、当該特徴情報を参照して転置ファイルスキャン時に不要な語彙索引情報の読み出し数を早い段階で削減することが可能となる。その結果、語彙の出現位置レベルまで考慮した検索条件による検索時に必要となる候補の結合処理コストを削減することを可能とする。このため、XQFTのような位置情報を指定と構造制約と組み合わせたクエリによる構造化文書の全文検索機能を高速に実行することができる。 As described above, in the structured document search apparatus according to the first embodiment, feature information representing the feature of an element corresponding to each structure element of the structured document is stored, and a transposed file scan is performed with reference to the feature information. It is possible to reduce the number of reading of unnecessary lexical index information at an early stage. As a result, it is possible to reduce the cost of the candidate combination processing required for the search based on the search condition considering the appearance position level of the vocabulary. For this reason, it is possible to execute a full-text search function of a structured document by a query in which position information such as XQFT is combined with designation and structure constraints at high speed.
(第2の実施の形態)
第2の実施の形態にかかる構造化文書検索装置は、語彙索引情報内に、対応するテキスト要素に含まれる語彙の特徴を表す特徴値を格納し、転置ファイルスキャン処理時に参照して候補数を絞り込むことにより、さらに高速な検索を可能とするものである。
(Second Embodiment)
The structured document search apparatus according to the second embodiment stores the feature value representing the vocabulary feature included in the corresponding text element in the vocabulary index information, and refers to the number of candidates by referring to the transposed file scan processing. By narrowing down, a higher-speed search is possible.
第2の実施の形態では、転置ファイル記憶部133bに、テキスト要素に含まれる語彙から算出された特徴値を対応づけた語彙索引情報を含む転置ファイルを格納する点が、第1の実施の形態と異なっている。特徴値は、構造テンプレート決定部112により、構造テンプレート決定処理内で算出される。
In the second embodiment, a transposed file including lexical index information in which feature values calculated from vocabulary included in a text element are associated is stored in the transposed
また、第2の実施の形態では、転置ファイルスキャン処理時に、索引検索部124aが、特徴値を参照して索引の候補を絞り込む点が、第1の実施の形態と異なっている。 Further, the second embodiment is different from the first embodiment in that the index search unit 124a refers to the feature value to narrow down index candidates during the transposed file scan process.
図23は、第2の実施の形態における転置ファイル記憶部133bに格納された転置ファイルのデータ構造の一例を示す説明図である。
FIG. 23 is an explanatory diagram illustrating an example of a data structure of an inverted file stored in the inverted
同図に示すように、転置ファイル記憶部133bの転置ファイルは、TIDと、特徴値と、文書IDと、要素IDと、発生位置とを対応づけた語彙索引情報を格納している。
As shown in the figure, the transposed file of the transposed
特徴値とは、文書IDと要素IDとで識別される構造化文書の要素の特徴を表す情報であり、構造テンプレート決定部112により算出される。
The feature value is information representing the feature of the element of the structured document identified by the document ID and the element ID, and is calculated by the structure
第2の実施の形態における構造テンプレート決定部112は、構造化文書のテキスト要素に対する特徴値を算出する処理を行う。特徴値は、テキストに含まれる語彙の語彙IDの最小値および最大値である最小語彙IDおよび最大語彙IDから算出する。具体的には、最小語彙IDと最大語彙IDとを変換係数α(例えば、10)で除算した値を特徴値として算出する。
The structure
例えば、テキストに含まれる語彙の最小語彙IDが22、最大語彙IDが301であった場合、それらをそれぞれα=10で除算した結果である(2、30)が、当該テキストの特徴値として算出される。 For example, when the minimum vocabulary ID of the vocabulary included in the text is 22 and the maximum vocabulary ID is 301, the result of dividing each by α = 10 (2, 30) is calculated as the feature value of the text. Is done.
なお、特徴値の算出方法はこれに限られるものではなく、テキストの特徴を表す情報であればあらゆる方法により算出することができる。例えば、英数字や記号などの文字コード値を利用する方法、予め文字列パターンを複数用意しておき、いずれのパターンに含まれるかをパターン番号によって指定する方法を適用可能である。 Note that the feature value calculation method is not limited to this, and can be calculated by any method as long as the information represents the feature of the text. For example, a method of using character code values such as alphanumeric characters and symbols, or a method of preparing a plurality of character string patterns in advance and designating which pattern is included by a pattern number can be applied.
第2の実施の形態における索引検索部124aは、語彙索引の処理時、特徴値を参照して索引の候補を絞り込む処理を行う。具体的には、索引検索部124aは、検索キーに含まれる語彙の語彙IDに、特徴値算出時と同様の変換処理を行い、候補である語彙索引情報の特徴値の範囲内に変換後の語彙IDの値が含まれない場合に、当該語彙索引情報を索引の候補から除外する。なお、特徴値の範囲とは、例えば特徴値が(2、30)の場合、2以上30以下の範囲をいう。 The index search unit 124a according to the second embodiment performs processing for narrowing down index candidates with reference to feature values when processing a vocabulary index. Specifically, the index search unit 124a performs a conversion process similar to that used when calculating the feature value on the vocabulary ID of the vocabulary included in the search key, and converts the vocabulary ID within the range of the feature value of the candidate vocabulary index information. If the vocabulary ID value is not included, the lexical index information is excluded from index candidates. Note that the feature value range refers to a range from 2 to 30 when the feature value is (2, 30), for example.
次に、このように構成された第2の実施の形態にかかる構造化文書検索装置による構造テンプレート決定処理について説明する。図24は、第2の実施の形態における構造テンプレート決定処理の全体の流れを示すフローチャートである。 Next, the structure template determination process by the structured document search apparatus according to the second embodiment configured as described above will be described. FIG. 24 is a flowchart illustrating an overall flow of the structure template determination process according to the second embodiment.
第2の実施の形態では、テキスト要素の特徴値を算出する処理がステップS2404に挿入された点が、第1の実施の形態と異なっている。その他の処理は、第1の実施の形態と同様の処理なので、その説明を省略する。 The second embodiment is different from the first embodiment in that the process of calculating the feature value of the text element is inserted in step S2404. The other processes are the same as those in the first embodiment, and a description thereof will be omitted.
ステップS2404では、構造テンプレート決定部112が、ステップS2403で算出した最大語彙ID、最小語彙IDからテキストの特徴値を算出する(ステップS2404)。
In step S2404, the structure
図25は、算出された特徴値を説明するための説明図である。同図は、“XMLデータベース”というテキストについて算出された特徴値を表す図である。 FIG. 25 is an explanatory diagram for explaining the calculated feature values. The figure shows the feature values calculated for the text “XML database”.
なお、同図は説明のために、統計情報記憶部133aの情報の一部(語彙、語彙ID)と、転置ファイル記憶部133bの情報(発生位置、特徴値、文書ID、要素ID、TID)とを対応づけた情報を表している。
For the sake of explanation, this figure shows a part of the information in the statistical
同図に示す例では、語彙“データ”の語彙ID=12が最小語彙IDであり、語彙“タベー”の語彙ID=147が最大語彙IDである。したがって、最小語彙IDおよび最大語彙IDを変換係数α=10で除算して並べた値(1,14)が特徴値として算出されている。 In the example shown in the figure, the vocabulary ID = 12 of the vocabulary “data” is the minimum vocabulary ID, and the vocabulary ID = 147 of the vocabulary “table” is the maximum vocabulary ID. Therefore, a value (1, 14) obtained by dividing the minimum vocabulary ID and the maximum vocabulary ID by dividing by the conversion coefficient α = 10 is calculated as the feature value.
このようにして算出された特徴値は、最終的に転置ファイル記憶部133bの転置ファイル内に格納される。上記例では、文書ID、要素ID、TID、および特徴値が同一で、発生位置が異なる9個の語彙索引情報が、新たに転置ファイルに格納される。
The feature value calculated in this way is finally stored in the transposed file of the transposed
なお、同一テキスト要素内に複数回数発生する語彙に関しては、語彙IDの分布を複数の区間に分割して特徴値を算出するように構成してもよい。図26は、このような構成で算出された特徴値を説明するための説明図である。同図は、“文書と文書の関係”というテキストについて算出された特徴値を表す図である。 For a vocabulary that occurs a plurality of times in the same text element, the feature value may be calculated by dividing the distribution of vocabulary IDs into a plurality of sections. FIG. 26 is an explanatory diagram for explaining the feature values calculated in such a configuration. This figure shows the feature values calculated for the text “Relationship between documents”.
この例では、“文書”という語彙が同一テキスト中に2回発生するので、語彙ID分布(22,22,26,55,103,178,235,301)を2区間(22,22,26,55)および(103,178,235,301)に分割する。そして、分割した区間それぞれで算出した特徴値(2,5)および(10,30)を、それぞれ語彙“文書”に対応づけて格納している。 In this example, since the vocabulary “document” occurs twice in the same text, the lexical ID distribution (22, 22, 26, 55, 103, 178, 235, 301) is divided into two sections (22, 22, 26, 55) and (103, 178, 235, 301). The characteristic values (2, 5) and (10, 30) calculated in each of the divided sections are stored in association with the vocabulary “document”.
この場合は、図25と異なり、語彙“文書”に対しては特徴値が(2,5)または(10,30)、その他の語彙に対しては特徴値が(2,30)である8つの語彙索引情報が転置ファイルに格納される。 In this case, unlike FIG. 25, the feature value is (2, 5) or (10, 30) for the vocabulary “document”, and the feature value is (2, 30) for other vocabularies. One lexical index information is stored in the transposed file.
このように、発生頻度が高く、処理コストが高くなるような語彙に関しては、より詳細な特徴値を付与できるため、特徴値による絞込みの精度が向上するという効果が得られる。 As described above, since a more detailed feature value can be assigned to a vocabulary having a high occurrence frequency and a high processing cost, an effect of improving the accuracy of narrowing down by the feature value can be obtained.
次に、このように構成された第2の実施の形態にかかる構造化文書検索装置による転置ファイルスキャン処理について説明する。図27は、第2の実施の形態における転置ファイルスキャン処理の全体の流れを示すフローチャートである。 Next, a transposed file scan process by the structured document search apparatus according to the second embodiment configured as described above will be described. FIG. 27 is a flowchart illustrating an overall flow of the transposed file scan process according to the second embodiment.
ステップS2701からステップS2705までの、ノード取得処理、転置ファイル取得処理、語彙索引情報取得処理は、第2の実施の形態にかかる構造化文書検索装置におけるステップS1701からステップS1705までと同様の処理なので、その説明を省略する。 The node acquisition process, the transposed file acquisition process, and the vocabulary index information acquisition process from step S2701 to step S2705 are the same processes as steps S1701 to S1705 in the structured document search apparatus according to the second embodiment. The description is omitted.
ステップS2705で、語彙索引情報のTIDが構造制約Tに含まれると判断した場合は(ステップS2705:YES)、索引検索部124aは、語彙索引情報内の特徴値の範囲と比較するため、集合G内の語彙IDの値を変換する(ステップS2706)。具体的には、特徴値を算出する際に用いる変換係数αで、検索語彙の語彙IDの値を除算する。例えば、検索語彙の語彙IDが100であったとすると、変換係数α=10で除算することにより、語彙IDの値が10に変換される。 If it is determined in step S2705 that the TID of the lexical index information is included in the structure constraint T (step S2705: YES), the index search unit 124a compares the feature value range in the lexical index information with the set G The value of the vocabulary ID is converted (step S2706). Specifically, the vocabulary ID value of the search vocabulary is divided by the conversion coefficient α used when calculating the feature value. For example, if the vocabulary ID of the search vocabulary is 100, the value of the vocabulary ID is converted to 10 by dividing by the conversion coefficient α = 10.
次に、索引検索部124aは、語彙索引情報内の特徴値の範囲内に、変換した語彙IDの値が含まれるか否かを判断する(ステップS2707)。例えば、特徴値が(2,5)であり、変換した語彙IDの値が10であった場合は、範囲内(2から5の間)に含まれないと判断する。 Next, the index search unit 124a determines whether or not the converted vocabulary ID value is included in the range of feature values in the vocabulary index information (step S2707). For example, if the feature value is (2, 5) and the converted vocabulary ID value is 10, it is determined that it is not included in the range (between 2 and 5).
語彙索引情報内の特徴値の範囲内に、変換した語彙IDの値が含まれると判断した場合は(ステップS2707:YES)、索引検索部124aは、現在の語彙索引情報を索引の候補集合に追加する(ステップS2708)。 If it is determined that the converted vocabulary ID value is included in the range of feature values in the vocabulary index information (step S2707: YES), the index search unit 124a sets the current vocabulary index information as an index candidate set. It adds (step S2708).
なお、変換処理のコスト、候補件数の関係などを考慮した処理コストに応じて特徴値による判定の可否を決定するように構成してもよいし、特徴値のうちのある1つの値(最小値または最大値)だけを利用するように構成してもよい。 Note that it may be configured to determine whether or not the determination by the feature value is possible according to the processing cost in consideration of the cost of the conversion processing, the relationship between the number of candidates, and the like, or one value (minimum value) of the feature values Alternatively, only the maximum value may be used.
ステップS2709からステップS2711までの、終了判定処理は、第2の実施の形態にかかる構造化文書検索装置におけるステップS1707からステップS1709までと同様の処理なので、その説明を省略する。 Since the end determination process from step S2709 to step S2711 is the same as that from step S1707 to step S1709 in the structured document search apparatus according to the second embodiment, the description thereof is omitted.
このように、転置ファイルスキャン処理では、索引作成時に転置ファイルに登録されたテキストの特徴値を参照し、検索条件に含まれる語彙から算出した特徴値に相当する値が、索引の特徴値に適合しない場合に、当該索引を候補から除外することができる。このため、語彙索引処理時の候補数をさらに絞り込むことができ、構造化文書に対する高速な全文検索機能を実現することができる。 As described above, in the inverted file scan process, the feature value of the text registered in the inverted file is referred to when the index is created, and the value corresponding to the feature value calculated from the vocabulary included in the search condition matches the feature value of the index. If not, the index can be excluded from the candidates. For this reason, the number of candidates at the time of lexical index processing can be further narrowed down, and a high-speed full-text search function for structured documents can be realized.
ここで、転置ファイルスキャン処理で処理されるデータの具体例について説明する。図28は、転置ファイルスキャン処理で処理される候補の一例を示す説明図である。同図は、構造制約Tとして{TID7、TID11}(TID7とTID11が構造制約を満たす構造要素のTIDであることを表す)が取得され、語彙ID集合Gとして{135、292、356}が取得された場合を前提としている(ステップS2701)。 Here, a specific example of data processed in the transposed file scanning process will be described. FIG. 28 is an explanatory diagram of an example of candidates processed in the transposed file scan process. In the figure, {TID7, TID11} (representing that TID7 and TID11 are TIDs of structural elements satisfying the structure constraint) is acquired as the structure constraint T, and {135, 292, 356} is acquired as the vocabulary ID set G. (Step S2701).
なお、検索キーとしては“XML”が指定されたことを前提とする。したがって、語彙ID集合Gは、それぞれ語彙“XML”、語彙“ML”、語彙“L”に対応する語彙IDを含んでいる。 It is assumed that “XML” is designated as the search key. Therefore, the vocabulary ID set G includes vocabulary IDs corresponding to the vocabulary “XML”, the vocabulary “ML”, and the vocabulary “L”, respectively.
さらに、同図では、語彙“XML”に対応する転置ファイルとして5つのTIDの語彙索引情報を含む転置ファイルが転置ファイル記憶部133bに記憶されていることを前提とする。なお、同図では、語彙索引情報のうち、要素IDと発生位置とは省略している。
Further, in the figure, it is assumed that a transposed file including lexical index information of five TIDs is stored in the transposed
上記のような前提では、構造制約条件により、転置ファイルのTIDは3件に絞り込まれる(ステップS2704)。また、集合G内の語彙IDの変換値は、それぞれ13,29,35となるため(ステップS2705)、これらの変換値が特徴値の範囲外となる文書ID=200の語彙索引情報が除外される(ステップS2707)。 Under the premise as described above, the TID of the transposed file is narrowed down to three due to the structure constraint condition (step S2704). Moreover, since the conversion values of the vocabulary IDs in the set G are 13, 29, and 35, respectively (step S2705), the vocabulary index information of document ID = 200 in which these conversion values are out of the feature value range is excluded. (Step S2707).
このように、構造制約のみによれば候補はTID7とTID11であるが、特徴値を参照することにより、TID7に対応する索引のみに候補を絞り込むことができる。 As described above, the candidates are TID7 and TID11 according to the structure constraint alone, but the candidates can be narrowed down to only the index corresponding to TID7 by referring to the feature value.
次に、処理を繰り返すことにより制約がさらに絞り込まれる例について説明する。図29、図30は、転置ファイルスキャン処理で処理される候補の別の一例を示す説明図である。 Next, an example in which the restriction is further narrowed down by repeating the process will be described. 29 and 30 are explanatory diagrams illustrating another example of candidates processed in the transposed file scanning process.
この例では、図18のような構造情報が構造テンプレート記憶部132に記憶されていることを前提とする。
In this example, it is assumed that structure information as illustrated in FIG. 18 is stored in the structure
この状態で、転置ファイル1のスキャンによりTID7、TID15の候補が、TID15の候補のみに絞り込まれ(図29)、次に構造制約{TID11、TID19}を処理すると仮定する(図30)。 In this state, it is assumed that the candidates for TID7 and TID15 are narrowed down to only candidates for TID15 by scanning the transposed file 1 (FIG. 29), and then the structure constraints {TID11, TID19} are processed (FIG. 30).
この場合、TID11とTID19とのうち、図18に示すような構造情報でTID15と同一文書制約を満たすTIDはTID19のみであるので、TID11に関する索引情報は読み出す必要がない(ステップS2705:NO)。したがって、転置ファイル2ではTID19を持つ文書ID=62の語彙索引情報だけを候補とすればよい。
In this case, since
次に、第2の実施の形態にかかる構造化文書検索装置による構造化文書検索処理の具体例について説明する。 Next, a specific example of structured document search processing by the structured document search device according to the second embodiment will be described.
ここでは、第1の実施の形態で図18から図22を用いて説明した構造化文書検索処理の具体例を前提として説明する。すなわち、図18から図22で説明した処理により、図21のようなクエリグラフが生成され、当該クエリグラフ内の検索語彙の頻度が図22のような値を取っていることを前提とする。 Here, a description will be given on the assumption of a specific example of the structured document search processing described with reference to FIGS. 18 to 22 in the first embodiment. That is, it is assumed that a query graph as shown in FIG. 21 is generated by the processing described with reference to FIGS. 18 to 22, and the frequency of the search vocabulary in the query graph has a value as shown in FIG.
図31は、このときの転置ファイルスキャン処理で処理される候補の一例を示す説明図である。索引検索部124aで、[TID11,TID19]を構造制約として転置ファイルスキャン処理を行なった結果、候補集合としてTID11のみが残されたとする。 FIG. 31 is an explanatory diagram showing an example of candidates processed in the transposed file scanning process at this time. Assume that the index search unit 124a performs the transposed file scan process using [TID11, TID19] as a structure constraint, and as a result, only TID11 remains as a candidate set.
TID11の候補は3つ存在するが、文書ID=200の候補については、特徴値の比較により候補から削除される。「田中」の語彙IDが136であるとすると、変換した語彙IDの値は13となり(ステップS1706)、特徴値である80から90の範囲内に含まれないためである。 Although there are three candidates for TID11, the candidate for document ID = 200 is deleted from the candidates by comparison of feature values. If the vocabulary ID of “Tanaka” is 136, the value of the converted vocabulary ID is 13 (step S1706), and is not included in the range of 80 to 90 that is the feature value.
また、構造制約からTID19が除外されていることから、同一文書制約「{TID15}<−>{TID19}」に従い、TID15も候補から除外される。したがって、この後に処理されるノード4では、TID15を除いたTID7のみを構造制約として候補を抽出すればよい。
Since TID19 is excluded from the structure constraint, TID15 is also excluded from the candidates in accordance with the same document constraint “{TID15} <−> {TID19}”. Therefore, in the
図32は、このときの転置ファイルスキャン処理で処理される候補の一例を示す説明図である。 FIG. 32 is an explanatory diagram showing an example of candidates processed in the transposed file scanning process at this time.
ノード4では、最も頻度が低い語彙「造化」に対する処理を実行する。この場合も、特徴値による絞込みにより、結果的に文書ID=43に対応する1件の候補だけが抽出される。「造化」は、「構造化文書」を構成する語彙の1つであるので、この場合は索引から位置情報まで含めた形で残しておき、次の処理に利用する。
The
このように、第2の実施の形態にかかる構造化文書検索装置では、語彙索引情報内にテキスト要素に含まれる語彙の特徴を表す特徴値を格納し、転置ファイルスキャン処理時に参照して候補数を絞り込むことができる。このため、XQFTのような位置情報を指定と構造制約と組み合わせたクエリによる構造化文書の全文検索機能をさらに高速に実行することができる。 As described above, in the structured document search apparatus according to the second embodiment, the feature value representing the feature of the vocabulary included in the text element is stored in the vocabulary index information, and the number of candidates is referred to during the transposed file scanning process. Can be narrowed down. For this reason, the full-text search function of a structured document by a query combining position information such as XQFT with designation and structure constraints can be executed at higher speed.
(第3の実施の形態)
第3の実施の形態にかかる構造化文書検索装置は、構造要素ごとに特徴情報に基づく分割ルールを定め、構造要素に対応する要素の値の特徴情報が分割ルールに適合する場合に、当該構造要素を分割して新たな構造要素を作成して構造テンプレート記憶部132を更新するものである。
(Third embodiment)
The structured document search apparatus according to the third embodiment defines a division rule based on feature information for each structure element, and when the feature information of the element value corresponding to the structure element matches the division rule, The structure
第3の実施の形態では、構造テンプレート記憶部132に構造要素ごとの分割ルールを設定する点が、第2の実施の形態と異なっている。また、構造化文書登録処理時に、構造テンプレート決定部112が、当該分割ルールを参照して構造テンプレート記憶部132に格納されている構造要素を分割して新たな構造要素を作成する点が、第2の実施の形態と異なっている。
The third embodiment is different from the second embodiment in that a division rule for each structural element is set in the structural
図33は、第3の実施の形態における構造テンプレート記憶部132に格納された構造情報のデータ構造の一例を示す説明図である。同図は、構造情報を表形式で表した例を示している。
FIG. 33 is an explanatory diagram illustrating an example of the data structure of the structure information stored in the structure
同図に示すように、第3の実施の形態では、構造情報に、要素内最大発生語彙数と、テキストサイズの閾値を超えた回数と、基準情報と、分割方法とをさらに対応づけて格納している。基準情報と、分割方法とにより分割ルールが指定される。 As shown in the figure, in the third embodiment, the structure information stores the maximum number of generated vocabularies in the element, the number of times that the text size threshold is exceeded, the reference information, and the division method in further correspondence. is doing. A division rule is designated by the reference information and the division method.
要素内最大発生語彙数とは、対応するテキスト要素内に発生する各語彙の出現数のうち最大値をいう。テキストサイズの閾値を超えた回数とは、予め定められたテキストサイズの閾値(例えば、100文字)を超えた回数をいう。 The maximum number of vocabulary generated in an element refers to the maximum value of the number of occurrences of each vocabulary generated in the corresponding text element. The number of times that the text size threshold is exceeded means the number of times that a predetermined text size threshold (for example, 100 characters) is exceeded.
基準情報には、分割の判断に適用する情報を設定する。例えば、構造要素ごとの特徴情報である最小語彙ID、最大語彙ID、最大テキストサイズ、要素内最大発生語彙数、およびテキストサイズの閾値を超えた回数などを設定することができる。また、これ以外に、頻出語彙などを判断基準とすることも可能である。同図では、語彙ID=22または400の頻出語彙を抽出し、基準情報として設定された例が示されている。 In the reference information, information to be applied for division determination is set. For example, the minimum vocabulary ID, the maximum vocabulary ID, the maximum text size, the maximum number of generated vocabularies in the element, the number of times exceeding the threshold of the text size, etc., which are characteristic information for each structural element, can be set. In addition to this, it is also possible to use frequently used vocabulary as a criterion. The figure shows an example in which a frequently used vocabulary with a vocabulary ID = 22 or 400 is extracted and set as reference information.
また、分割条件には、基準情報に設定された情報が満たす条件を設定する。基準情報に設定された情報が分割条件を満たした場合に、対応する構造要素を分割する。同図では、頻出語彙として定められた語彙ID=22または400の語彙の出現回数が予め定められた閾値である30を超えたことが分割条件として設定された例が示されている。 In addition, a condition that the information set in the reference information satisfies is set as the division condition. When the information set in the reference information satisfies the division condition, the corresponding structural element is divided. The figure shows an example in which the division condition is set such that the number of occurrences of the vocabulary with the vocabulary ID = 22 or 400 defined as the frequent vocabulary exceeds a predetermined threshold of 30.
なお、基準情報は、処理負荷を低減するため、計算量が小さい特徴情報を用いるのが望ましい。また、初期段階では基準情報や分割条件を設定しないように構成してもよいし、デフォルトの値を設定するように構成してもよい。 Note that it is desirable to use feature information with a small calculation amount as the reference information in order to reduce the processing load. Further, in the initial stage, it may be configured not to set the reference information or the division condition, or may be configured to set a default value.
この他、例えば、テキストサイズの閾値(100)を超えた回数を基準情報とし、当該回数が10を超えたことを分割条件として構造要素を分割するように構成してもよい。この場合、分割の方法としては、例えば、テキストサイズが100以上のテキスト要素と、テキストサイズが99以下のテキスト要素とを分離するように2つの構造要素に分割する方法を適用する。 In addition to this, for example, the number of times that the text size threshold (100) is exceeded may be used as the reference information, and the structural element may be divided on the basis of the number of times that the number exceeds 10 as a division condition. In this case, as a division method, for example, a method of dividing a text element having a text size of 100 or more and a text element having a text size of 99 or less into two structural elements is applied.
このように、例えば、ある語彙が同一テキスト要素内で発生する回数が多い場合は、クエリ処理で性能劣化を招く可能性があると判断して、登録時に事前に構造テンプレートの構造要素を分割することができる。このため、転置ファイルスキャン処理の段階で候補を早期に絞り込むことが可能となる。 In this way, for example, when a certain vocabulary occurs frequently in the same text element, it is determined that there is a possibility of causing performance degradation in the query processing, and the structural element of the structural template is divided in advance at the time of registration. be able to. For this reason, candidates can be narrowed down early at the stage of the transposed file scan process.
第3の実施の形態における構造テンプレート決定部112は、TIDの決定および特徴値の算出機能に加え、TIDが分割条件を満たすか否かを判断して分割条件を満たす場合にTIDを分割し、分割したTIDを該当するTIDとして決定する処理を行うものである。
In addition to the TID determination and feature value calculation functions, the structure
すなわち、構造テンプレート決定部112は、構造情報のみによってTIDを決定するのではなく、対応するテキストの特徴情報に応じて構造要素を分割する場合がある。そして、構造テンプレート決定部112は、分割することにより新規に作成した構造要素を構造化文書の木構造のノードに対応する構造要素として決定する。
That is, the structure
次に、このように構成された第3の実施の形態にかかる構造化文書検索装置によるテンプレート決定処理について説明する。図34は、第3の実施の形態におけるテンプレート決定処理の全体の流れを示すフローチャートである。 Next, template determination processing by the structured document search apparatus according to the third embodiment configured as described above will be described. FIG. 34 is a flowchart showing the overall flow of the template determination process in the third embodiment.
ステップS3401からステップS3402までの、語彙分割処理、語彙ID付加処理は、第2の実施の形態にかかる構造化文書検索装置におけるステップS2401からステップS2402までと同様の処理なので、その説明を省略する。 The vocabulary division processing and vocabulary ID addition processing from step S3401 to step S3402 are the same as the processing from step S2401 to step S2402 in the structured document search apparatus according to the second embodiment, and thus description thereof is omitted.
語彙IDを付加した後、構造テンプレート決定部112は、構造テンプレート記憶部132に記憶するTIDごとの特徴情報(最大語彙ID、最小語彙ID、最大テキストサイズ、要素内最大発生語彙数、テキストサイズの閾値を超えた回数)を算出する(ステップS3403)。例えば、テキスト要素内の語彙のうち、出現回数が最も多い語彙の出現関数を要素内最大発生語彙数として算出する。
After adding the vocabulary ID, the structure
ステップS3404からステップS3406までの特徴値算出処理、構造要素取得処理は、第2の実施の形態にかかる構造化文書検索装置におけるステップS2404からステップS2406までと同様の処理なので、その説明を省略する。 Since the feature value calculation process and the structural element acquisition process from step S3404 to step S3406 are the same as the process from step S2404 to step S2406 in the structured document search apparatus according to the second embodiment, the description thereof is omitted.
ステップS3406で、構造要素が取得されなかった場合は(ステップS3406:NO)、構造テンプレート決定部112は、新規に構造要素を作成し、デフォルトの基準情報と分割条件とを設定して構造テンプレート記憶部132に登録する(ステップS3407)。
If a structural element is not acquired in step S3406 (step S3406: NO), the structural
次に、構造テンプレート決定部112は、作成した構造要素のTIDを、現在処理している木構造の構造要素に該当するTIDとして設定する(ステップS3408)。
Next, the structure
ステップS3406で、構造要素が取得された場合は(ステップS3406:YES)、構造テンプレート決定部112は、構造要素に対応する特徴情報に従い最も適合する構造要素を選択する(ステップS3409)。なお、この処理は、構造要素が複数取得された場合に、いずれかの構造要素を選択するために実行する処理であるため、構造要素が1つのみ取得された場合には実行しない。
If a structural element is acquired in step S3406 (step S3406: YES), the structural
例えば、図18および図33に示すような構造情報が構造テンプレート記憶部132に記憶されており、タイトルタグ下のテキスト要素に対応する構造要素としてTID6およびTID7が取得されたとする。この場合、例えば、テキスト要素に“文書”が含まれるならば、“文書”の語彙IDが22であるため、当該語彙IDを最小語彙IDと最大語彙IDとの間に含むTID7が最も適合する構造要素として選択される。
For example, it is assumed that structure information as shown in FIGS. 18 and 33 is stored in the structure
次に、構造テンプレート決定部112は、構造テンプレート記憶部132を参照し、選択した構造要素に対応する基準情報と分割条件を取得する(ステップS3410)。
Next, the structure
次に、構造テンプレート決定部112は、取得した基準情報と分割条件、および、ステップS3403で算出した特徴情報を参照し、構造要素が分割条件を満たすか否かを判断する(ステップS3411)。
Next, the structure
分割条件を満たさない場合は(ステップS3411:NO)、ステップS3409で選択した構造要素のTIDを、現在処理している木構造の構造要素に該当するTIDとして設定する(ステップS3412)。 If the division condition is not satisfied (step S3411: NO), the TID of the structural element selected in step S3409 is set as the TID corresponding to the structural element of the tree structure currently processed (step S3412).
分割条件を満たす場合は(ステップS3411:YES)、構造テンプレート決定部112は、新規に構造要素を作成し、デフォルトの基準情報と分割条件とを設定して構造テンプレート記憶部132に登録する(ステップS3407)。
When the division condition is satisfied (step S3411: YES), the structure
ステップS3413の終了確認処理は、第2の実施の形態にかかる構造化文書検索装置におけるステップS2410と同様の処理なので、その説明を省略する。 Since the end confirmation process in step S3413 is the same process as step S2410 in the structured document search apparatus according to the second embodiment, the description thereof is omitted.
次に、第3の実施の形態にかかる構造化文書検索装置による構造化文書登録処理の具体例について説明する。 Next, a specific example of structured document registration processing by the structured document search device according to the third embodiment will be described.
図35は、構造テンプレート記憶部132に格納された構造情報の一例を示す説明図である。また、図36および図37は、登録する構造化文書の一例を示す説明図である。
FIG. 35 is an explanatory diagram illustrating an example of the structure information stored in the structure
ここでは、図33および図35に示すような構造情報が構造テンプレート記憶部132に格納されている状態を前提とし、図36および図37で示すような構造化文書を登録する例について説明する。なお、以下ではタイトル要素に対する処理に着目して説明する。
Here, an example of registering a structured document as shown in FIGS. 36 and 37 on the assumption that the structure information as shown in FIGS. 33 and 35 is stored in the structure
タイトル要素については、図35のような構造情報から、2つの構造要素の候補が取得される(ステップS3405、ステップS3406:YES)。そこで、構造テンプレート決定部112は、構造要素に対応する特徴情報に従い最も適合する構造要素を選択する(ステップS3409)。
For the title element, two structural element candidates are acquired from the structural information as shown in FIG. 35 (step S3405, step S3406: YES). Therefore, the structure
この例では、テキスト要素内に語彙“文書”(語彙ID=22)を含むため、当該語彙IDを最小語彙IDと最大語彙IDとの間に含むTID7が最も適合する構造要素として選択される。 In this example, since the vocabulary “document” (vocabulary ID = 22) is included in the text element, TID7 including the vocabulary ID between the minimum vocabulary ID and the maximum vocabulary ID is selected as the most suitable structural element.
次に、構造テンプレート決定部112は、構造要素の分割条件を満たすか否かを判断する(ステップS3411)。ここでは、テキスト要素に頻出語彙である語彙ID=22の語彙“文書”を2つ含むため、出現回数30以上であるという分割条件を満たしたと仮定する(ステップS3411:YES)。
Next, the structure
この場合は、構造テンプレート決定部112は、TID7を分割し、新規に構造要素を作成する(ステップS3407)。分割は、タイトルタグ下のテキスト要素に対応する構造要素のみを分割してもよいし、親要素も含めて新たな構造要素を作成して分割してもよい。
In this case, the structure
図38は、分割後の構造テンプレート記憶部132に格納された構造情報の一例を示す説明図である。同図は、親要素である特許文書を含めて構造要素を分割した例を示している。
FIG. 38 is an explanatory diagram showing an example of the structure information stored in the structure
このように、第3の実施の形態にかかる構造化文書検索装置では、構造要素ごとに特徴情報に基づく分割ルールを定め、構造要素に対応する要素の値の特徴情報が分割ルールに適合する場合に、当該構造要素を分割して新たな構造要素を作成して構造テンプレート記憶部を更新することができる。これにより、処理候補数が増大し、検索処理のボトルネックとなりうる部分を予め検出して構造要素を分割することができる。このため、転置ファイルスキャン処理の段階で候補を早期に絞り込むことが可能となる。 As described above, in the structured document search apparatus according to the third embodiment, the division rule based on the feature information is determined for each structure element, and the feature information of the element value corresponding to the structure element matches the division rule. In addition, the structural template storage unit can be updated by dividing the structural element to create a new structural element. As a result, the number of processing candidates increases, and a portion that can become a bottleneck of search processing can be detected in advance to divide the structural elements. For this reason, candidates can be narrowed down early at the stage of the transposed file scan process.
以上のように、本発明にかかる構造化文書検索装置および構造化文書検索方法は、異なる文書構造の複数の構造化文書を、階層化された論理構造を持つ構造化文書データベースで管理し、かつ全文検索処理のような位置情報を条件に指定した検索を行う構造化文書検索装置および構造化文書検索方法に適している。 As described above, the structured document search apparatus and the structured document search method according to the present invention manage a plurality of structured documents having different document structures in a structured document database having a hierarchical logical structure, and It is suitable for a structured document search apparatus and a structured document search method that perform a search specified by using position information as a condition, such as full-text search processing.
100 構造化文書検索装置
101 通信部
110 格納処理部
111 構造情報抽出部
112 構造テンプレート決定部
113 索引登録部
114 統計情報更新部
115 文書登録部
120 検索処理部
121 クエリ解析部
122 制約付加部
122a 特徴情報取得部
122b 特徴情報算出部
122c TID候補削除部
123 クエリプランニング部
124 クエリ実行部
124a 索引検索部
124b 検索部
131 構造化文書記憶部
132 構造テンプレート記憶部
133 索引記憶部
133a 統計情報記憶部
133b 転置ファイル記憶部
200 ネットワーク
300 クライアント
DESCRIPTION OF
Claims (14)
前記構造要素を一意に識別する構造IDと、前記要素の特徴を表す第1の特徴情報とを対応づけた構造情報を記憶する構造情報記憶手段と、
前記構造化文書の検索条件の入力を受付け、受付けた検索条件を解析し、前記構造化文書の前記構造要素に対応した構造の単位であるノードを階層化して有する階層構造の検索条件であって、検索対象となる前記構造IDの候補と前記構造IDの候補に対する検索キーとを対応づけた前記ノードを含む前記階層構造の検索条件を求める解析手段と、
前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記構造IDの候補に対応づけられた前記第1の特徴情報を前記構造情報記憶手段から取得する取得手段と、
前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記検索キーの特徴を表す第2の特徴情報を算出する算出手段と、
前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記構造IDの候補のうち、対応する前記検索キーについて前記算出手段が算出した前記第2の特徴情報が、前記取得手段が取得した前記第1の特徴情報に適合しない前記構造IDの候補を削除する削除手段と、
前記削除手段が前記構造IDの候補を削除した前記階層構造の検索条件に基づき、前記階層構造の検索条件を満たす前記構造IDに対応する前記文書IDを求め、前記求められた文書IDに対応する前記構造化文書を前記構造化文書記憶手段から検索する検索手段と、
を備えたことを特徴とする構造化文書検索装置。 A document having a hierarchical logical structure, which includes an element that is actual information corresponding to a structural element that is a unit of the logical structure; a document ID that uniquely identifies the structured document; Structured document storage means for storing
A structure information storage unit that stores structure information in which a structure ID that uniquely identifies the structure element is associated with first feature information that represents a feature of the element;
A search condition of a hierarchical structure that accepts input of search conditions for the structured document, analyzes the accepted search conditions, and has hierarchically structured nodes corresponding to the structural elements of the structured document. Analyzing means for obtaining a search condition for the hierarchical structure including the node in which the structure ID candidate to be searched and the search key for the structure ID candidate are associated with each other;
Acquisition means for acquiring, from the structure information storage means, the first feature information associated with the candidate structure ID included in each node for each node of the search condition of the hierarchical structure obtained by the analysis means; ,
Calculating means for calculating second feature information representing characteristics of the search key included in each node for each node of the search condition of the hierarchical structure obtained by the analyzing means;
For each node of the search condition of the hierarchical structure obtained by the analysis means, the second feature information calculated by the calculation means for the corresponding search key among the candidate structure IDs included in each node is: A deletion unit that deletes the candidate of the structure ID that does not match the first feature information acquired by the acquisition unit;
Based on the search condition of the hierarchical structure in which the deletion means deletes the candidate for the structure ID, the document ID corresponding to the structure ID satisfying the search condition of the hierarchical structure is obtained, and the document ID corresponding to the obtained document ID is obtained. Search means for searching the structured document from the structured document storage means;
A structured document retrieval apparatus characterized by comprising:
前記構造要素を一意に識別する構造IDと、前記要素の特徴を表す第1の特徴情報とを対応づけた構造情報を記憶する構造情報記憶手段と、
前記文書IDと、前記要素を一意に識別する要素IDと、前記要素に対応する前記構造要素の前記構造IDとを対応づけた索引を記憶する索引記憶手段と、
前記構造化文書の検索条件の入力を受付け、受付けた検索条件を解析し、前記構造化文書の前記構造要素に対応した構造の単位であるノードを階層化して有する階層構造の検索条件であって、検索対象となる前記構造IDの候補と前記構造IDの候補に対する検索キーとを対応づけた前記ノードを含む前記階層構造の検索条件を求める解析手段と、
前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記構造IDの候補に対応づけられた前記第1の特徴情報を前記構造情報記憶手段から取得する取得手段と、
前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記検索キーの特徴を表す第2の特徴情報を算出する算出手段と、
前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記構造IDの候補のうち、対応する前記検索キーについて前記算出手段が算出した前記第2の特徴情報が、前記取得手段が取得した前記第1の特徴情報に適合しない前記構造IDの候補を削除する削除手段と、
前記削除手段が前記構造IDの候補を削除した前記階層構造の検索条件に基づき、前記階層構造の検索条件を満たす前記構造IDに対応する前記文書IDと前記要素IDとを前記索引記憶手段から検索する索引検索手段と、
前記索引検索手段が検索した前記文書IDに対応する前記構造化文書を前記構造化文書記憶手段から検索する検索手段と、
を備えたことを特徴とする構造化文書検索装置。 A document having a hierarchical logical structure, which includes an element that is actual information corresponding to a structural element that is a unit of the logical structure; a document ID that uniquely identifies the structured document; Structured document storage means for storing
A structure information storage unit that stores structure information in which a structure ID that uniquely identifies the structure element is associated with first feature information that represents a feature of the element;
Index storage means for storing an index that associates the document ID, an element ID that uniquely identifies the element, and the structure ID of the structural element corresponding to the element;
A search condition of a hierarchical structure that accepts input of search conditions for the structured document, analyzes the accepted search conditions, and has hierarchically structured nodes corresponding to the structural elements of the structured document. Analyzing means for obtaining a search condition for the hierarchical structure including the node in which the structure ID candidate to be searched and the search key for the structure ID candidate are associated with each other;
Acquisition means for acquiring, from the structure information storage means, the first feature information associated with the candidate structure ID included in each node for each node of the search condition of the hierarchical structure obtained by the analysis means; ,
Calculating means for calculating second feature information representing characteristics of the search key included in each node for each node of the search condition of the hierarchical structure obtained by the analyzing means;
For each node of the search condition of the hierarchical structure obtained by the analysis means, the second feature information calculated by the calculation means for the corresponding search key among the candidate structure IDs included in each node is: A deletion unit that deletes the candidate of the structure ID that does not match the first feature information acquired by the acquisition unit;
Based on the search condition of the hierarchical structure in which the deletion means deletes the candidate structure ID, the document ID and the element ID corresponding to the structure ID satisfying the search condition of the hierarchical structure are searched from the index storage means. Index search means to perform,
Search means for searching the structured document storage means for the structured document corresponding to the document ID searched by the index search means;
A structured document retrieval apparatus characterized by comprising:
前記構造情報記憶手段は、前記要素に含まれる前記語彙に対応づけられた前記語彙IDの最小値である最小語彙IDおよび最大値である最大語彙IDを前記第1の特徴情報として対応づけた前記構造情報を記憶し、
前記算出手段は、前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードの前記検索キーに含まれる語彙の前記語彙IDを前記第2の特徴情報として算出し、
前記削除手段は、前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記構造IDの候補のうち、対応する前記検索キーについて前記算出手段が算出した前記語彙IDが、前記取得手段が取得した前記第1の特徴情報である前記最小語彙IDと前記最大語彙IDとの間に含まれない前記構造IDの候補を削除することを特徴とする請求項2に記載の構造化文書検索装置。 The index storage means includes, for each vocabulary that is a character string included in the element, a vocabulary ID that uniquely identifies the vocabulary, and an occurrence frequency of the vocabulary in all structured documents of the structured document storage means And storing the index further corresponding to
The structure information storage means associates the minimum vocabulary ID, which is the minimum value of the vocabulary ID associated with the vocabulary included in the element, and the maximum vocabulary ID, which is the maximum value, as the first feature information. Memorize structural information,
The calculation means calculates the vocabulary ID of the vocabulary included in the search key of each node as the second feature information for each node of the hierarchical structure search condition obtained by the analysis means,
For each node of the hierarchical structure search condition obtained by the analyzing means, the deleting means is the vocabulary ID calculated by the calculating means for the corresponding search key among the candidate structure IDs included in each node. 3. The structure ID candidate not included between the minimum vocabulary ID and the maximum vocabulary ID, which is the first feature information acquired by the acquisition unit, is deleted. Structured document retrieval device.
前記索引検索手段が検索した前記文書IDと前記要素IDとに対応づけられた前記第3の特徴情報を前記索引記憶手段から取得する第2の取得手段と、
前記索引検索手段が検索した前記文書IDと前記要素IDとから、検索する際に用いた前記階層構造の検索条件のノードに含まれる前記検索キーについて前記算出手段が算出した前記第2の特徴情報が、前記第2の取得手段が取得した前記第3の特徴情報に適合しない前記文書IDと前記要素IDとを削除する第2の削除手段と、をさらに備え、
前記検索手段は、前記第2の削除手段が削除した後の前記文書IDに対応する前記構造化文書を前記構造化文書記憶手段から検索することを特徴とする請求項2に記載の構造化文書検索装置。 The index storage means stores an index in which the document ID, the element ID, the structure ID of the structural element corresponding to the element, and third characteristic information representing the characteristic of the element are associated with each other. ,
Second acquisition means for acquiring the third feature information associated with the document ID and the element ID searched by the index search means from the index storage means;
The second feature information calculated by the calculation unit for the search key included in the node of the search condition of the hierarchical structure used in the search from the document ID and the element ID searched by the index search unit A second deletion unit that deletes the document ID and the element ID that do not match the third feature information acquired by the second acquisition unit,
3. The structured document according to claim 2, wherein the retrieval unit retrieves the structured document corresponding to the document ID deleted by the second deletion unit from the structured document storage unit. Search device.
前記算出手段は、前記解析手段が求めた前記階層構造の検索条件の各ノードについて、各ノードの前記検索キーに含まれる語彙の前記語彙IDに基づいて前記第2の特徴情報を算出し、
前記第2の削除手段は、前記索引検索手段が検索した前記文書IDと前記要素IDとから、検索する際に用いた前記階層構造の検索条件のノードに含まれる前記検索キーについて前記算出手段が算出した前記語彙IDが、前記第2の取得手段が取得した前記第3の特徴情報に適合しない前記文書IDと前記要素IDとを削除することを特徴とする請求項6に記載の構造化文書検索装置。 The index storage means includes, for each vocabulary that is a character string included in the element, a vocabulary ID that uniquely identifies the vocabulary, and an occurrence frequency of the vocabulary in all structured documents of the structured document storage means The document ID, the element ID, the structure ID of the structural element corresponding to the element, and a minimum vocabulary ID that is a minimum value of the vocabulary ID associated with the vocabulary included in the element; Storing the index associating with the third feature information calculated based on the maximum vocabulary ID which is the maximum value;
The calculation means calculates the second feature information for each node of the search condition of the hierarchical structure obtained by the analysis means based on the vocabulary ID of the vocabulary included in the search key of each node,
The second deleting means includes the calculating means for the search key included in the search condition node of the hierarchical structure used for searching from the document ID and the element ID searched by the index searching means. 7. The structured document according to claim 6, wherein the calculated vocabulary ID deletes the document ID and the element ID that do not match the third feature information acquired by the second acquisition unit. Search device.
前記構造化文書の入力を受付ける受付手段と、
前記受付手段が受付けた前記構造化文書から少なくとも1つの前記構造要素を含む階層構造を抽出する抽出手段と、
前記抽出手段が抽出した前記階層構造に含まれる前記構造要素ごとに対応する前記構造IDを決定する構造情報決定手段と、
前記抽出手段が抽出した前記階層構造に含まれる前記構造要素に対応する前記要素の前記第1の特徴情報が、前記構造情報決定手段が決定した前記構造IDに対応する前記条件を満たすか否かを判定する判定手段と、
前記判定手段が前記条件を満たすと判定した場合に、前記構造情報決定手段が決定した前記構造IDに対応する前記構造要素を分割して新たな前記構造情報を作成し、前記構造情報記憶手段に登録する構造情報分割手段と、をさらに備えたことを特徴とする請求項2に記載の構造化文書検索装置。 The structure information storage means stores the structure information further associated with a condition for dividing the structure element based on the first feature information,
Receiving means for receiving input of the structured document;
Extracting means for extracting a hierarchical structure including at least one structural element from the structured document received by the receiving means;
Structure information determining means for determining the structure ID corresponding to each structure element included in the hierarchical structure extracted by the extracting means;
Whether the first feature information of the element corresponding to the structural element included in the hierarchical structure extracted by the extracting unit satisfies the condition corresponding to the structure ID determined by the structural information determining unit Determining means for determining
When the determination means determines that the condition is satisfied, the structure information corresponding to the structure ID determined by the structure information determination means is divided to create new structure information, and the structure information storage means 3. The structured document search apparatus according to claim 2, further comprising a structure information dividing unit for registration.
前記構造情報記憶手段は、前記索引記憶手段に記憶された前記語彙のうち、前記出現頻度が予め定められた第1の閾値より大きい前記語彙が、前記構造要素に対応する前記要素内に出現する回数が予め定められた第2の閾値を超えた場合に前記構造要素を分割する条件をさらに対応づけた前記構造情報を記憶することを特徴とする請求項9に記載の構造化文書検索装置。 The index storage means includes, for each vocabulary that is a character string included in the element, a vocabulary ID that uniquely identifies the vocabulary, and an occurrence frequency of the vocabulary in all structured documents of the structured document storage means And storing the index further corresponding to
The structural information storage means includes the vocabulary stored in the index storage means, the vocabulary having an appearance frequency greater than a predetermined first threshold value appearing in the element corresponding to the structural element. 10. The structured document search device according to claim 9, wherein the structure information further stores a condition for dividing the structure element when the number of times exceeds a predetermined second threshold.
階層化された論理構造を有する文書であって、前記論理構造の単位である構造要素に対応する実情報である要素を含む構造化文書の検索条件の入力を受付け、受付けた検索条件を解析し、前記構造化文書の前記構造要素に対応した構造の単位であるノードを階層化して有する階層構造の検索条件であって、検索対象となる前記構造化文書の前記構造要素を一意に識別する構造IDの候補と前記構造IDの候補に対する検索キーとを対応づけた前記ノードを含む前記階層構造の検索条件を求める解析ステップと、
前記構造IDと、前記要素の特徴を表す第1の特徴情報とを対応づけた構造情報を記憶する構造情報記憶手段から、前記解析ステップが求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記構造IDの候補に対応づけられた前記第1の特徴情報を取得する取得ステップと、
前記解析ステップが求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記検索キーの特徴を表す第2の特徴情報を算出する算出ステップと、
前記解析ステップが求めた前記階層構造の検索条件の各ノードについて、各ノードに含まれる前記構造IDの候補のうち、対応する前記検索キーについて前記算出ステップが算出した前記第2の特徴情報が、前記取得ステップが取得した前記第1の特徴情報に適合しない前記構造IDの候補を削除する削除ステップと、
構造化文書と前記構造化文書を一意に識別する文書IDと、前記要素を一意に識別する要素IDと、前記要素に対応する前記構造要素の前記構造IDとを対応づけた索引を記憶する索引記憶手段から、前記削除ステップが前記構造IDの候補を削除した前記階層構造の検索条件に基づき、前記階層構造の検索条件を満たす前記構造IDに対応する前記文書IDと前記要素IDとを検索する索引検索ステップと、
前記索引検索ステップが検索した前記文書IDに対応する前記構造化文書を、前記構造化文書と前記文書IDとを対応づけて記憶する構造化文書記憶手段から検索する検索ステップと、
を実行することを特徴とする構造化文書検索方法。 The structured document search device
A document having a hierarchical logical structure, and receiving an input of a search condition of a structured document including an element that is actual information corresponding to a structural element that is a unit of the logical structure, and analyzes the received search condition. , A hierarchical search condition having nodes that are units of a structure corresponding to the structural element of the structured document, the structure uniquely identifying the structural element of the structured document to be searched An analysis step for obtaining a search condition for the hierarchical structure including the node that associates an ID candidate and a search key for the structure ID candidate;
For each node of the search condition of the hierarchical structure obtained by the analysis step, from the structure information storage means for storing the structure information in which the structure ID is associated with the first feature information representing the feature of the element. An acquisition step of acquiring the first feature information associated with the candidate structure ID included in the node;
A calculation step of calculating second feature information representing a feature of the search key included in each node for each node of the search condition of the hierarchical structure obtained in the analysis step;
For each node of the search condition of the hierarchical structure obtained in the analysis step, the second feature information calculated by the calculation step for the corresponding search key among the structure ID candidates included in each node is: A deletion step of deleting the candidate of the structure ID that does not match the first feature information acquired by the acquisition step;
An index that stores an index that associates a structured document, a document ID that uniquely identifies the structured document, an element ID that uniquely identifies the element, and the structure ID of the structural element corresponding to the element The document ID and the element ID corresponding to the structure ID satisfying the hierarchical structure search condition are searched from the storage means based on the hierarchical structure search condition in which the deletion step deletes the structure ID candidate. An index search step;
A retrieval step for retrieving the structured document corresponding to the document ID retrieved by the index retrieval step from a structured document storage means for storing the structured document in association with the document ID;
A structured document retrieval method characterized by executing :
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006030110A JP4490930B2 (en) | 2006-02-07 | 2006-02-07 | Structured document search apparatus and structured document search method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006030110A JP4490930B2 (en) | 2006-02-07 | 2006-02-07 | Structured document search apparatus and structured document search method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007213158A JP2007213158A (en) | 2007-08-23 |
JP4490930B2 true JP4490930B2 (en) | 2010-06-30 |
Family
ID=38491557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006030110A Active JP4490930B2 (en) | 2006-02-07 | 2006-02-07 | Structured document search apparatus and structured document search method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4490930B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5269399B2 (en) * | 2007-11-22 | 2013-08-21 | 株式会社東芝 | Structured document retrieval apparatus, method and program |
JP5083367B2 (en) | 2010-04-27 | 2012-11-28 | カシオ計算機株式会社 | SEARCH DEVICE, SEARCH METHOD, AND COMPUTER PROGRAM |
JP5954742B2 (en) | 2013-07-23 | 2016-07-20 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | Apparatus and method for retrieving documents |
CN117252514B (en) * | 2023-11-20 | 2024-01-30 | 中铁四局集团有限公司 | Building material library data processing method based on deep learning and model training |
-
2006
- 2006-02-07 JP JP2006030110A patent/JP4490930B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2007213158A (en) | 2007-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5376163B2 (en) | Document management / retrieval system and document management / retrieval method | |
JP3754253B2 (en) | Structured document search method, structured document search apparatus, and structured document search system | |
JP3842577B2 (en) | Structured document search method, structured document search apparatus and program | |
US10289717B2 (en) | Semantic search apparatus and method using mobile terminal | |
JP5121146B2 (en) | Structured document management apparatus, structured document management program, and structured document management method | |
US6853992B2 (en) | Structured-document search apparatus and method, recording medium storing structured-document searching program, and method of creating indexes for searching structured documents | |
JP4445509B2 (en) | Structured document retrieval system and program | |
US20050066269A1 (en) | Information block extraction apparatus and method for Web pages | |
JP4256416B2 (en) | Data structure conversion system and program | |
US20040221229A1 (en) | Data structures related to documents, and querying such data structures | |
JP4398988B2 (en) | Apparatus, method and program for managing structured document | |
JP2010277322A (en) | Common query graph pattern generation device, common query graph pattern generation method, and program for common query graph pattern generation | |
US8082492B2 (en) | Structured-document management apparatus, search apparatus, storage method, search method and program | |
JP4490930B2 (en) | Structured document search apparatus and structured document search method | |
WO2006059425A1 (en) | Database configuring device, database retrieving device, database device, database configuring method, and database retrieving method | |
JP2008084112A (en) | Device, method, and program for retrieving structured document | |
JP4247108B2 (en) | Structured document search method, structured document search device, and program | |
JP4439497B2 (en) | Search processing apparatus and program | |
JP2003281149A (en) | Method of setting access right and system of structured document management | |
US11741137B2 (en) | Biased string search structures with embedded range search structures | |
JP4689856B2 (en) | Structured document converter | |
JP2007073072A (en) | Related document display device | |
JP2007140707A (en) | Graph retrieval device | |
JP2013218627A (en) | Method and device for extracting information from structured document and program | |
JP3156613B2 (en) | Document editing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070903 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090811 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090918 |
|
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: 20100309 |
|
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: 20100402 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130409 Year of fee payment: 3 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4490930 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: 20130409 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140409 Year of fee payment: 4 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313114 Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |