(57)【要約】【課題】複数のキーワードを入力するだけで当該キーワード間の階層関係を考慮して構造化文書の検索を実行し、かつ、当該検索結果を評価することを可能とする。【解決手段】語彙階層関係格納部１３２は、検索対象データ格納部１３１に格納されている複数の構造化文書の各々に含まれる語彙間の階層関係を示す語彙階層関係グラフを、当該構造化文書毎に格納する。クエリ作成部１２１は、語彙階層関係グラフ格納部１３２を参照して、ユーザによって指定された検索条件に含まれる複数の文字列から構造化文書を検索するための検索式を作成する。記憶部１３は、クエリ作成部１２１によって作成された検索式に合致する構造化文書を検索対象データ格納部１３１から検索する。検索結果評価部１４１は、検索条件に含まれる複数の文字列に基づいて、検索された構造化文書を評価する。【選択図】図１
2009251845.tif 000002
【特許請求の範囲】
【請求項１】
検索対象となる複数の構造化文書が格納されている検索対象データ格納手段に対して、ユーザによって指定された複数の文字列を含む検索条件に応じて検索を実行する検索結果評価装置において、
前記検索対象データ格納手段に格納されている複数の構造化文書の各々に含まれる語彙間の階層関係を示す語彙階層関係グラフを、当該構造化文書毎に格納する語彙階層関係グラフ格納手段と、
前記語彙階層関係グラフ格納手段を参照して、前記検索条件に含まれる複数の文字列から構造化文書を検索するための検索式を作成するクエリ作成手段と、
前記作成された検索式に合致する構造化文書を前記検索対象データ格納手段から検索する検索手段と、
前記検索条件に含まれる複数の文字列に基づいて、前記検索された構造化文書を評価する検索結果評価手段と
を具備することを特徴とする検索結果評価装置。
【請求項２】
前記検索結果評価手段は、
前記検索された構造化文書内において前記検索条件に含まれる複数の文字列が出現する箇所に基づいて、当該構造化文書の評価値を算出する算出手段を含み、
前記算出された評価値に基づいて、前記検索された構造化文書の順序付けを行う
ことを特徴とする請求項１記載の検索結果評価装置。
【請求項３】
文字列間の階層関係を示す関係情報及び当該文字列間の階層関係を有する構造化文書を検索するための検索式を示す検索式情報が予め対応付けて格納されている変換データ格納手段を更に具備し、
前記クエリ作成手段は、
前記検索条件に含まれる文字列を並び替えることによって、当該検索条件から複数の検索条件を展開する展開手段と、
前記ユーザによって指定された検索条件及び前記展開された複数の検索条件毎に、当該検索条件に含まれる複数の文字列を語彙として含む語彙階層関係グラフを取得する取得手段と、
前記取得された語彙階層関係グラフによって示される前記複数の文字列間の階層関係を示す関係情報に対応付けて前記変換データ格納手段に格納されている検索式情報によって示される検索式を作成する検索式作成手段と
を含み、
前記検索手段は、前記検索式作成手段によって作成された検索式に合致する構造化文書を前記検索対象データ格納手段から検索し、
前記検索結果評価手段は、
前記展開された複数の検索条件の各々を、前記ユーザによって指定された複数の文字列を含む検索条件に基づいて評価する検索条件評価手段を含み、
前記ユーザによって指定された検索条件に含まれる複数の文字列及び前記検索条件評価手段による評価結果に基づいて、前記検索手段によって検索された構造化文書を評価する
ことを特徴とする請求項１記載の検索結果評価装置。
【請求項４】
前記検索条件評価手段は、前記ユーザによって指定された検索条件に含まれる複数の文字列の並び順及び前記展開された複数の検索条件の各々に含まれる複数の文字列の並び順に基づいて、当該展開された複数の検索条件の各々の評価値を算出する算出手段を含み、
前記検索結果評価手段は、前記算出された評価値に基づいて、前記検索された構造化文書の順序付けを行う
ことを特徴とする請求項３記載の検索結果評価装置。
【請求項５】
検索対象となる複数の構造化文書が格納されている検索対象データ格納手段及び語彙階層関係グラフ格納手段を備え、当該検索対象データ格納手段に対して、ユーザによって指定された複数の文字列を含む検索条件に応じて検索を実行する検索結果評価装置において適用される検索結果評価方法であって、
前記検索対象データ格納手段に格納されている複数の構造化文書の各々に含まれる語彙間の階層関係を示す語彙階層関係グラフを、当該構造化文書毎に前記語彙階層関係グラフ格納手段に格納するステップと、
前記語彙階層関係グラフ格納手段を参照して、前記検索条件に含まれる複数の文字列から構造化文書を検索するための検索式を作成するステップと、
前記作成された検索式に合致する構造化文書を前記検索対象データ格納手段から検索するステップと、
前記検索条件に含まれる複数の文字列に基づいて、前記検索された構造化文書を評価するステップと
を具備することを特徴とする検索結果評価方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検索された構造化文書を評価する検索結果評価装置及び検索結果評価方法に関する。
【背景技術】
【０００２】
一般に、論理構造を持つ文書は構造化文書と呼ばれる。構造化文書において、当該文書の論理構造は、当該文書中に記述されたタグによって示される場合がある。このタグを用いて論理構造が表現された構造化文書は、計算機で各種目的に合わせて解釈ないし加工して利用する処理に適している。構造化文書の代表として、ＸＭＬ（Extensible Markup Language）形式で記述されたＸＭＬ文書が知られている。
【０００３】
近年、非常に多くのアプリケーションでＸＭＬが用いられるようになり、様々なデータがＸＭＬ形式で記述されるようになってきている。これにより、ＸＭＬ形式で記述されたＸＭＬ文書を検索する技術が、重要となっている。
【０００４】
ここで、上記したＸＭＬ文書の検索の条件指定では、
１．XPathやXQueryといった問合せ言語による条件指定
２．要素名、属性名とその値の組による条件指定
３．キーワード（文字列）による条件指定
４．自然言語による条件指定
のいずれかの方法が用いられている。
【０００５】
上記の条件指定方法のうち、１及び２に関しては、利用者（ユーザ）が問合せ言語などの専門的知識を有し、または予め検索したいＸＭＬ文書の構造を把握した上で、条件指定を行うため、ユーザにとって所望のＸＭＬ文書を検索できる可能性が高い。
【０００６】
一方、３及び４に関しては、例えばユーザが問合せ言語などの専門的知識を持たない場合であってもＸＭＬ文書を検索することができるという利点がある。
【０００７】
ところで、上記したＸＭＬ文書の検索に際しては、例えばユーザにより指定された条件（検索条件）によっては多数のＸＭＬ文書が検索結果としてユーザに提示される（返される）場合がある。このような場合には、ユーザは、提示された多数のＸＭＬ文書の中から所望のＸＭＬ文書を探す必要がある。しかしながら、多数のＸＭＬ文書の中から所望のＸＭＬ文書を見つけ出すことは困難であり、時間がかかる。
【０００８】
このため、例えば検索された多数のＸＭＬ文書の各々（検索結果）を評価し、ユーザにとって所望のＸＭＬ文書を例えば上位に順位付けした形で検索結果を返すことで、ユーザが最終的に必要としているデータを見つけやすくすることができる。
【０００９】
ここで、検索結果を評価する方法としては、例えばＸＭＬ文書に含まれる各単語に対して、当該単語が出現するＸＭＬ文書中での重要度を予めインデックスとして保持しておき、例えば検索時に指定された全てのキーワードに対して、その重要度の評価を行う方法等がある。
【００１０】
また、ＸＭＬ文書の検索では、上記した検索結果の評価において当該ＸＭＬ文書の構造についても考慮して評価を行うことが望ましい。
【００１１】
上記したような検索結果を評価する技術に関して、例えばフォーマットファイルにそれぞれの文書の構造のどの部分に対応したインデックスを作成するのかを記述するという簡単な操作によって、文書の構造情報とフィルタを利用した適切な適合度計算を行うことができる技術（以下、先行技術と表記）が開示されている（例えば、特許文献１を参照）。
【特許文献１】特開２００１−３２５２９３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、上記した問合せ言語による条件指定及び要素名、属性名とその値の組による条件指定では、XPathまたはXQueryのような問合せ言語の専門的知識や、ユーザが予め検索したいＸＭＬ文書の構造を把握した上で条件指定を行う必要がある。よって、そのような知識を持たないユーザは用いることができないため、利便性に欠ける。
【００１３】
一方、上記したキーワードによる条件指定または自然言語による条件指定では、必要としているデータを特定するための情報（例えば、ＸＭＬ文書の構造）を表すことができない。また、自然言語による条件指定に関しては、自然言語におけるあいまいさが残ってしまう。このため、ユーザが必要としているデータ以外にも多量のデータが検索結果として返ってきてしまう。
【００１４】
また、検索結果に対して評価を行う場合、既存のキーワードによる全文検索等では、検索結果にユーザの意図を反映させることが困難である。また、上記した先行技術においては、例えば指定されたキーワードと静的に予め定義しておいたインデックス等に基づいて順序（順位）付けがされている。したがって、先行技術においては、例えば静的にはＸＭＬ文書の構造に従った重要度を適用することも可能であるが、検索時にユーザによって指定された検索条件から当該ユーザが意図する階層構造を有するＸＭＬ文書を動的に上位に順位付けすることは困難である。
【００１５】
本発明の目的は、複数のキーワード（文字列）を入力するだけで当該キーワード間の階層関係を考慮して構造化文書の検索を実行し、かつ、当該キーワードに応じて当該検索結果を評価する検索結果評価装置及び検索結果評価方法を提供することにある。
【課題を解決するための手段】
【００１６】
本発明の１つの態様によれば、検索対象となる複数の構造化文書が格納されている検索対象データ格納手段に対して、ユーザによって指定された複数の文字列を含む検索条件に応じて検索を実行する検索結果評価装置が提供される。この検索結果評価装置は、前記検索対象データ格納手段に格納されている複数の構造化文書の各々に含まれる語彙間の階層関係を示す語彙階層関係グラフを、当該構造化文書毎に格納する語彙階層関係グラフ格納手段と、前記語彙階層関係グラフ格納手段を参照して、前記検索条件に含まれる複数の文字列から構造化文書を検索するための検索式を作成するクエリ作成手段と、前記作成された検索式に合致する構造化文書を前記検索対象データ格納手段から検索する検索手段と、前記検索条件に含まれる複数の文字列に基づいて、前記検索された構造化文書を評価する検索結果評価手段とを具備する。
【発明の効果】
【００１７】
本発明によれば、複数のキーワードを入力するだけで当該キーワード間の階層関係を考慮して構造化文書の検索を実行し、かつ、当該検索結果を評価することを可能とする。
【発明を実施するための最良の形態】
【００１８】
以下、図面を参照して、本発明の各実施形態について説明する。
【００１９】
［第１の実施形態］
図１は、本発明の第１の実施形態に係る検索結果評価装置の主として機能構成を示すブロック図である。この検索結果評価装置１０は、例えば検索者（ユーザ）２０によって指定された複数の文字列を含む検索条件に応じて構造化文書の検索を実行する。  
図１に示す検索結果評価装置１０は、データ解析部１１、検索実行部１２、記憶部１３及び検索結果評価部１４を含む。
【００２０】
データ解析部１１は、例えば検索結果評価装置１０の管理者３０からの語彙階層関係グラフ作成要求に従って、語彙階層関係グラフを作成する。語彙階層関係グラフは、検索対象となる構造化文書（以下、検索対象データと表記）に含まれる語彙間の階層関係を示す。なお、この語彙階層関係グラフの詳細については後述する。  
データ解析部１１は、データ解析制御部１１１及び語彙階層関係グラフ作成部１１２を含む。データ解析制御部１１１は、記憶部１３から検索対象データを取得し、当該検索対象データを解析する。語彙階層関係グラフ作成部１１２は、データ解析制御部１１１によって解析された結果に基づいて、語彙階層関係グラフを作成する。また、語彙階層関係グラフ作成部１１２は、作成された語彙階層関係グラフを記憶部１３に登録する。
【００２１】
検索実行部１２は、検索者２０によって指定される検索条件（検索者２０からの検索要求）に従って、検索処理を実行する。検索実行部１２は、検索者２０によって指定される検索条件及び当該検索条件に合致する検索結果（データ）を検索結果評価部１４に渡す。また、検索実行部１２は、検索結果を検索者２０に返す。検索実行部１２は、クエリ作成部１２１及び検索制御部１２２を含む。  
クエリ作成部１２１は、検索者２０によって指定される検索条件のリストを作成し、作成されたリストから検索対象データを検索するための検索式を作成する。検索式は、語彙階層関係グラフ格納部１３２を参照し後述する変換データに基づいて作成される。なお、検索者２０によって指定される検索条件は、パス形式で示される。以下、パス形式で示される検索条件を検索条件パス式と称する。この検索条件パス式には、例えば検索者２０によって指定される複数の文字列が含まれる。  
検索制御部１２２は、クエリ作成部１２１によって作成された検索式により、記憶部１３に対して検索処理を実行するための制御を行う。検索制御部１２２は、記憶部１３から受け取った検索結果データを検索結果評価部１４に渡す。この検索結果データには、クエリ作成部１２１によって作成された検索式により検索された検索対象データ、すなわち、検索者２０によって指定された検索条件に合致する検索対象データが含まれる。
【００２２】
記憶部１３は、各種データを格納する。記憶部１３は、検索対象データ格納部１３１、語彙階層関係グラフ格納部１３２及び変換データ格納部１３３を有し、適宜各種データの格納または取り出しを行う。  
検索対象データ格納部１３１には、構造化文書検索装置１０による検索の対象となる検索対象データ（構造化文書）が格納されている。なお、検索対象データ格納部１３１は、検索結果評価装置１０とは別の、例えば外部の記憶装置に管理（格納）される構成であってもよい。語彙階層関係グラフ１３２には、データ解析部１１の語彙階層関係グラフ作成部１１２によって作成された語彙階層関係グラフが格納（登録）されている。変換データ格納部１３３には、前述した変換データが格納されている。この変換データは、上記した検索条件パス式から検索式を作成（変換）するためのデータである。
【００２３】
検索結果評価部１４は、検索実行部１２から渡された検索結果データを、当該検索実行部１２から渡された検索条件（検索条件パス式）に基づいて評価する。検索結果評価部１４は、パス式文書間評価部１４１を含む。  
パス式文書間評価部１４１は、検索実行部１２から渡された検索結果データに含まれる検索対象データ（構造化文書）毎に、当該検索対象データの評価値を算出する。この場合、パス式文書間評価部１４１は、検索対象データ内において、検索条件パス式に含まれる複数の文字列が出現する箇所に基づいて当該構造化文書の評価値を算出する。パス式文書間評価部１４１は、算出された評価値に基づいて、検索結果データに含まれる検索対象データの順序（順位）付けを行う。パス式文書間評価部１４１は、算出された評価値に応じて順序付けされた検索結果データを検索実行部１２に返す。
【００２４】
次に、図２のフローチャートを参照して、図１に示す検索結果評価装置１０において語彙階層関係グラフが作成される際の処理手順について説明する。  
まず、管理者３０は、例えばデータ解析部１１に対して、語彙階層関係グラフを作成させるための語彙階層関係グラフ作成要求を出す（ステップＳ１）。このとき、例えば作成される語彙階層関係グラフに含まれる語彙を指定する等の条件が、管理者３０によって与えられる構成であっても構わない。この場合、作成される語彙階層関係グラフが、例えば管理者３０によって指定された語彙を必ず保持する構成でもよいし、または当該指定された語彙を優先的に保持する構成でもよい。
【００２５】
データ解析部１１のデータ解析制御部１１１は、管理者３０からの語彙階層関係グラフ作成要求に応じて解析の対象となるデータ（以下、解析対象データと表記）の取得要求を、記憶部１３に対して出力する（ステップＳ２）。この解析対象データは、検索対象データ格納部１３１に格納されている検索対象データである。以下、データ解析部１１によって処理される検索対象データを解析対象データとして説明する。  
記憶部１３は、この取得要求に応じて、検索対象データ格納部１３１に格納されている解析対象データを検索する（ステップＳ３）。記憶部１３は、検索された解析対象データをデータ解析制御部１１１に渡す。これにより、データ解析制御部１１１は、解析対象データを取得する。
【００２６】
なお、データ解析制御部１１１は、検索対象データ格納部１３１に格納されている検索対象データの全てを解析対象データとして取得することを基本とするが、ステップＳ１において、管理者３０によって条件が指定されている場合には、当該条件に合致する検索対象データのみを解析対象データとして取得する構成であってもよい。例えば前回の解析時からの差分、つまり、まだ解析を行っていないデータのみを解析対象とすることも可能である。
【００２７】
データ解析制御部１１１は、取得された解析対象データの解析を行う（ステップＳ４）。語彙階層関係グラフ作成部１１２は、データ解析制御部１１１によって解析された結果を基に、語彙階層関係グラフを作成する（ステップＳ５）。語彙階層関係グラフ作成部１１２は、作成された語彙階層関係グラフを語彙階層関係グラフ格納部１３２に登録する（ステップＳ６）。
【００２８】
次に、図３のフローチャートを参照して、図１に示す検索結果評価装置１０において検索者２０からの検索要求に応じた検索が実行される際の処理手順について説明する。  
まず、検索者２０は、検索実行部１２に対して、例えば検索条件パス式を指定して検索要求を出す（ステップＳ１１）。この検索条件パス式には、複数の文字列が含まれる。
【００２９】
クエリ作成部１２１は、入力された検索条件パス式に応じて、検索対象データ格納部１３１に対して検索を実行するための検索式を作成する（ステップＳ１２）。すなわち、クエリ作成部１２１は、語彙階層関係グラフ格納部１３２及び変換データ格納部１３３を参照して、検索条件パス式に含まれる複数の文字列を語彙として含む語彙階層関係グラフによって示される当該複数の文字列間の階層関係に基づいて、検索式を作成する。
【００３０】
検索実行部１２の検索制御部１２２は、クエリ作成部１２１によって作成された検索式を指定して、記憶部１３に対して検索要求を出力する（ステップＳ１３）。  
記憶部１３は、検索制御部１２２からの検索要求に応じて、当該検索制御部１２２の制御の下、検索対象データ格納部１３１から当該検索要求に合致する検索対象データを検索する（ステップＳ１４）。記憶部１３は、検索制御部１２２からの検索要求に合致する検索対象データを含む検索結果（データ）を検索制御部１２２に返す。これにより、検索制御部１２２は、検索式に基づく検索結果データを取得する。この検索結果データには、記憶部１３によって検索された上記検索要求に合致する検索対象データ（構造化文書）が含まれる。
【００３１】
検索制御部１２２は、取得された検索結果データ及び検索条件パス式を、検索結果評価部１４に渡す。検索結果評価部１４は、検索制御部１２２から渡された検索条件パス式に基づいて、検索結果データに含まれる検索対象データの各々を評価する（ステップＳ１５）。このとき、検索結果評価部１４のパス式文書間評価部１４１は、検索結果データに含まれる検索対象データ内において、検索条件パス式に含まれる複数の文字列が出現する箇所に基づいて当該検索対象データの評価値を算出する。なお、評価値の算出処理の詳細については後述する。
【００３２】
パス式文書間評価部１４１は、算出された評価値に基づいて検索結果データに含まれる検索対象データの各々について順序付けを行う。パス式文書間評価部１４１によって順序付けされた検索対象データを含む検索結果データは、検索実行部１２に渡される。  
検索制御部１２２は、パス式文書間評価部１４１から渡された検索結果データを、検索要求に対する検索結果として検索者２０に対して返す（ステップＳ１６）。これにより、検索者２０は、検索要求に対する検索結果を取得する（ステップＳ１７）。この場合、検索結果は、パス式文書間評価部１４１によって順序付けされた結果の上位の検索対象データから順に検索者２０に対して提示（表示）される。
【００３３】
図４は、検索対象データ格納部１３１に格納されている検索対象データの一例を示す図である。図４に示す検索対象データは、例えばＸＭＬ（Extensible Markup Language）形式で記述された天気予報データ１００である。図４に示す天気予報データ１００は、例えばルート要素名として「天気予報」を有する。また、天気予報データ１００は、例えば要素名として「場所」、「予報」、「天気」、「気温」、「最高」、「最低」及び「降水確率」を有する。  
更に、天気予報データ１００は、例えば属性名が「都道府県」で、属性値として「東京都」、「神奈川県」及び「埼玉県」を有する。また、例えば属性名が「地域」で、属性値として「東京地方」、「伊豆諸島北部」、「伊豆諸島南部」、「小笠原諸島」、「東部」、「西部」、「北部」及び「南部」を有する。また、例えば属性名が「単位」で、属性値として「％」を有する。
【００３４】
ここで、上記した検索対象データに含まれる要素には、単純型と複合型が存在する。単純型は、属性を持たない要素であって、内容にテキスト（文字列）のみを持つ要素である。天気予報データ１００では、例えば要素名「天気」、「最高」及び「最低」が単純型である。  
また、複合型には、単純型内容を持つ複合型と単純型内容を持たない複合型が存在する。単純型内容を持つ複合型は、属性を有する要素であって、内容にテキストのみを持つ要素である。天気予報データ１００では、例えば要素名「降水確率」が挙げられる。一方、単純型内容を持たない複合型は、内容にテキスト以外のものを持つ複合型である。天気予報データ１００では、例えば要素名「場所」及び「気温」が挙げられる。
【００３５】
次に、図５及び図７を参照して、前述した図２のステップＳ４及びＳ５の処理について詳細に説明する。まず、図５のフローチャートを参照して、上記した解析対象データ（検索対象データ）の階層構造を示す構造グラフを作成する処理手順について説明する。なお、この構造グラフは、語彙階層関係グラフを作成するために用いられる。  
データ解析部１１は、構造グラフを初期化する（ステップＳ２１）。この処理により、データ解析部１１は、構造グラフを頂点及び辺を持たないグラフとする。
【００３６】
次に、データ解析部１１のデータ解析制御部１１１は、前述した図２のステップＳ３で検索された解析対象データのルート要素を対象要素として取得する（ステップＳ２２）。なお、ルート要素は、例えば構造化文書（ＸＭＬデータ）の要素を全て包含する要素である。  
データ解析制御部１１１は、取得された対象要素の要素名を取得し（ステップＳ２３）、対象要素に属性が指定されているか否かを判定する（ステップＳ２４）。さらに、対象要素に属性が指定されていると判定されると（ステップＳ２４のＹＥＳ）、当該対象要素に指定されている属性の属性名及び属性値を取得する（ステップＳ２５）。取得された属性値に対して形態素解析を実行し、その結果により、属性値に含まれる名詞を抽出する（ステップＳ２６）。  
なお、ステップＳ２４において、対象要素に属性が指定されていないと判定されると、上記したステップＳ２５及びＳ２６の処理は実行されない。
【００３７】
次に、データ解析制御部１１１は、対象要素が前述した単純型または単純型内容を持つ複合型であるか否かを判定する（ステップＳ２７）。対象要素が単純型または単純型内容を持つ複合型であると判定された場合（ステップＳ２７のＹＥＳ）、当該対象要素の内容を取得する（ステップＳ２８）。取得された対象要素の内容に対して形態素解析を実行し、その結果により、対象要素の内容に含まれる名詞を抽出する（ステップＳ２９）。  
なお、ステップＳ２７において、対象要素が単純型または単純型内容を持つ複合型でないと判定された場合、上記したステップＳ２８及びＳ２９の処理は実行されない。
【００３８】
次に、語彙階層関係グラフ作成部１１２は、取得された要素名、属性名またはステップＳ２６またはＳ２８で抽出された名詞（語彙）に対して、スコアリングを行う（ステップＳ３０）。語彙階層関係グラフ作成部１１２は、例えば評価値を用いてスコアリング処理を実行する。
【００３９】
ここで、評価値の例について具体的に説明する。語彙階層関係グラフ作成部１１２は、以下の例えば第１の評価値から第７の評価値のうち複数の評価値を用いてスコアリング処理を実行する。まず、要素名または属性名の場合の評価値の例について説明する。
【００４０】
第１の評価値は、例えば解析対象データ内における要素名または属性名の出現回数に応じて算出される。例えば出現回数が多いものに対しては、評価値は高くなる。  
第２の評価値は、出現位置に応じて算出される。この場合、出現位置（階層）が深いものほど、評価値は小さくなる。例えば階層の深さをdepthとすると、評価式１／depthまたは１／（log depth）＋１によって第２の評価値は算出される。なお、階層の深さは、ルート要素を１とする。  
また、例えば管理者３０によって条件として指定された語彙が要素名であれば、要素名が当該指定された語彙である要素以下の要素または属性の深さについては、要素名が当該指定された語彙である要素の深さは０として扱い、これに基づいて、上記した第２の評価値が求められる構成であってもよい。
【００４１】
第３の評価値は、子ノード（子要素、属性）に応じて算出される。この場合、子ノード数が多いほど、評価値は大きくなる。例えば子ノード数をcountとすると、評価式count／全ノード数によって第３の評価値は算出される。なお、ノードとは、要素、要素の内容、属性名、属性値を総称したものである。  
第４の評価値は、要素名であるか属性名であるかに応じて算出される。例えば要素名または属性名によって、評価値を算出する際に用いる係数を変更する。  
第５の評価値は、要素名または属性名に関係するテキストの内容に応じて算出される。例えば管理者３０によって条件として指定された語彙が要素の内容または属性値に含まれている場合には、要素の内容に当該指定された語彙を含む要素の要素名、または属性値に当該指定された語彙を含む属性の属性名に対する評価値は大きくなる。  
要素名または属性名（に含まれる語彙）の場合、例えば上記した第１から第５の評価値を含む複数の評価値の合計によって、スコアリングされる。
【００４２】
次に、要素の内容または属性値の場合の評価値の例について説明する。第６の評価値は、形態素解析を行った結果、取得された名詞または固有名詞などの出現回数に応じて算出される。例えば出現回数が多いものに対しては、評価値は大きくなる。  
第７の評価値は、要素の内容または属性値に関係するノード名に応じて算出される。なお、ノード名は、ここでは要素名または属性名を示す。例えば管理者３０によって条件として指定された語彙が要素名又は属性名である場合、要素名が当該指定された要素の内容または属性名が当該指定された語彙の属性値の評価値は大きくなる。要素の内容または属性値の場合、例えば上記した第６または第７の評価値を含む複数の評価値の合計によって、スコアリングされる。
【００４３】
次に、語彙階層関係グラフ作成部１１２は、取得された要素名、属性名またはステップＳ２６またはＳ２８で抽出された語彙をラベル（名称）として持ち、それぞれノードタイプを保持する頂点として構造グラフに追加する（ステップＳ３１）。ノードタイプは、要素名、要素の内容、属性名または属性値を示す。  
語彙階層関係グラフ作成部１１２は、定義に従って、構造グラフに辺を追加する（ステップＳ３２）。辺は、構造グラフ上の要素名、属性名またはステップＳ２６またはＳ２８で抽出された語彙相互間の階層関係を表す。ここで、上記した定義には、例えば矢印（辺）の向きにより「親要素名から子要素名」、「要素名からその属性名」、「属性名から属性値」、「要素名からのその要素の内容に含まれる文字列」、「親要素の属性名から子要素名」、「親要素の属性値に含まれる文字列から子要素名」等が含まれる。
【００４４】
語彙階層関係グラフ作成部１１２は、解析対象データに基づいて、対象要素が子要素を持つか否かを判定する（ステップＳ３３）。対象要素が子要素をもつと判定された場合（ステップＳ３３のＹＥＳ）、データ解析制御部１１１は、当該子要素を取得し（ステップＳ３４）、そして、取得された子要素を対象要素として、上記したステップＳ２３に戻って処理を繰り返す。
【００４５】
一方、ステップＳ３３において対象要素が子要素をもたないと判定された場合、語彙階層関係グラフ作成部１１２は、ステップＳ３０においてスコアリングされた結果を下に語彙を抽出する（ステップＳ３５）。このとき、語彙階層関係グラフ作成部１１２は、語彙（ここでは、取得された要素名、属性名、またはステップＳ２６またはＳ２８で抽出された語彙）のうち、スコア（評価値の合計）が所定の値以上の語彙を抽出する。なお、この所定の値は、予め設定されていてもよいし、処理の度に例えば管理者３０によって設定される構成でもよい。また、語彙階層関係グラフ作成部１１２は、例えば管理者３０によって指定された語数の語彙を評価値の大きい順に抽出する構成でもよい。
【００４６】
語彙階層関係グラフ１１２は、ステップＳ３５において抽出された語彙でもなく、管理者３０によって指定された語彙でもない語彙をラベルとして持つ頂点及びその頂点に隣接する辺を削除する（ステップＳ３６）。ステップＳ３６において削除処理を終えたグラフが、解析対象データの階層構造を示す構造グラフとなる。
【００４７】
図６は、図５のフローチャートに示す処理によって作成された天気予報データ１００の構造グラフ２００の一例を示す。なお、この構造グラフ２００は、例えば管理者３０によって、条件として「天気」の語彙が指定されて作成されたものとする。
【００４８】
図６に示すように、構造グラフ２００には、要素名として「場所」、「予報」、「天気」、「気温」及び「降水確率」が示されている。構造グラフ２００には、属性名として「都道府県」が示され、属性値に含まれる文字列として「東京都」、「神奈川県」及び「埼玉県」が示されている。また、構造グラフ２００には、要素名が「天気」である要素の内容に含まれる文字列として「晴れ」、「くもり」及び「雨」が示されている。なお、図６では、グラフの表記においてＸＭＬ上でのノードタイプによって頂点の表記を変えている。また、構造グラフ２００には、例えば要素名「場所」から要素名「予報」に向かって辺が示される。この辺は、前述したような定義に従って追加されたものである。
【００４９】
なお、図４に示す天気予報データ１００が有する要素名、属性名、属性値または要素の内容のうち、構造グラフ２００に示されていない語彙については、前述した図５のステップＳ３６において削除されたものとする。削除された語彙は、例えばスコアリングされた結果、所定の値より評価値が小さく、かつ管理者３０によって指定されていない語彙である。
【００５０】
次に、図７のフローチャートを参照して、構造グラフを用いて語彙階層関係グラフを作成する処理手順について説明する。なお、ここで用いられる構造グラフは、図６示す構造グラフ２００であるものとして説明する。  
まず、語彙階層関係グラフ作成部１１２は、作成された構造グラフ２００を参照して、当該構造グラフ２００に示される頂点と同一のラベルを持つ頂点を語彙階層関係グラフに追加する（ステップＳ４１）。このとき、構造グラフ２００に同一のラベルを持つ頂点が複数存在する場合には、当該頂点が重複しないように頂点を追加する。
【００５１】
語彙階層関係グラフ作成部１１２は、構造グラフ２００を参照して、特定の距離以内にある任意の２頂点を取得する（ステップＳ４２）。ここで、構造グラフ２００上の１階層の距離を１とすると、特定の距離は２以上が好ましい。また、この特定の距離は、例えば管理者３０によって事前に指定されてもよいし、処理の度に例えば管理者３０によって指定される構成であってもよい。
【００５２】
語彙階層関係グラフ１１２は、取得された任意の２頂点に対応する語彙階層関係グラフ上の２頂点間に、辺を追加する（ステップＳ４３）。ここで、追加される辺は、ラベルを持つ。辺のラベルは、取得された任意の２頂点の構造グラフ２００上でのノードタイプの組を示す。  
なお、語彙階層関係グラフ格納部１３２を更新する場合には、語彙階層関係グラフ作成部１１２は、語彙階層関係グラフを初期化してから図７のフローチャートによって示される処理を実行する。
【００５３】
図８は、図７に示す処理によって作成された語彙階層関係グラフの概略図である。図８に示す語彙階層関係グラフ３００は、上記した特定の距離を２として作成された語彙階層関係グラフである。なお、図８は、便宜的に「東京都」をラベルとして持つ頂点（以下、単に「東京都」と表記）を中心とした部分のみを示す。「東京都」以外のラベルを持つ頂点間の辺は、点線で示されており、当該辺のラベルは省略されている。また、「東京都」以外の頂点については、例えば辺等の一部が省略されている。  
上記した図６に示す構造グラフ２００の「東京都」から距離が２以内に存在する頂点は、「場所」、「都道府県」、「予報」、「天気」、「気温」及び「降水確率」である。以下、この頂点を特定距離内頂点と称する。
【００５４】
また、図８に示す語彙階層関係グラフ３００では、「東京都」及び特定距離内頂点の各々が辺で結ばれ、辺の各々にはラベルが付されている。例えば「場所」及び「東京都」においては、「場所」から「東京都」に辺が結ばれており、当該辺のラベルは、「要素名、属性値」である。これは、「場所」のノードタイプが要素名であり、「東京都」のノードタイプが属性値であることを示す。なお、図８に示す語彙階層関係グラフ３００では省略されているが、「東京都」以外の頂点についても同様に、特定距離内頂点と辺で結ばれており、その辺の各々にはラベルが付されている。
【００５５】
次に、図９のフローチャートを参照して、前述した図３に示すステップＳ１２の処理について詳細に説明する。  
検索実行部１２のクエリ作成部１２１は、図３に示すステップＳ１１の処理において検索者２０によって指定された検索条件パス式を入力する。以下、クエリ作成部１２１によって入力された検索条件パス式を入力パス式と称する。ここでは、入力パス式は、例えば「東京都／天気」であるものとして説明する。
【００５６】
なお、入力パス式によって示される文字列（語彙）の順列は、当該順列の文字列の順によって階層関係を示す。上記したように入力パス式が「東京都／天気」である場合には、「東京都」から「天気」に階層関係を有する旨を示す。以下、この階層関係を入力パス式の階層関係と称する。
【００５７】
クエリ作成部１２１は、語彙階層関係グラフ格納部１３２を参照して、入力パス式の階層関係を例えば親子関係として含む語彙階層関係グラフを取得する（ステップＳ５１）。なお、クエリ作成部１２１は、例えば入力パス式の階層関係の全てを親子関係として含む語彙階層関係グラフが語彙階層関係グラフ格納部１３２に存在しない場合には、当該入力パス式の階層関係の一部を親子関係として含む語彙階層関係グラフを取得する。  
また、例えば入力パス式がＡ／Ｂ／Ｃ（当該入力パス式の階層関係がＡからＢ、ＢからＣ）である場合に、当該階層関係を完全に含む語彙階層関係グラフが語彙階層関係グラフ格納部１３２に存在しない場合を想定する。この場合には、クエリ作成部１２１は、例えばＡからＢの階層関係のみを親子関係として含む語彙階層関係グラフ、またはＢからＣの階層関係のみを親子関係として有する語彙階層関係グラフを取得する。
【００５８】
クエリ作成部１２１は、取得された語彙階層関係グラフに基づいて、入力パス式に含まれる文字列の各々のノードタイプを判別する（ステップＳ５２）。  
クエリ作成部１２１は、入力パス式の階層関係及び判別されたノードタイプに基づいて、当該入力パス式に含まれる文字列間の階層関係を有する検索対象データを検索するための検索式、例えばXPath式を作成する。つまり、クエリ作成部１２１は、入力パス式をXPath式に変換する（ステップＳ５３）。または、クエリ作成部１２１は、変換データ格納部１３３に格納されている変換データに基づいてXPath式に変換する。
【００５９】
なお、ステップＳ５１において、クエリ作成部１２１によって複数の語彙階層関係グラフが取得された場合は、当該取得された語彙階層関係グラフの各々についてステップＳ５２及びＳ５３の処理が実行される。これにより、複数のXPath式が作成（変換）された場合は、当該複数のXPath式を互いにＯＲ（論理和）の関係として、検索対象データ格納部１３１に対して検索処理が実行される。
【００６０】
ここで、図１０は、変換データ格納部１３３に格納されている変換データのデータ構造の一例を示す。なお、この変換データは、事前に語彙階層関係グラフにおける各関係に対するXPath式への変換方法として定義されている。図１０に示すように、変換データは、関係情報及び当該情報に対応付けられているXPath式情報を含む。
【００６１】
関係情報は、語彙（文字列）間の階層関係を示す。図１０に示す例では、例えば親子（要素名、要素名）の関係がある。これは、当該語彙のそれぞれのノードタイプが要素名であることを示す。また、同様に、親子（要素名、要素の内容）は、親となる語彙のノードタイプが要素名であり、異なる語彙（子）のノードタイプが要素の内容（に含まれる文字列）であることを示す。また、例えば兄弟（要素名、要素名、…）の関係は、語彙間の関係が同じ階層、同じノードタイプであることを示している。
【００６２】
また、XPath式情報は、対応付けられている関係を示す情報によって示される語彙間の関係に適合する検索対象データ（構造化文書）を検索するために適当なXPath式を示す。例えば親子（要素名、要素の内容）の関係情報に対応付けられているXPath式情報は、XPath式「//element1[.//elemnt2]」を示す。また、同様に、例えば親子（要素名、要素の内容）の関係情報に対応付けられているXPath式情報は、XPath式「//element1[./text()=”context”]」を示す。なお、上記したXPath式において、element1及びelement2は要素名を示し、contextは要素の内容を示す。また、これ以外にattriは属性名を示し、valueは属性値を示す。
【００６３】
なお、図１０に示す変換データに含まれる関係情報には、２つの語彙の階層関係が定義されているが、これらを複数組み合わせることにより、３つ以上の語彙の階層関係を定義することも可能である。これにより、３つ以上の語彙を含む入力パス式をXPath式に変換することも可能である。
【００６４】
再び図９のステップＳ５３に戻ると、クエリ作成部１２１は、ステップＳ５２において判別されたノードタイプ及び入力パス式の階層関係から、適合する関係情報を特定する。クエリ作成部１２１は、特定された関係情報に対応付けられたXPath式情報に基づいて、XPath式に変換する。
【００６５】
例えば上記したように入力パス式が「東京都／天気」であり、ステップＳ５１において図８に示す語彙階層関係グラフ３００が取得された場合について説明する。この場合、語彙階層関係グラフ３００において、「東京都」は属性値であり、「天気」は要素名である。また、「東京都」から「天気」に辺が結ばれていることから、「東京都」及び「天気」は親子の関係である。よって、クエリ作成部１２１は、例えば図１０に示す変換データに基づいて、親子（属性値、要素名）を示す関係情報に対応するXPath式情報によって示されるXPath式を作成する。つまり、クエリ作成部１２１は、入力パス式「東京都／天気」をXPath式「//*[./@*=”東京都”and.//天気]」に変換する。このXPath式に基づいて、検索対象データ格納部１３１に対して検索処理が実行される。XPath式「//*[./@*=”東京都”and.//天気]」は、「東京都」及び「天気」が親子関係であり、かつ、「東京都」のノードタイプが属性値であり、「天気」のノードタイプが要素名であるＸＭＬデータ（構造化文書）を検索するための検索式である。なお、「東京都」及び「天気」は直接親子関係を有する必要はなく、例えば孫またはひ孫の関係であっても検索可能である。  
ここでは、変換データはXPath式情報を含み、入力パス式をXPath式に変換する例を示したが、例えばXQueryまたはSQL等の任意のデータソースに対する任意の問合せ言語へ変換する構成でもよい。
【００６６】
図１１は、図４の天気予報データ１００に対し、上記したクエリ作成部１２１によって作成されたXPath式「//*[./@*=”東京都”and.//天気]」による検索結果４００を示す。検索結果４００は、属性値「東京都」及びその親子関係（ここでは、孫関係）である要素名「天気」を含むＸＭＬデータとなる。
【００６７】
ところで、例えば入力パス式の階層関係が複数存在する場合において、当該複数の階層関係のうち、語彙階層関係グラフ格納部１３２内の語彙階層関係グラフに設定されていない階層関係（未設定階層関係）が指定された場合を想定する。この場合、未設定階層関係に対する設定（設定レベル）を予め定義しておく構成であっても構わない。予めレベルを設定しておくことにより、所望の検索結果範囲を得ることができる。
【００６８】
図１２は、予め定義された設定レベルの一例を示す。図１２の例では、未設定階層関係を構成する２つの語彙に設定するノードタイプと、未設定階層関係を構成する２つの語彙に設定する階層関係についてレベル１から３が定義されている。なお、レベルの段階は、例えば検索者２０によって適宜設定される。
【００６９】
例えばレベル１では、入力パス式に含まれる未設定階層関係については、無視することが定義されている。例えば入力パス式が、Ａ／Ｂ／Ｃである場合を想定する。この場合、語彙階層関係グラフ格納部１３２に格納されている１つの語彙階層関係グラフにおいて、ＡからＢの階層関係は存在するが、ＢからＣの階層関係が存在しない場合、当該ＢからＣの階層関係は無視し、ＡからＢの階層関係のみからXPath式に変換することを示す。  
また、例えばレベル２では、タイプは「要素名」を示し、動作内容は「未設定階層関係を親子関係に設定」を示す。つまり、未設定階層関係を構成する２つの語彙のノードタイプをそれぞれ要素名に設定し、当該２つの語彙の階層関係を親子関係として、入力パス式がXPath式に変換される。  
また、例えばレベル３では、タイプは「すべて」を示し、動作内容は「未設定階層関係を親子関係または兄弟関係に設定」を示す。つまり、未設定階層関係を構成する２つの語彙の各々のノードタイプは、要素名、属性名、属性値または要素の内容のそれぞれに設定される。また、設定された全ての組み合わせ毎に、語彙間の階層関係に親子関係または兄弟関係が設定される。設定された全ての組み合わせ及び階層関係に基づいて、入力パス式がXPath式に変換される。
【００７０】
次に、図１３及び図１４を参照して、検索結果評価装置１０における検索結果評価処理（前述した図３に示すステップＳ１５の処理）について具体的に説明する。ここで、入力パス式（検索条件パス式）は、「発明／（合田 and 構造化文書）」であるものとする。この入力パス式は、例えば「発明のうち、合田が行ったもので、かつ、構造化文書を含むもの」といった意味を表す。また、この入力パス式からは、例えば「//発明[.//text()=”合田” and .//text()=”構造化文書”]」のようなXPath式がクエリ作成部１２１により作成される。
【００７１】
なお、上記したXPath式「//発明[.//text()=”合田” and .//text()=”構造化文書”]」に応じて検索対象データ格納部１３１から検索された検索結果として、図１３に示す検索対象データ１０１及び図１４に示す検索対象データ１０２が得られたものとする。
【００７２】
以下、検索結果として得られた検索対象データ１０１及び検索対象データ１０２のそれぞれについて、パス式文書間評価部１４１が入力パス式（ここでは、「発明／（合田 and 構造化文書）」）に基づいて評価値を算出するアルゴリズム（以下、第１のアルゴリズムと表記）の一例について説明する。  
まず、パス式文書間評価部１４１は、例えば入力パス式で階層関係にある全てのキーワード（文字列）間に対して、検索結果として得られた検索対象データ１０１及び検索対象データ１０２の各々における距離を算出する。ここで、キーワード間の距離とは、例えば要素からその子要素、要素からその属性名に対しては距離を１とする。また、要素からその要素の内容、属性名からその属性値に対しても、同様に距離を１とする。
【００７３】
次に、パス式文書間評価部１４１は、検索結果として得られた検索対象データ毎に、算出された距離の逆数を求め、それらの合計を当該検索対象データの評価値として算出する。  
ここで、図１３に示す検索対象データ１０１及び図１４に示す検索対象データ１０２の評価値の算出処理について具体的に説明する。
【００７４】
入力パス式は「発明／（合田 and 構造化文書）」であるため、当該入力パス式の階層関係（にあるキーワード）は、「発明→合田」及び「発明→構造化文書」である。
【００７５】
検索対象データ１０１における「発明→合田」に対応する距離を算出する。この場合、検索対象データ１０１の要素である「発明」からその子要素である「発明者」の距離が１であり、要素である「発明者」からその要素の内容である「合田」の距離が１である。よって、検索対象データ１０１における「発明→合田」に対応する距離は２と算出される。
【００７６】
また、検索対象データ１０１における「発明→構造化文書」に対応する距離を算出する。この場合、検索対象データ１０１の要素である「発明」からその子要素である「名称」の距離が１であり、要素である「名称」からその要素の内容である「構造化文書」の距離が１である。よって、検索対象データ１０１における「発明→構造化文書」に対応する距離は２と算出される。  
上記したように評価値はキーワード間の距離の逆数の合計であるため、検索対象データ１０１の評価値は、１／２＋１／２＝１となる。
【００７７】
一方、検索対象データ１０２における「発明→合田」に対応する距離を算出する。この場合、検索対象データ１０２の要素である「発明」からその子要素である「発明者」の距離が１であり、要素である「発明者」からその子要素である「氏名」の距離が１であり、要素である「氏名」からその要素の内容である「合田」の距離が１である。よって、検索対象データ１０２における「発明→合田」に対応する距離は３と算出される。
【００７８】
また、検索対象データ１０２における「発明→構造化文書」に対応する距離を算出する。この場合、検索対象データ１０２の要素である「発明」からその子要素である「内容」の距離が１であり、要素である「内容」からその子要素である「名称」の距離が１であり、要素である「名称」からその要素の内容である「構造化文書」の距離が１である。よって、検索対象データ１０２における「発明→構造化文書」に対応する距離は３と算出される。  
上記したように評価値はキーワード間の距離の逆数の合計であるため、検索対象データ１０２の評価値は、１／３＋１／３＝２／３となる。
【００７９】
パス式文書間評価部１４１は、算出された検索対象データ１０１及び検索対象データ１０２の評価値に基づいて、当該検索対象データ１０１及び検索対象データ１０２の順位付けを行う。パス式文書間評価部１４１は、例えば算出された評価値が大きい検索対象データ（ここでは、検索対象データ１０１）を上位に順位付ける。したがって、この場合には検索対象データ１０１、検索対象データ１０２の順で検索結果が検索者２０に対して提示されることになる。  
なお、上記した第１のアルゴリズムは一例であり、例えばキーワード間の距離の定義または評価値の算出方法は、ここで説明した以外のものであっても構わない。
【００８０】
上記したように本実施形態においては、検索者から指定された複数の文字列（語彙）を含むパス形式の検索条件（検索条件パス式）から、語彙階層関係グラフ格納部１３２に格納されている語彙階層関係グラフ及び変換データ格納部１３３に格納されている変換データに基づいて、当該検索条件に含まれる文字列間の階層関係に適合する構造化文書（検索対象データ）を検索するためのXPath式が作成される。この作成されたXPath式に基づいて、検索対象データ格納部１３１に対して検索が実行される。これにより、検索者２０は、検索対象となる構造化文書のデータ構造を意識することなく、例えばキーワード（文字列）を指定するような簡便さで、構造化文書の階層関係を考慮した検索を実行することが可能となる。
【００８１】
また、本実施形態においては、上記したXPath式により検索された検索結果を、検索者２０によって指定された検索条件に基づいて評価することにより、当該検索者２０が意図した階層構造の構造化文書をより上位に順位付けして検索結果を返すことができる。これにより、検索者２０は、効率的に自身が必要とするデータ（構造化文書）を取得することが可能となる。
【００８２】
また、本実施形態においては、構造化文書の階層構造を示す構造グラフ上で、例えば任意の２頂点の特定の距離に基づいて、語彙階層関係グラフが作成される。これにより、この語彙階層関係グラフを用いて検索処理が実行される際、検索対象となる構造化文書上で、検索者２０によって指定された語彙が直接階層関係にない構造化文書であっても考慮して検索することが可能となる。
【００８３】
また、本実施形態においては、予め定義されたレベルを設定指定おくことで、未設定階層関係が入力パス式として指定された場合であっても、当該設定されたレベルに応じて、当該未設定階層関係を静的または動的に設定することが可能となる。
【００８４】
なお、上記した本実施形態においては、検索者２０によって検索実行部１２に検索要求が出され、管理者３０によってデータ解析部１１に語彙階層関係グラフ作成要求が出される構成としているが、全ての要求を入力する要求制御部を設ける構成でも構わない。この場合、要求制御部は、入力された要求を解釈し、データ解析部１１または検索実行部１２に処理を自動で振り分けることが可能となる。
【００８５】
また、本実施形態に係る検索結果評価装置１０は、上記したように検索装置であるものとして説明したが、検索対象データを検索対象データ格納部１３１に登録する機能を有する構成であってもよい。また、検索結果評価装置１０は、検索対象データを更新または削除する機能を含む管理装置として利用される構成であっても構わない。
【００８６】
［第２の実施形態］
次に、図１５を参照して、本発明の第２の実施形態に係る検索結果評価装置について説明する。図１５は、本実施形態に係る検索結果評価装置の主として機能構成を示すブロック図である。なお、前述した図１と同様の部分には同一参照符号を付してその詳しい説明を省略する。ここでは、図１と異なる部分について主に述べる。
【００８７】
図１５に示す検索結果評価装置４０は、検索実行部４１及び検索結果評価部４２を含む。検索実行部４１は、クエリ作成部４１１を含む。クエリ作成部４１１は、例えば検索者２０によって指定された検索条件パス式を複数の検索条件パス式に展開する処理を実行する。このとき、クエリ作成部４１１は、検索者２０によって指定された検索条件パス式に含まれる複数の文字列に基づいて、当該検索条件パス式を展開する。クエリ作成部４１１は、例えば検索者２０によって指定された検索条件パス式に含まれる複数の文字列の並び替えることによって複数の検索条件パス式に展開する。これにより、クエリ作成部４１１は、検索者２０によって指定された検索条件パス式から複数の検索条件パス式を作成する。また、クエリ作成部４１１は、語彙階層関係グラフ格納部１３２及び変換データ格納部１３３を参照して、検索者２０によって指定された検索条件パス式及び展開された複数の検索パス式から検索式（例えばXPath式）を作成する。
【００８８】
検索結果評価部４２は、パス式間評価部４２１を含む。パス式間評価部４２１は、クエリ作成部４１１によって展開された複数の検索条件パス式の各々を、例えば検索者２０によって指定された検索条件パス式に基づいて評価する。この場合、パス式間評価部４２１は、検索者によって指定された検索条件パス式に含まれる複数の文字列の並び順及びクエリ作成部４１１によって展開された複数の検索条件パス式の各々に含まれる複数の文字列の並び順に基づいて、当該展開された複数の検索条件パス式の各々の評価値を算出する。パス式間評価部４２１は、算出された評価値に基づいて、展開された複数の検索条件パス式の順序付けを行う。
【００８９】
次に、図１６のフローチャートを参照して、図１５に示す検索結果評価装置４０の検索者２０からの検索要求に応じて検索が実行される際の処理手順について説明する。  
まず、検索者２０は、検索条件パス式を指定して検索要求を出す（ステップＳ６１）。この検索条件パス式には、複数の文字列（語彙）が含まれる。ここでは、検索条件パス式は、「天気／東京都」であるものとして説明する。
【００９０】
検索実行部４１のクエリ作成部４１１は、検索者２０によって指定された検索条件パス式を入力する。以下、クエリ作成部４１１によって入力された検索条件パス式を入力パス式と称する。  
次に、クエリ作成部４１１は、入力パス式を展開する（ステップＳＳ６２）。クエリ作成部４１１は、入力パス式に含まれる文字列を並び替えることによって、当該入力パス式を複数の検索条件パス式に展開する。このとき、クエリ作成部４１１は、検索条件パス式に含まれる全ての文字列の順列（並び順）毎に展開する。具体的には、入力パス式が「天気／東京都」であれば、当該入力パス式は、「天気／東京都」及び「東京都／天気」のように複数の検索条件パス式に展開される。以下、クエリ作成部４１１によって展開された複数の検索条件パス式の各々を展開パス式と称する。
【００９１】
なお、展開パス式の各々によって示される文字列の順列は、当該順列の文字列の順によって階層関係を示す。例えば展開パス式が「天気／東京都」である場合には、「天気」から「東京都」に階層関係を有する旨を示す。以下、この階層関係を展開パス式の階層関係と称する。
【００９２】
また、上記したステップＳ６２においては、入力パス式に含まれるすべての文字列の順列毎に展開する場合について説明したが、例えば語彙階層関係グラフ格納部１３２を参照して、上記した展開パス式の階層関係を含む語彙階層関係グラフが存在する展開パス式のみが展開される構成でもよい。これにより、以下のステップにおいて処理される展開パス式の数が少なくなるため、処理量を減少させることが可能となる。
【００９３】
また、入力パス式に含まれる文字列を形態素解析し、その結果により抽出された文字列により当該入力パス式を展開する構成でもよい。この場合、例えば入力パス式が「天気／くもり時々晴れ」である場合、「くもり時々晴れ」を形態素解析し、展開パス式を「天気／くもり／晴れ」、「天気／くもり」及び「天気／晴れ」のように展開することが可能となる。
【００９４】
また、入力パス式の展開には、上記したような当該入力パス式に含まれる文字列の単純な並び替えだけでなく、例えば「and」、「or」または「not」のような論理演算による展開も含まれる。つまり、入力パス式が「Ａ／Ｂ／Ｃ」である場合には、例えば「Ａ／（Ｂ and Ｃ）」に展開することも可能である。
【００９５】
次に、クエリ作成部４１１は、展開パス式の各々に対して、スコアリングを行う（ステップＳ６３）。例えば評価値を用いてスコアリング処理を実行する。また、クエリ作成部４１１は、必要に応じて語彙階層関係グラフ格納部１３２に格納されている語彙階層関係グラフを利用して評価値を算出する。
【００９６】
ここで、上記したスコアリング処理に用いられる評価値の例について具体的に説明する。クエリ作成部４１１は、以下の例えば第８の評価値から第１０の評価値を含む複数の評価値を用いてスコアリング処理を実行する。  
第８の評価値は、入力パス式と展開パス式の各々とを比較して、両者に含まれる文字列の順序の違いに応じて算出される。この場合、入力パス式に含まれる文字列の順序と比較して、順序が異なる文字列が多く含まれる展開パス式に対しては、評価値は小さくなる。例えばｘ＝入力パス式と順序の異なる文字列の数、Ｘ＝入力パス式または展開パス式に含まれる文字列の数とすると、例えば評価式Ｘ／（log a x）＋Ｎによって第８の評価値は算出される。ただし、評価式Ｘ／（log a x）＋Ｘにおいて、入力パス式と順序の異なる文字列がない場合、つまり、ｘ＝０の場合には、評価値１が算出されるものとする。なお、評価式において、「a」は底とし、任意に設定可能である。以下の評価値においても同様である。
【００９７】
第９の評価値は、入力パス式と展開パス式の各々とを比較して、両者の文字列（語彙）の種類の違いに応じて算出される。この場合、入力パス式に含まれる語彙の種類と異なる種類の語彙が多く含まれる展開パス式に対しては、評価値は小さくなる。ここで、例えば展開パス式に含まれる語彙が、上記した入力パス式に含まれる語彙そのものでなく、形態素解析して抽出された語彙である場合には、語彙の種類が異なるものとして扱われる。例えばｙ＝入力パス式に含まれる語彙の種類と異なる種類の語彙の数、Ｙ＝入力パス式または展開パス式に含まれる語彙の数とすると、例えば評価式Ｙ／（log a y）＋Ｙによって第９の評価値は算出される。ただし、評価式Ｙ／（log a y）＋Ｙにおいて入力パス式に含まれる語彙の種類と異なる種類の語彙がない場合、つまり、ｙ＝０の場合には評価値１が算出されるものとする。
【００９８】
第１０の評価値は、展開パス式内で隣接されている文字列（語彙）間の関係に応じて算出される。この場合、展開パス式の階層関係の各々のうち、例えば親子関係として設定されていない階層関係の数が多い場合には、評価値は小さくなる。例えばＺ＝親子関係として設定されていない階層関係の数とすると、例えば評価式１／（log a Ｚ）＋１によって第１０の評価値は算出される。ただし、評価式１／（log a Ｚ）＋１において、設定されていない階層関係がない場合、つまり、Ｚ＝０の場合には評価値１が算出されるものとする。なお、第１０の評価値は、例えば語彙階層関係グラフ格納部１３２に格納されている語彙階層関係グラフの各々について上記した評価式で評価値を求め、当該語彙階層関係グラフの各々について求められた評価値を合計することによって求められる。
【００９９】
展開パス式の各々は、例えば上記した第８から第１０の評価値を含む複数の評価値の合計によってスコアリングされる。クエリ作成部４１１は、スコアリングされた結果を元に、スコア（評価値の合計）が上位の展開パス式を選択する（ステップＳ６４）。以下、クエリ作成部４１１によって選択されたスコアが上位の展開パス式を中間パス式と称する。なお、中間パス式は複数であっても構わない。
【０１００】
検索実行部４１（クエリ作成部４１１）は、入力パス式及び中間パス式を検索結果評価部４２に渡す。  
検索結果評価部４２のパス式間評価部４２１は、検索実行部４１から渡された入力パス式及び中間パス式を取得する。パス式間評価部４２１は、取得された入力パス式に基づいて、取得された中間パス式（の各々）を評価する（ステップＳ６５）。この場合、パス式間評価部４２１は、入力パス式に含まれる複数の文字列の並び順及び中間パス式に含まれる複数の文字列の並び順に基づいて、当該中間パス式の評価値を算出し、算出された評価値に基づいて、中間パス式の順序付けを行う。パス式間評価部４２１は、順序付けされた中間パス式を検索実行部４１に返す。
【０１０１】
ここで、パス式間評価部４２１による中間パス式の評価値を算出する処理について具体的に説明する。ここでは、入力パス式は、「合田／発明／構造化文書」であるものとして説明する。この入力パス式は、例えば「合田が行った発明で構造化文書を含むもの」といった意味を表す。また、クエリ作成部４１１によって入力パス式「合田／発明／構造化文書」から中間パス式「発明／（合田 and 構造化文書）」及び「合田／発明／構造化文書」が作成されたものとする。以下、中間パス式「発明／（合田 and 構造化文書）」を第１の中間パス式、中間パス式「合田／発明／構造化文書」を第２の中間パス式と称する。
【０１０２】
なお、例えば上記ステップＳ６３におけるスコアリングの結果によっては、上記のように入力パス式と第２の中間パス式が同じになる場合もあり得る。この場合には、入力パス式及び第２の中間パス式を１つの検索条件パス式（例えば入力パス式）として扱っても構わない。
【０１０３】
以下、パス式間評価部４２１が第１の中間パス式及び第２の中間パス式の評価値を算出するアルゴリズム（以下、第２のアルゴリズムと表記）の一例について説明する。  
まず、パス式間評価部４２１は、例えば入力パス式及び中間パス式（ここでは、第１の中間パス式及び第２の中間パス式）において同一の階層関係にある同一のキーワードの組み合わせの数（以下、第１の組み合わせ数と表記）を算出する。  
ここで、階層関係とは、入力パス式または中間パス式において、「／」で区切られているキーワードの関係を意味する。また、複数の「／」で区切られているキーワード間にも階層関係があると定義する。例えば入力パス式（中間パス式）が「Ａ／Ｂ／Ｃ」である場合には、当該入力パス式には、「Ａ→Ｂ」、「Ａ→Ｃ」及び「Ｂ→Ｃ」という階層関係が含まれている。
【０１０４】
次に、パス式間評価部４２１は、入力パス式に含まれる複数のキーワード（文字列）のうち、任意の２つのキーワードの組み合わせの数（以下、第２の組み合わせ数と表記）を算出する。上記したように例えば入力パス式が「Ａ／Ｂ／Ｃ」である場合には、任意の２つのキーワードの組み合わせは「Ａ、Ｂ」、「Ａ、Ｃ」及び「Ｂ、Ｃ」であるから、第２の組み合わせ数は３となる。  
パス式間評価部４２１は、算出された第１の組み合わせ数及び第２の組み合わせ数から、第１の組み合わせ数／第２の組み合わせ数を中間パス式の評価値として算出する。
【０１０５】
ここで、上記した第１の中間パス式及び第２の中間パス式の評価値について具体的に説明する。まず、入力パス式「合田／発明／構造化文書」の階層関係は、「合田→発明」、「合田→構造化文書」及び「発明→構造化文書」である。第１の中間パス式「発明／（合田 and 構造化文書）」の階層関係は、「発明→合田」及び「発明→構造化文書」である。また、第２の中間パス式「合田／発明／構造化文書」の階層関係は、「合田→発明」、「合田→構造化文書」及び「発明→構造化文書」である。  
この場合、入力パス式及び第１の中間パス式における第１の組み合わせ数は、１（「発明→構造化文書」）である。また、入力パス式及び第２の中間パス式における第１の組み合わせ数は、３（「合田→発明」、「合田→構造化文書」、「発明→構造化文書」）である。  
また、入力パス式における第２の組み合わせ数は、３（「合田→発明」、「合田→構造化文書」、「発明→構造化文書」）である。  
これにより、第１の中間パス式の評価値は、第１の組み合わせ数／第２の組み合わせ数より、１／３である。また、第２の中間パス式の評価値は、３／３（＝１）である。
【０１０６】
パス式間評価部４２１は、算出された第１の中間パス式及び第２の中間パス式の評価値に基づいて、当該第１の中間パス式及び第２の中間パス式の順序付けを行う。例えば算出された評価値が大きい中間パス式（ここでは、第２の中間パス式）を上位に順位付ける。
【０１０７】
なお、上記した第２のアルゴリズムは一例であり、例えば階層関係の定義または評価値の算出方法は、ここで説明した以外のものであっても構わない。
【０１０８】
次に、クエリ作成部４１１は、語彙階層関係グラフ格納部１３２を参照して、入力パス式毎及び中間パス式毎の階層関係を例えば親子関係として含む語彙階層関係グラフを取得する（ステップＳ６６）。  
なお、クエリ作成部４１１は、例えば入力パス式及び中間パス式の階層関係のすべてを親子関係として含む語彙階層関係グラフが語彙階層関係グラフ格納部１３２に存在しない場合には、当該入力パス式及び中間パス式の階層関係の一部を親子関係として含む語彙階層関係グラフを取得する。例えば入力パス式（中間パス式）がＡ／Ｂ／Ｃ（当該入力パス式の階層関係がＡからＢ、ＢからＣ）である場合に、当該階層関係を完全に含む語彙階層関係グラフが語彙階層関係グラフ格納部１３２に存在しない場合を想定する。この場合、クエリ作成部４１１は、例えばＡからＢの階層関係のみを親子関係として含む語彙階層関係グラフ、またはＢからＣの階層関係のみを親子関係として有する語彙階層関係グラフを取得する。
【０１０９】
クエリ作成部４１１は、取得された語彙階層関係グラフに基づいて、入力パス式及び中間パス式に含まれる文字列（語彙）の各々のノードタイプを判別する（ステップＳ６７）。クエリ作成部４１１は、入力パス式の階層関係及び判別された当該入力パス式に含まれる文字列のノードタイプに基づいて、当該入力パス式に含まれる文字列間の階層関係を有する検索対象データを検索するための検索式、例えばXPath式を作成する。同様に、クエリ作成部４１１は、中間パス式の階層関係及び判別された当該中間パス式に含まれる文字列のノードタイプに基づいて、当該中間パス式に含まれる文字列間の階層関係を有する検索対象データを検索するための検索式（XPath式）を作成する。  
つまり、クエリ作成部４１１は、入力パス式及び中間パス式をそれぞれXPath式に変換する（ステップＳ６８）。このとき、クエリ作成部４１１は、変換データ格納部１３３に格納されている変換データに基づいて、変換処理を実行する。この変換処理については、前述した第１の実施形態と同様であるためその詳しい説明は省略する。
【０１１０】
次に、検索実行部４１の検索制御部１２２は、クエリ作成部４１１によって作成されたXPath式を指定して、記憶部１３に対して検索要求を出力する。  
記憶部１３は、検索制御部１２２からの検索要求に応じて、当該検索制御部１２２の制御の下、検索対象データ格納部１３１から当該検索要求に合致する検索対象データ（構造化文書）を検索する（ステップＳ６９）。このとき、記憶部１３は、クエリ作成部４１１によって作成されたXPath式の各々に基づいて検索を実行する。記憶部１３は、クエリ作成部４１１によって作成されたXPath式毎に、検索された検索対象データを含む検索結果データを検索制御部１２２に返す。これにより、検索制御部１２２は、XPath式毎の検索結果データを取得する。
【０１１１】
以下、入力パス式から作成（変換）されたXPath式に基づいて検索された検索対象データを含む検索結果データを入力パス式の検索結果データと称する。また、中間パス式から作成されたXPath式に基づいて検索された検索対象データを含む検索結果データを中間パス式の検索結果データと称する。なお、単に検索結果データと表記する場合には、入力パス式の検索結果データ及び中間パス式の検索結果データの両方を含むものとする。
【０１１２】
検索制御部１２２は、取得された検索結果データ及び入力パス式を検索結果評価部４２に渡す。  
検索結果評価部４２のパス式文書間評価部１４１は、検索制御部１２２から渡された入力パス式、検索結果データ及びパス式間評価部４２１による中間パス式の順序付けの結果に基づいて、当該検索結果データに含まれる検索対象データ（構造化文書）の評価を行う（ステップＳ７０）。
【０１１３】
このときパス式文書間評価部１４１は、検索制御部１２２から渡された入力パス式に基づいて、入力パス式及び中間パス式の検索結果データ毎に評価値を算出する。  
つまり、パス式文書間評価部１４１は、検索制御部１２２から渡された入力パス式に基づいて、入力パス式の検索結果データに含まれる検索対象データの各々の評価値を算出する。これにより、パス式文書間評価部１４１は、算出された評価値に基づいて、入力パス式の検索結果データにも含まれる検索対象データに対して順序付けを行う。
【０１１４】
また、パス式文書間評価部１４１は、検索制御部１２２から渡された入力パス式に基づいて、中間パス式の検索結果データに含まれる検索対象データの各々の評価値を算出する。これにより、パス式文書間評価部１４１は、算出された評価値に基づいて、中間パス式の検索結果データに含まれる検索対象データに対して順序付けを行う。  
なお、この検索対象データの評価値は、前述した第１の実施形態の例えば第１のアルゴリズムにより算出されるため、その詳しい説明は省略する。
【０１１５】
また、パス式文書間評価部１４１は、上記ステップＳ６５においてパス式間評価部４２１によって中間パス式に対する順序付けの結果及び上記検索対象データの各々に対する順序付けの結果に基づいて、検索結果データに含まれる検索対象データについて順序付けを行う。パス式文書間評価部１４１によって順序付けされた検索対象データを含む検索結果データは、検索実行部４１に渡される。
【０１１６】
検索制御部１２２は、パス式文書間評価部１４１から渡された検索結果データを、検索者２０からの検索要求に対する検索結果として検索者２０に返す（ステップＳ７１）。これにより検索者２０は、検索要求に対する検索結果を取得する（ステップＳ７２）。この場合、検索結果は、パス式文書間評価部１４１によって順序付けされた結果が上位の検索対象データから順に検索者２０に対して提示（表示）される。
【０１１７】
なお、ステップＳ６６において、クエリ作成部４１１によって複数の語彙階層関係グラフが取得された場合は、取得された語彙階層関係グラフの各々についてステップＳ６７及びＳ６８の処理が実行される。これにより、例えば入力パス式（または中間パス式）から複数のXPath式が作成（変換）された場合は、当該複数のXPath式を互いにＯＲ（論理輪）の関係として、ステップＳ６９の処理が実行される。
【０１１８】
次に、図１７及び図１８を参照して、パス式文書間評価部１４１による検索対象データの順序付けの具体例について説明する。  
ここで、クエリ作成部４１１によって入力パス式から作成された中間パス式は、中間パス式１及び中間パス式２であるものとする。  
図１７は、各検索条件パス式（入力パス式、中間パス式１、中間パス式２）の検索結果データの一例を示す。図１７に示す例では、入力パス式の検索結果データには、検索対象データ１〜３が含まれる。同様に、中間パス式１の検索結果データには、検索対象データ４〜６が含まれる。また、中間パス式２の検索結果データには、検索対象データ７及び８が含まれる。
【０１１９】
ここで、パス式間評価部４２１が例えば前述した第２のアルゴリズムにより算出した中間パス式１の評価値が１／３、中間パス式２の評価値が１であるものとする。この場合、パス式間評価部４２１は、中間パス式２、中間パス式１の順に順序付けを行う。  
また、パス式文書間評価部１４１が例えば前述した第１のアルゴリズムにより入力パス式、中間パス式１及び中間パス式２の検索結果データ毎に対して評価値を算出したものとする。この結果、入力パス式の検索結果データにおいては、算出された評価値に基づいて、検索対象データ１、検索対象データ３、検索対象データ２の順に順序付けされたものとする。中間パス式１においては、算出された評価値に基づいて、検索対象データ５、検索対象データ４、検索対象データ６の順に順序付けされたものとする。また、中間パス式２においては、算出された評価値に基づいて、検索対象データ８、検索対象データ７の順に順序付けされたものとする。  
パス式文書間評価部１４１は、上記したような中間パス式に対する順序付けの結果及び各検索結果データに対する順序付けの結果に基づいて、検索結果データに含まれる検索対象データ全体の順序付けを行う。
【０１２０】
図１８は、上記したような中間パス式及び各検索結果データに対する順序付けの結果に基づいて、検索結果データに含まれる検索対象データが順序付けされた結果を示す。  
上記したように中間パス式は、中間パス式２、中間パス式１の順に順序付けがされている。この場合、検索対象データの順序付けにおいては、入力パス式の検索結果データ、中間パス式２の検索結果データ、中間パス式１の検索結果データの順に順序付けされる。また、各検索結果データに含まれる検索対象データの順序付けにおいては、上記した各検索結果データに対する順序付けの順となる。
【０１２１】
よって、図１８に示すように、まず、入力パス式の検索結果データに含まれる検索対象データ１、検索対象データ３、検索対象データ２が上位に順序付けされる。次に、中間パス式２の検索結果データに含まれる検索対象データ８、検索対象データ７の順に順序付けされる。その後に、中間パス式１の検索結果データに含まれる検索対象データ５、検索対象データ４、検索対象データ６の順に順序付けされる。  
つまり、上記したような場合、検索結果データ（に含まれる各検索対象データ）が図１８に示す順序で検索者２０に対して提示されることになる。
【０１２２】
上記したように本実施形態においては、前述した第１の実施形態と異なり、検索者２０によって指定された検索条件パス式（入力パス式）から複数の検索条件パス式（中間パス式）が作成される。本実施形態においては、入力パス式から作成されたXPath式に加えて、この中間パス式から作成されたXPath式に基づいて検索処理が実行される。これにより、検索者２０によって指定された複数の文字列（語彙）を含む入力パス式の階層関係以外の階層関係についても検索することが可能となる。したがって、検索者２０は、前述した第１の実施形態と比較して、より構造化文書のデータ構造を意識することなく、構造化文書の階層関係を考慮した検索を実行することが可能となる。
【０１２３】
また、本実施形態においては、入力パス式及び中間パス式の検索結果（データ）を評価することにより、検索者２０が意図した階層構造の構造化文書をより上位に順位付けして検索結果を返すことができる。これにより、検索者２０は、効率的に自身が必要とするデータ（構造化文書）を取得することが可能となる。
【０１２４】
また、本実施形態においては、入力パス式から作成された中間パス式を事前に評価し、順位付けを行うことにより、検索結果に含まれる検索対象データの評価処理を減少させることにより、全体としての処理時間の短縮を可能とすることができる。
【０１２５】
なお、本願発明は、上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記各実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、各実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
【図面の簡単な説明】
【０１２６】
【図１】本発明の第１の実施形態に係る検索結果評価装置の主として機能構成を示すブロック図。
【図２】図１に示す検索結果評価装置１０において語彙階層関係グラフが作成される際の処理手順を示すフローチャート。
【図３】図１に示す検索結果評価装置１０において検索者２０からの検索要求に応じた検索が実行される際の処理手順を示すフローチャート。
【図４】検索対象データ格納部１３１に格納されている検索対象データの一例を示す図。
【図５】解析対象データの階層構造を示す構造グラフを作成する処理手順を示すフローチャート。
【図６】図４に示す天気予報データ１００の階層構造を示す構造グラフ２００の一例を示す図。
【図７】構造グラフを用いて語彙階層関係グラフを作成する処理手順を示すフローチャート。
【図８】語彙階層関係グラフ作成部１１２によって作成された語彙階層関係グラフ３００の省略図。
【図９】検索式を作成する処理手順を示すフローチャート。
【図１０】変換データ格納部１３３に格納されている変換データのデータ構造の一例を示す図。
【図１１】クエリ作成部１２１によって作成されたXPath式による検索結果の一例を示す図。
【図１２】予め定義された設定レベルを示す情報のデータ構造の一例を示す図。
【図１３】検索結果として得られた検索対象データ１０１を示す図。
【図１４】検索結果として得られた検索対象データ１０２を示す図。
【図１５】本発明の第２の実施形態に係る検索結果評価装置の主として機能構成を示すブロック図。
【図１６】図１５に示す検索結果評価装置４０の検索者２０からの検索要求に応じて検索が実行される際の処理手順を示すフローチャート。
【図１７】各検索条件パス式の検索結果データの一例を示す図。
【図１８】検索結果データに含まれる検索対象データが順序付けされた結果を示す図。
【符号の説明】
【０１２７】
１０，４０…検索結果評価装置、１１…データ解析部、１２，４１…検索実行部、１３…記憶部、１４，４２…検索結果評価部、１１１…データ解析制御部、１１２…語彙階層関係グラフ作成部、１２１，４１１…クエリ作成部、１２２…検索制御部、１３１…検索対象データ格納部、１３２…語彙階層関係グラフ格納部、１３３…変換データ格納部、１４１…パス式文書間評価部、４２１…パス式間評価部。
【図１】
2009251845.tif 000003
【図２】
2009251845.tif 000004
【図３】
2009251845.tif 000005
【図４】
2009251845.tif 000006
【図５】
2009251845.tif 000007
【図６】
2009251845.tif 000008
【図７】
2009251845.tif 000009
【図８】
2009251845.tif 000010
【図９】
2009251845.tif 000011
【図１０】
2009251845.tif 000012
【図１１】
2009251845.tif 000013
【図１２】
2009251845.tif 000014
【図１３】
2009251845.tif 000015
【図１４】
2009251845.tif 000016
【図１５】
2009251845.tif 000017
【図１６】
2009251845.tif 000018
【図１７】
2009251845.tif 000019
【図１８】
2009251845.tif 000020