(57)【要約】【課題】  本発明の課題は、データ検索の効率を向上させることを目的とする。【解決手段】  上記課題は、記憶部に記憶された、表示するページの定義情報を参照して、該表示するページに関連付けられるガジェットを特定し、特定した前記ガジェットに含まれるクエリから共通となる部分を特定し、特定した共通となる部分と、非共通の部分による問合せを包含する記載とにより共通クエリを作成し、作成した前記共通クエリを用いてインターネットを介してデータ検索を行う処理をコンピュータが実行するデータ検索方法により達成される。【選択図】  図７
2019159815.tif 000002
【特許請求の範囲】
【請求項１】
記憶部に記憶された、表示するページの定義情報を参照して、該表示するページに関連付けられるガジェットを特定し、
特定した前記ガジェットに含まれるクエリから共通となる部分を特定し、特定した共通となる部分と、非共通の部分による問合せを包含する記載とにより共通クエリを作成し、
作成した前記共通クエリを用いてインターネットを介してデータ検索を行う
処理をコンピュータが実行するデータ検索方法。
【請求項２】
前記共通クエリの作成では、前記コンピュータは、
前記クエリ内の複数の３つ組条件を構成する各要素が定数であるか変数であるかの種別を示す型ごとに分類し、該型ごとに前記共通となる部分を特定することを特徴とする請求項１記載のデータ検索方法。
【請求項３】
前記コンピュータは、
前記型ごとに、２以上の３つ組条件の同一要素間の一致又は不一致の結果と、前記型の前記要素の前記種別とに基づいて、該２以上の３つ組条件が検索するデータを包含して検索可能な３つ組条件を作成することで、該２以上の３つ組条件を共通化することを特徴とする請求項２記載のデータ検索方法。
【請求項４】
前記ページにおいて注目する第１の対象と、該第１の対象に係る第２の対象の指定に応じて、該ページに含まれるガジェットを前記定義情報に定義する
ことを特徴とする請求項１乃至３のいずれか一項記載のデータ検索方法。
【請求項５】
記憶部に記憶された、表示するページの定義情報を参照して、該表示するページに関連付けられるガジェットを特定し、
特定した前記ガジェットに含まれるクエリから共通となる部分を特定し、特定した共通となる部分と、非共通の部分による問合せを包含する記載とにより共通クエリを作成し、
作成した前記共通クエリを用いてインターネットを介してデータ検索を行う
処理をコンピュータに行わせるデータ検索プログラム。
【請求項６】
記憶部に記憶された、表示するページの定義情報を参照して、該表示するページに関連付けられるガジェットを特定する特定部と、
特定した前記ガジェットに含まれるクエリから共通となる部分を特定し、特定した共通となる部分と、非共通の部分による問合せを包含する記載とにより共通クエリを作成する作成部と、
作成した前記共通クエリを用いてインターネットを介してデータ検索を行う検索部と
を有する情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ検索方法、データ検索プログラム、及び情報処理装置に関する。
【背景技術】
【０００２】
近年、Ｗｅｂに対応した画面では、Linked Dataにより得られたデータを用いて特定の処理を行うガジェットを複数用いることで、様々な処理結果を含む表示が行われるようになってきている。
【０００３】
ガジェットでは、オープンライセンスのLinked DataであるLinked Open Data（ＬＯＤ）の集まりであるＬＯＤクラウドをクエリを用いてデータ検索する場合がある。このＬＯＤクラウドの規模は、年々拡大していることから、ＬＯＤクラウドからガジェットが対象とするデータ検索を効率的に行うことが求められている。
【０００４】
複数のガジェットで検索対象を検索し表示する場合に、検索対象と関連する対象を含めて同様の検索を行う技術等が知られている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１５−１２５７４７号公報
【特許文献２】国際公開第２０１３／１１１２８７号パンフレット
【非特許文献】
【０００６】
【非特許文献１】宮川勝他著「データ駆動型コンテンツサービス」ＮＨＫ技研  Ｒ＆Ｄ、２０１６年３月、Ｎｏ．１５６
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ガジェットを利用して生成される画面では、同一ページにおいて類似又は関連した情報を可視化することが多い場合がある。この場合には、重複した問い合わせが複数回に亘り行われるといった問題がある。
【０００８】
したがって、１つの側面では、データ検索の効率を向上させることを目的とする。
【課題を解決するための手段】
【０００９】
一態様によれば、記憶部に記憶された、表示するページの定義情報を参照して、該表示するページに関連付けられるガジェットを特定し、特定した前記ガジェットに含まれるクエリから共通となる記部分を特定し、特定した共通となる部分と、非共通の部分による問合せを包含する記載とにより共通クエリを作成し、作成した前記共通クエリを用いてインターネットを介してデータ検索を行う処理をコンピュータが実行するデータ検索方法が提供される。
【発明の効果】
【００１０】
データ検索の効率を向上させることができる。
【図面の簡単な説明】
【００１１】
【図１】システム構成例を示す図である。
【図２】比較処理の負担を説明するための図である。
【図３】ダイナミック・パブリッシングの概要を説明するための図である。
【図４】本実施例における比較処理の概要を説明するための図である。
【図５】本実施例における端末によるＬＯＤクラウドへのデータ検索処理の概要を説明するための図である。
【図６】端末のハードウェア構成を示す図である。
【図７】端末の機能構成例を示す図である。
【図８】クエリまとめ処理部が存在しない比較機能構成例を示す図である。
【図９】ガジェットプログラムの入力を説明するための図である。
【図１０】取得時のガジェットのクエリの記載例を示す図である。
【図１１】分類結果を表す図である。
【図１２】クエリ分類部によるまとめ処理（その１）を説明するための図である。
【図１３】クエリ分類部によるまとめ処理（その２）を説明するための図である。
【図１４】クエリ分類部による共通クエリ作成処理（その１）を説明するための図である。
【図１５】クエリ分類部による共通クエリ作成処理（その２）を説明するための図である。
【図１６】実行管理部による実行管理処理を説明するための図である。
【図１７】３つ組条件でのデータ検索例を示す図である。
【図１８】クエリまとめ処理部による処理全体の概要を説明するためのフローチャート図である。
【図１９】クエリ分類部による処理全体を説明するためのフローチャート図である。
【図２０】実行管理部による実行管理処理を説明するためのフローチャート図である。
【図２１】比較結果例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態を図面に基づいて説明する。先ず、ダイナミック・パブリッシングについて、システム構成例を用いて説明する。図１は、システム構成例を示す図である。図１において、システム１０００は、端末３と、サーバ装置１００と、ＬＯＤ（Linked Open Data）クラウド５００を構成するＬＯＤサーバ装置２００とを有する。
【００１３】
端末３は、ユーザによって利用される情報処理装置であり、インターネット２を介して、サーバ装置１００、ＬＯＤクラウド５００の複数のＬＯＤサーバ装置２００にアクセス可能である。端末３は、サーバ装置１００から所望のページ４ｐを表示するための定義情報を取得し、取得した定義情報を用いて、ＬＯＤクラウド５００からデータ収集して統計し、その統計結果を示すガジェット４ｇを含むページ４ｐを生成して表示する。
【００１４】
ページ４ｐは、複数のガジェット４ｇを含み、ダイナミック・パブリッシングの技術により作成されるＷｅｂページである。各ガジェット４ｇでは、当該ガジェット４ｇで記述されるクエリによりＬＯＤクラウド５００内のＬＯＤサーバ装置２００が保持するデータベース２０５にアクセスしてデータを抽出し、抽出したデータの統計情報に基づくグラフ表示等が行われる。
【００１５】
サーバ装置１００は、ページ４ｐ毎のページ画面定義を記憶した定義情報記憶部２を有し、インターネット２を介して、端末３からのページ４ｐの定義情報の要求に応じて、定義情報を端末３に提供する。定義情報は、メタデータで記述され定義情報記憶部２内に保持されている。
【００１６】
ＬＯＤクラウド５００は、複数のＬＯＤサーバ装置２００により構成され、それぞれのＬＯＤサーバ装置２００により様々な種類のデータが提供可能に管理されている。ＬＯＤサーバ装置２００は、提供可能なデータを蓄積したデータベース２０５を有し、端末３からのクエリに応じてデータベース２０５から抽出したデータを提供する。データベース２０５は、ＲＤＦ（Resource Description Framework）データ等を蓄積したＲＤＦストアに相当する。
【００１７】
ページ４ｐに含まれる各ガジェット４ｇには、通常、複数のクエリが記述されている。以下、複数のクエリを「クエリ集合」という。クエリ集合が大きくなると、インターネット２を介した検索回数が増大する。
【００１８】
従って、クエリ集合から共通となる部分を特定し、特定した共通となる部分と、非共通の部分による問合せを包含する記載とにより「共通クエリ」を定める。定めた共通クエリで、クエリ集合内で共通に検索される中間結果を取得した後、クエリ集合内の各クエリを中間結果に対して実行して、最終的な解を得ることで、インターネット２を介したＬＯＤクラウド５００に対するデータ検索（問い合わせ）の回数を削減することができる。このような考え方に基づき、共通クエリの生成方法について検討する。
【００１９】
先ず、この分野の専門家が容易に思いつくであろう方法として、
・方法Ａ
クエリの知識のある者によって、共通クエリを記述し、予め用意しておくことが考えられる。この場合の課題は以下の通りである。
【００２０】
課題１：取得したいデータ項目が増えた場合、ページ４ｐ内のガジェット４ｇを増やしたい場合等の状況ごとに、共通クエリは書き換えなければならない。
・方法Ｂ
共通クエリを自動的に作成することが考えられる。この場合の課題は以下の通りである。
【００２１】
課題２−１（図２（Ａ））：ガジェット定義が多くなる程、すべてのガジェット間で共通するクエリの記述を抽出するための比較処理の負荷が大きくなる。  
課題２−２（図２（Ｂ））：全ての３つ組条件で比較を行うため、効率が悪い。
【００２２】
図２を参照して方法Ｂの課題２−１及び課題２−２について説明する。図２は、比較処理の負担を説明するための図である。図２（Ａ）に示す一例を用いて、課題２−１を説明する。一例として、ガジェット数「６」の場合には３つ組条件の比較数は「１５（＝６Ｃ２）」、ガジェット数「１００（＝１００Ｃ２）」の場合には３つ組条件の比較数は「４、９５０」、ガジェット数「２００（＝２００Ｃ２）」の場合には３つ組条件の比較数は「１９，９００」等となる。ガジェット数の増加は、３つ組条件の比較数を大幅に増加させる。
【００２３】
また、図２（Ｂ）に示す一例を用いて課題２−２を説明する。図２（Ｂ）では、ガジェット４ｇ−１と４ｇ−２のクエリの記述例を示している。Linked Dataを検索するためのＲＤＦクエリ言語として一般的なＳＰＡＲＱＬ（Protocol and RDF Query Language）で記述された例として示しているが、記述言語はＳＰＡＲＱＬに限定されない。この記述例では、where節に６行で列挙されているそれぞれの記述文が３つ組条件を表現している。
【００２４】
ガジェット４ｇ−１及び４ｇ−２共に、３つ組条件数「６」の場合を示している。この場合、ガジェット４ｇ−１内の各３つ組条件に対して、ガジェット４ｇ−２の全３つ組条件との比較が行われる。従って、比較処理は３６回行われる。
【００２５】
次に、端末３で行われるダイナミック・パブリッシングについて説明する。図３は、ダイナミック・パブリッシングの概要を説明するための図である。図３において、本実施例では、端末３では、サーバ装置１００によって提供される画面から、ユーザが「視点」と「観点」とを指定することにより、ダイナミック・パブリッシングが行われる。
【００２６】
ユーザの「視点」と「観点」の指定に応じて、サーバ装置１００の定義情報記憶部１０５から、対応するページ４ｐを作成するための定義情報１０７が選択される。
【００２７】
「視点」とは、注目するエンティティ（実体）を意味し、視点として、企業名、人命、技術用語、イベント等がユーザにより指定される。「観点」では、エンティティをどのように見るかが指定される。特定の調達が視点として指定された場合、発注者、受注者等が観点として指定される。また、特定の製品が視点として指定された場合、製造者等が観点として指定される。視点及び観点とによって、ページ４ｐを特定するＵＲＩ（Uniform Resource Identifier）が決定する。ＵＲＩは、Ｗｅｂ空間で資源（リソース）を一意に識別する識別子である。
【００２８】
サーバ装置１００の定義情報記憶部１０５には、ガジェットＡ、Ｂ、Ｃ等を含む複数のガジェット４ｇ、ガジェット４ｇを含むページ４ｐごとの定義情報１０７等が記憶されている。各定義情報１０７は、ページ４ｐにおいて注目する視点と、視点に係る観点とに応じた、ページ４ｐに含むガジェットを定義している。
【００２９】
端末３は、定義情報１０７を受信すると、後述する本実施例に係る処理を行うことでダイナミック・パブリッシング３００を実行する。ダイナミック・パブリッシング３００では、主に、定義情報１０７に含まれる各クエリを実行し、ＬＯＤクラウド５００からデータを集約する。行政法人ポータル２００ａ、オープンデータサイト２００ｂ等からデータを集約する例を示しているが、これら以外の様々なサイトからインターネット２を介してデータを集約してもよい。
【００３０】
定義情報１０７に従って集約したデータを用いて統計処理が行われ、ページ４ｐ内に、２以上のタイプの異なるグラフが描画され画面表示される。「観点」の違いにより異なる定義情報１０７が選択されるため、様々な異なるページ４ｐの表示が行われる。
【００３１】
このように本実施例では、１つのページ４ｐはある観点に基づいて作成される、ことに着目し、サーバ装置１００では、観点に応じて定義情報１０７が作成される。一方で、同じガジェット４ｇであっても異なる観点に用いられる場合には、それぞれに固有のグラフ表示が行われる。
【００３２】
「ある観点に基づく」ページ４ｐの一例として、様々な情報源から集めたデータを、統計を表すグラフ等により可視化する一般的なダッシュボードが考えられる。ダッシュボードでは、ページ４ｐ内は類似又は関連した情報を可視化することが多い。そのため、重複した問い合わせを行う可能性が高い。本実施例では、共通の問い合わせが多いことを利用する。
【００３３】
また、発明者は、上述した比較処理において、ガジェット４ｇ内の各３つ組条件が型で記述されることに注目し、型を考慮することで比較回数を削減可能とした。
【００３４】
型の要素である主語（Ｓ）、目的語（Ｏ）、及び述語（Ｐ）は、それぞれ変数又は定数で示される。つまり、発明者は、主語（Ｓ）、目的語（Ｏ）、及び述語（Ｐ）のそれぞれが変数又は定数であるのかを示す型ごとに比較処理を行えば、比較回数を削減できることに着目した。
【００３５】
発明者による着眼ポイントは、以下のように示される。
＜ポイント１＞
選択された定義情報１０７に関連付けられる複数のガジェット４ｇのみに注目する。
＜ポイント２＞
ガジェット４ｇ内の３つ組条件の主語（Ｓ）、目的語（Ｏ）、及び述語（Ｐ）のそれぞれの種別が変数又は定数であるかのを示す型ごとに比較処理を行うことで、ガジェット４ｇから共通するクエリ（共通クエリ）の抽出を簡潔化する。
【００３６】
図４は、本実施例における比較処理の概要を説明するための図である。図４において、本実施例では、定義情報１０７に含まれるガジェット４ｇ−１と４ｇ−２とを比較対象とし、クエリを解析し、各３つ組条件を型に基づいて変数か定数かを示す型を判定する。型を判定する手法は、後述される。
【００３７】
型を考慮することで、分類５Ａに対するガジェット４ｇ−１と４ｇ−２との間の比較は１回となり、分類５Ｂに対するガジェット４ｇ−１と４ｇ−２との間の比較は１０回となる。結果、合計して１２回の比較回数となる。図２（Ｂ）では３６回であったのに対して、大幅に比較回数を削減できる。
【００３８】
図５は、本実施例における端末によるＬＯＤクラウドへのデータ検索処理の概要を説明するための図である。図５において、端末３では、サーバ装置１００から取得したページαの定義情報１０７ａのガジェット４ｇ−１と４ｇ−２とに対して、クエリまとめ処理３３０が行われる。
【００３９】
クエリまとめ処理３３０によって共通クエリ８を得ると、共通クエリ８を用いたデータ検索（問い合わせ）がＬＯＤクラウド５００に対して１回行われ、端末３は、データベース２０５から中間結果９を得る。
【００４０】
次に、ページαの定義情報１０７ａに含まれるガジェット４ｇ−１及び４ｇ−２のクエリを用いて、端末３が取得して保持している中間結果９に対してデータ検索（問い合わせ）を行う。そして、得られたデータを用いて統計情報を得ると、ページα内に定義されたガジェット４ｇ−１及び４ｇ−２それぞれの画面にグラフが表示される。
【００４１】
この例において、ガジェット４ｇ−１内の記述５ｇ−１のコードＣ２１０１はページαに表示される文字列「事業所数」に対応し、ガジェット４ｇ−２内の記述５ｇ−２のコードＣ２１０２はページαに表示される文字列「人口」に対応する。
【００４２】
中間結果９には、共通クエリ８を用いたデータ検索によって、全てのコードに対応するデータが集約される。その中から、コードを特定してデータ検索することにより、文字列「事業所数」、「人口」等のデータが抽出される。
【００４３】
上述したようなデータ検索処理を行う端末３は、図６に示すようなハードウェア構成を有する。図６は、端末のハードウェア構成を示す図である。図６において、端末３は、コンピュータによって制御される情報処理装置であって、ＣＰＵ（Central Processing Unit）１１と、主記憶装置１２と、補助記憶装置１３と、入力装置１４と、表示装置１５と、通信Ｉ／Ｆ（インターフェース）１７と、ドライブ装置１８とを有し、バスＢに接続される。
【００４４】
ＣＰＵ１１は、主記憶装置１２に格納されたプログラムに従って端末３を制御するプロセッサに相当する。主記憶装置１２には、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等が用いられ、ＣＰＵ１１にて実行されるプログラム、ＣＰＵ１１での処理に必要なデータ、ＣＰＵ１１での処理にて得られたデータ等を記憶又は一時保存する。
【００４５】
補助記憶装置１３には、ＨＤＤ（Hard Disk Drive）等が用いられ、各種処理を実行するためのプログラム等のデータを格納する。補助記憶装置１３に格納されているプログラムの一部が主記憶装置１２にロードされ、ＣＰＵ１１に実行されることによって、各種処理が実現される。記憶部１３０は、主記憶装置１２と、補助記憶装置１３とを有する。
【００４６】
入力装置１４は、マウス、キーボード等を有し、ユーザが端末３による処理に必要な各種情報を入力するために用いられる。表示装置１５は、ＣＰＵ１１の制御のもとに必要な各種情報を表示する。入力装置１４と表示装置１５とは、一体化したタッチパネル等によるユーザインタフェースであってもよい。通信Ｉ／Ｆ１７は、有線又は無線などのネットワークを通じて通信を行う。通信Ｉ／Ｆ１７による通信は無線又は有線に限定されるものではない。
【００４７】
ドライブ装置１８は、ドライブ装置１８にセットされた記憶媒体１９（例えば、ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory）等）と端末３とのインターフェースを行う。
【００４８】
端末３によって行われる処理を実現するプログラムは、例えば、ＣＤ−ＲＯＭ等の記憶媒体１９によって端末３に提供される。記憶媒体１９に、後述される本実施の形態に係る種々の処理を実現するプログラムを格納し、この記憶媒体１９に格納されたプログラムは、ドライブ装置１８を介して端末３にインストールされる。インストールされたプログラムは、端末３により実行可能となる。
【００４９】
尚、プログラムを格納する記憶媒体１９はＣＤ−ＲＯＭに限定されず、コンピュータが読み取り可能な、構造（structure）を有する１つ以上の非一時的（non-transitory）な、有形（tangible）な媒体であればよい。コンピュータ読取可能な記憶媒体として、ＣＤ−ＲＯＭの他に、ＤＶＤ（Digital Versatile Disk）ディスク、ＵＳＢメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリであっても良い。
【００５０】
図７は、端末の機能構成例を示す図である。図７において、端末３は、ページ定義処理部３１０と、クエリまとめ処理部３２０とを有する。ページ定義処理部３１０と、クエリまとめ処理部３２０とによって、ダイナミック・パブリッシング３００が実現される。ページ定義処理部３１０と、クエリまとめ処理部３２０とは、端末３にインストールされたプログラムが、端末３のＣＰＵ１１に実行させる処理により実現される。
【００５１】
ページ定義処理部３１０は、インターネット２を介してサーバ装置１００からページαの定義情報１０７ａを取得して入力し、クエリまとめ処理部３２０へ通知する。サーバ装置１００から取得したページαの定義情報１０７ａは、記憶部１３０に保持される。ページαの定義情報１０７ａには、ガジェットＡ、Ｂ、及びＣが定義されている。
【００５２】
また、ページ定義処理部３１０は、一時クエリ保存部３２９に共有クエリ８により中間結果９の格納されると、ページαの定義情報１０７ａを用いて一時クエリ保存部３２９をデータ検索し、ガジェットＡ、Ｂ、及びＣのそれぞれの画面にグラフを描画して、ページαを表示装置１５に表示させる。
【００５３】
クエリまとめ処理部３２０は、ページαの定義情報１０７ａ内のガジェットＡ、Ｂ、Ｃから共通クエリ８を決定して、決定した共通クエリ８でＬＯＤクラウド５００に対してデータ検索を行う処理部であり、クエリ分類部３２１と、実行管理部３２３とを有する。
【００５４】
クエリ分類部３２１は、ページαの定義情報１０７ａ内のガジェットＡ〜Ｃに記載される３つ組条件を、３つの要素が変数又は定数を示す型毎に分類する。クエリ分類部３２１は、型毎に、クエリから共通となる部分を特定し、特定した共通となる部分と、非共通の部分による問合せを包含する記載とにより共通クエリ８を作成する。
【００５５】
実行管理部３２３は、ＬＯＤクラウド５００に対して、共通クエリ８を用いたデータ検索を行い、データを集約して一時クエリ保存部３２９に記憶する。一時クエリ保存部３２９は、記憶部１３０の一部に相当する。また、実行管理部３２３は、ガジェットＡ、Ｂ、Ｃのそれぞれのクエリで、一時クエリ保存部３２９に対してデータ検索を行う。ガジェットＡ、Ｂ、Ｃのそれぞれの検索結果データ３２８が記憶部１３０に出力され格納される。
【００５６】
ページ定義処理部３１０は、記憶部１３０に記憶された検索結果データ３２８を参照して、統計情報を作成してグラフを描画する。ページαが、表示装置１５に表示される。一時クエリ保存部３２９に対するデータ検索では、ガジェットＡ〜Ｃに含まれる全てのクエリで行われるが、一時クエリ保存部３２９は、端末３の記憶部１３０に存在するため、ネットワーク通信を行うことなく、効率的に所望のデータを集約することができる。
【００５７】
図８を参照して、本実施例におけるクエリまとめ処理部３２０が存在しない場合の比較例として機能構成例を説明する。図８は、クエリまとめ処理部が存在しない比較機能構成例を示す図である。
【００５８】
図８では、図７に示すクエリまとめ処理部３２０が存在しない。そのため、ページ定義処理部３１０は、ガジェットＡ〜Ｃに記載の各クエリを、インターネット２を介してＬＯＤクラウド５００に対して行う。従って、データ検索がクエリの数だけ繰り返され、ネットワーク通信に係る処理、データ集約に係る時間等の負担が、図７に示す本願発明における機能構成に比べて大きいと言える。
【００５９】
次に、図９〜図１５を参照して、クエリまとめ処理部３２０による処理を説明する。先ず、ガジェットプログラムの入力について説明する。
【００６０】
図９は、ガジェットプログラムの入力を説明するための図である。図９では、ユーザが、「視点」として「神奈川県川崎市中原区」を指定し、「観点」として「地域」を指定した場合に、ページ４ｐに関連付けられるガジェット４ｇが４つある場合を示している。
【００６１】
この例では、視点「神奈川県_川崎市_中原区」の選択により「http：//lod4all.net/resource/神奈川県_川崎市_中原区」が特定され、観点「地域」の選択により「http://lod4all.net/ontology/Geo」が特定され、視点と観点とが対応付けられる。ここで「Geo」が観点に相当している。
【００６２】
サーバ装置１００から提供される「視点」及び「観点」の一覧により、ユーザに選択可能な画面を端末３に表示することで、選択させるようにしてもよい。選択により、ユーザが所望するページ４ｐの定義情報１０７に関連付けられるガジェット４ｇを取得する。
【００６３】
具体的には、「http://lod4all.net/ontology/Geo」に関連付けられる４つのガジェットプログラムが取得され、クエリまとめ処理部３２０へ入力される。以下の説明では、単に、ガジェットＰＰ１〜ＰＰ４という。ガジェットＰＰ１〜ＰＰ４はそれぞれ異なる３つ組条件を表すクエリが記載されている。
【００６４】
図１０は、取得時のガジェットのクエリの記載例を示す図である。図１０において、クエリまとめ処理部３２０のクエリ分類部３２１は、ガジェットＰＰ１〜ＰＰ４の全ての３つ組条件の記載を対象に、要素ごとに種別を示す型を決定する。主語（Ｓ）と目的語（Ｏ）は、述語（Ｐ）によりリンクされる形式で記述されるため、主語（Ｓ）、述語（Ｐ）、目的語（Ｏ）の順に各要素の種別（定数又は変数）を判断する。
【００６５】
主語（Ｓ）、述語（Ｐ）、目的語（Ｏ）のそれぞれが、
・定数であれば大文字
・変数であれば小文字
で種別を示す型を表す。全て定数であれば＜Ｓ、Ｐ、Ｏ＞と表し、全て変数であれば＜ｓ、ｐ、ｏ＞と表す。
【００６６】
クエリ分類部３２１は、ガジェットＰＰ１〜ＰＰ４のうちガジェットＰＰ１から３つ組条件ごとに種別を判定し、型を決定する。ガジェットＰＰ１のwhere節内の１番目の３つ組条件は、
「l4a-geo:神奈川県_川崎市_中原区 rdfs:seeAlso ?geojp.」
である。主語（Ｓ）の「l4a-geo:神奈川県_川崎市_中原区」は定数である。述語（Ｐ）の「rdfs:seeAlso」は定数である。また、目的語（Ｏ）の「?geojp」は変数である。従って、種別を示す型は、
＜Ｓ、Ｐ、ｏ＞
である。この種別の型＜Ｓ、Ｐ、ｏ＞に属する３つ組条件のＩＤをＧ１ｘｘで表すものとする。１番目の３つ組条件にＩＤ「Ｇ１０１」を付与する。
【００６７】
このように要素ごとに種別を判断すると、２番目の３つ組条件「l4a-geo:神奈川県_川崎市_中原区 rdfs:label ?label.」の型は、１番目と同様に、
＜Ｓ、Ｐ、ｏ＞
である。２番目の３つ組条件にＩＤ「Ｇ１０２」を付与する。
【００６８】
３番目の３つ組条件「?refArea sdmx-2009:dimension#refArea ?geojp.」の型は、１番目及び２番目とは異なり、
＜ｓ、Ｐ、ｏ＞
となる。この型に属する３つ組条件のＩＤをＧ２ｘｘで表すものとする。３番目の３つ組条件にＩＤ「Ｇ２０１」を付与する。
【００６９】
４番目の３つ組条件「?refArea wb270a-prop:indicator gn-jp:C2101.」の型は、１番目、２番目、及び３番目とも異なり、
＜ｓ、Ｐ、Ｏ＞
となる。この型に属する３つ組条件のＩＤをＧ３ｘｘで表すものとする。４番目の３つ組条件にＩＤ「Ｇ３０１」を付与する。
【００７０】
５番目の３つ組条件「?refArea sdmx-2009:measure#obsValue ?value.」の型は、
＜ｓ、Ｐ、ｏ＞
となり、既に作成済みであるため、ＩＤ「Ｇ２０２」が付与される。
【００７１】
６番目の３つ組条件「?refArea sdmx-2009:dimension#refPeriod ?year.」の型は、
＜ｓ、Ｐ、ｏ＞
となり、既に作成済みであるため、ＩＤ「Ｇ２０３」が付与される。よって、ガジェットＰＰ１の全ての３つ組条件に対して分類分けが終了する。同様にガジェットＰＰ２〜ＰＰ４の各３つ組条件についても分類分けを行うと、図１１に示す分類結果を得る。
【００７２】
図１１は、分類結果を表す図である。図１１に示すように、各型ごとに、テーブルが記憶部１３０に作成され、ＩＤ、３つ組条件、クエリ情報等の項目を有する。ＩＤはテーブル内でどの３つ組条件であるか特定し、３つ組条件は分類された３つ組条件の記述を示し、クエリ情報は３つ組条件が記述されているガジェットプログラムを特定する識別子を示す。この例では、クエリ情報には、識別子として、ＰＰ１、ＰＰ２、ＰＰ３、ＰＰ４のいずれかが指定される。
【００７３】
上述した＜Ｓ、Ｐ、ｏ＞、＜ｓ、Ｐ、ｏ＞、及び＜ｓ、Ｐ、Ｏ＞の３つが、ガジェットＰＰ１〜ＰＰ４を分類して得られた３つ組条件グループに相当する。３つ組条件グループごとに、テーブルが作成され記憶部１３０に記憶される。図１１では、＜Ｓ、Ｐ、ｏ＞、＜ｓ、Ｐ、ｏ＞、及び＜ｓ、Ｐ、Ｏ＞のそれぞれの３つ組条件グループに対して、＜Ｓ、Ｐ、ｏ＞テーブルＴ３４１、＜ｓ、Ｐ、ｏ＞テーブルＴ３４２、及び＜ｓ、Ｐ、Ｏ＞テーブルＴ３４３が作成される例を示している。
【００７４】
図１１を参照すると、＜Ｓ、Ｐ、ｏ＞テーブルＴ３４１では、ＩＤ「Ｇ１０１」の３つ組条件は「l4a-geo:神奈川県_川崎市_中原区 rdfs:seeAlso ?geojp」であり、クエリ情報には「ＰＰ１、ＰＰ２、ＰＰ３、ＰＰ４」が示されている。同一のグラフパタンがガジェットＰＰ１、ＰＰ２、ＰＰ３、及びＰＰ４に存在することを示している。
【００７５】
また、ＩＤ「Ｇ１０２」の３つ組条件は「l4a-geo:神奈川県_川崎市_中原区 rdfs:label ?label」であり、クエリ情報により、同一のグラフパタンがガジェットＰＰ１、ＰＰ２、ＰＰ３、及びＰＰ４に存在することを示している。
【００７６】
＜ｓ、Ｐ、ｏ＞テーブルＴ３４２では、ＩＤ「Ｇ２０１」の３つ組条件は「?refArea sdmx-2009:dimension#refArea ?geojp」であり、クエリ情報により、同一のグラフパタンがガジェットＰＰ１、ＰＰ３、ＰＰ４に存在することを示している。＜ｓ、Ｐ、ｏ＞テーブルＴ３４２では、更に、ＩＤ「Ｇ２０２」から「Ｇ２０６」のそれぞれに対して、３つ組条件とクエリ情報とが対応付けられている。ＩＤ「Ｇ２０４」から「Ｇ２０６」のそれぞれに対してクエリ情報では、ガジェットＰＰ１、ＰＰ２、ＰＰ３、そしてＰＰ４が示され、即ち、１つのガジェットプログラムのみが対応付けられている。
【００７７】
＜ｓ、Ｐ、Ｏ＞テーブルＴ３４３では、ＩＤ「Ｇ３０１」の３つ組条件は「?refArea wb270a-prop:indicator gn-jp:C2101」であり、クエリ情報によりＰＰ１のみが示され、同一のグラフパタンが記載されているガジェットプログラムは無いことが分かる。＜ｓ、Ｐ、Ｏ＞テーブルＴ３４３では、更に、ＩＤ「Ｇ３０２」から「Ｇ３０４」のそれぞれに対して、３つ組条件とクエリ情報とが対応付けられている。この例では、各ＩＤに対してクエリ情報では１つのガジェットプログラムのみが対応付けられている。
【００７８】
クエリ分類部３２１は、このようなテーブルＴ３４１〜Ｔ３４３のそれぞれごとに、３つ組条件を比較する。比較は、同一の要素間で行う。つまり、クエリ分類部３２１は、主語（Ｓ）、述語（Ｐ）、及び目的語（Ｏ）のそれぞれで記述が一致するか否かを判定し、まとめ可否を判断する。図１２及び図１３を参照して、クエリ分類部３２１によるまとめ処理について説明する。
【００７９】
図１２は、クエリ分類部によるまとめ処理（その１）を説明するための図である。図１２において、クエリ分類部３２１は、同一テーブル内の３つ組条件同士の比較を要素単位で行う。３つ組条件の「まとめ判断ルール」は、以下の通りである。
【００８０】
［まとめる場合］
［Ａ１］定数又は変数に係らず全ての要素が３つ組条件同士で一致する場合は、いずれか一方の３つ組条件を選択して１つの３つ組条件にまとめる。
［Ａ２］変数の要素が３つ組条件同士で一致しない場合に、当該要素を除外することで３つ組条件同士が一致するときは、いずれか一方の３つ組条件を選択して１つの３つ組条件にまとめる。つまり、少なくとも１つの要素が定数であって３つ組条件同士で一致すれば、１つの３つ組条件にまとめる。
【００８１】
［まとめない場合］
［Ｂ１］全ての要素が定数であって３つ組条件同士で一致しない場合は、３つ組条件同士をまとめない。
［Ｂ２］変数の要素が３つ組条件同士で一致しない場合に、当該要素を除外しても３つ組条件同士で一致しないときは、３つ組条件同士をまとめない。つまり、定数の要素の１つ以上で３つ組条件同士で一致しない場合は、１レコードにまとめない。
【００８２】
上述した「まとめ判断ルール」における「まとめる」は、「共通化する」ことに相当する。また、「共通化する」とは、２以上の３つ組条件で検索されるデータを包含して検索可能な３つ組条件を作成することに相当する。
【００８３】
このようなまとめ判断ルールに従うと、＜Ｓ、Ｐ、ｏ＞テーブルＴ３４１では、ＩＤ「Ｇ１０１」及び「Ｇ１０２」の３つ組条件は上述した［まとめない場合］の［Ｂ１］に相当する。従って、＜Ｓ、Ｐ、ｏ＞テーブルＴ３４１は更新されない。
【００８４】
＜ｓ、Ｐ、ｏ＞テーブルＴ３４２では、変数の主語（Ｓ）を除外することで、ＩＤ「Ｇ２０１」と「Ｇ２０４」の３つ組条件同士が一致する。また、変数の目的語（Ｏ）を除外することで、ＩＤ「Ｇ２０２」と「Ｇ２０６」の３つ組条件同士が一致する。更に、変数の主語（Ｓ）及び目的語（Ｏ）を除外することで、ＩＤ「Ｇ２０３」と「Ｇ２０５」の３つ組条件同士が一致する。これらは、［まとめる場合］の［Ａ２］に相当する
次に、＜ｓ、Ｐ、Ｏ＞テーブルＴ３４３では、ＩＤ「Ｇ３０１」〜「Ｇ３０４」の全てにおいて、主語（Ｓ）が変数であり、述語（Ｐ）及び目的語（Ｏ）が定数である。定数の目的語（Ｏ）が、全ての３つ組条件で一致しない。従って、上述した［まとめない場合］の［Ｂ２］に相当する。従って、＜ｓ、Ｐ、Ｏ＞テーブルＴ３４３は更新されない。
【００８５】
上述したような、クエリ分類部３２１による処理により、＜Ｓ、Ｐ、ｏ＞テーブルＴ３４１、＜ｓ、Ｐ、ｏ＞テーブルＴ３４２、及び＜ｓ、Ｐ、Ｏ＞テーブルＴ３４３のそれぞれに対する更新状態を図１３に示す。
【００８６】
図１３は、クエリ分類部によるまとめ処理（その２）を説明するための図である。図１３において、図１２に説明したまとめ結果に基づいて、特に、＜ｓ、Ｐ、Ｏ＞テーブルＴ３４３に対する更新方法を説明する。
【００８７】
図１２で説明したように、ＩＤ「Ｇ２０１」とＩＤ「Ｇ２０４」の３つ組条件は１つにまとめることができる。具体的には、ＩＤ「Ｇ２０４」のレコードのクエリ情報にＩＤ「Ｇ２０４」のクエリ情報「ＰＰ２」を追加する。追加する際、除外した変数の要素がどの変数に対応するかを記録する。「ＰＰ２（?ref:?refArea）」のようにＩＤ「Ｇ２０１」のクエリ情報に追加する。その後、ＩＤ「Ｇ２０４」のレコードを削除する。
【００８８】
追加方法の一例として、「PP2(?ref:?refArea)」の場合、ガジェットプログラムの識別子「ＰＰ２」に加えて、かっこ内にＰＰ２での変数と、ＩＤ「Ｇ２０１」の３つ組条件内の変数とを"："を用いて対応付けて記載する。
【００８９】
また、ＩＤ「Ｇ２０２」とＩＤ「Ｇ２０６」の３つ組条件は１つにまとめることができる。ＩＤ「Ｇ２０２」とＩＤ「Ｇ２０６」の３つ組条件の比較では、変数である目的語（Ｏ）を除外することで一致したため、ＩＤ「Ｇ２０２」のレコードのクエリ情報に、「PP4(?val:?value)」を追加する。ＩＤ「Ｇ２０６」のレコードを削除する。
【００９０】
更に、ＩＤ「Ｇ２０３」とＩＤ「Ｇ２０５」の３つ組条件は１つにまとめることができる。ＩＤ「Ｇ２０３」とＩＤ「Ｇ２０５」の３つ組条件の比較では、変数である主語（Ｓ）と目的語（Ｏ）とを除外することで一致したため、ＩＤ「Ｇ２０３」のレコードのクエリ情報に、「PP2(?ref:?refArea,?y:?year)」を追加する。ＩＤ「Ｇ２０５」のレコードを削除する。
【００９１】
このように要素の種別（変数／定数）に基づく型ごとに３つ組条件をまとめた後、共通クエリ８を作成する。クエリ分類部３２１による、共通クエリ８を作成する共通クエリ作成処理について、図１４及び図１５を参照して説明する。
【００９２】
図１４は、クエリ分類部による共通クエリ作成処理（その１）を説明するための図である。図１４において、クエリ分類部３２１は、各テーブルＴ３４１〜Ｔ３４３のクエリ情報を参照して、ガジェットプログラムの識別子が１つしかない＜ｓ、Ｐ、Ｏ＞テーブルＴ３４３を対象外とし、＜Ｓ、Ｐ、ｏ＞テーブルＴ３４１と＜ｓ、Ｐ、ｏ＞テーブルＴ３４２とを参照して、まず共通クエリ８を作成する。
【００９３】
クエリ分類部３２１は、共通クエリ８の領域を記憶部１３０内に獲得し、＜Ｓ、Ｐ、ｏ＞テーブルＴ３４１から３つ組条件の記載を読み込んで共通クエリ８のwhere節内に挿入する。次に、クエリ分類部３２１は、＜ｓ、Ｐ、ｏ＞テーブルＴ３４２から３つ組条件の記載を読み込んで共通クエリ８のwhere節内に挿入する。その後、目的語（Ｏ）の変数をselect文に列挙してwhere節前に挿入する。
【００９４】
したがって、
select ?year ?geojp ?value where {
l4a-geo:神奈川県_川崎市_中原区 rdfs:seeAlso ?geojp.
l4a-geo:神奈川県_川崎市_中原区 rdfs:label ?label.
?refArea sdmx-2009:dimension#refArea ?geojp.
?refArea sdmx-2009:measure#obsValue ?value.
?refArea sdmx-2009:dimension#refPeriod ?year.
} ORDER BY ?year
のような共通クエリ８が、記憶部１３０に作成される。where節の後に"ORDER BY ?year"を追加しておくことで、検索したデータは年順にソートされ、効率的にデータを利用できる。
【００９５】
次に、対象外とした＜ｓ、Ｐ、Ｏ＞テーブルＴ３４３に対して、図１５で説明するような処理が行われる。図１５は、クエリ分類部による共通クエリ作成処理（その２）を説明するための図である。図１５では、クエリ分類部３２１は、図１３で説明した"："を用いた変数の対応付けを「変数変換規則」として参照する。
【００９６】
具体的には、クエリ分類部３２１は、＜ｓ、Ｐ、ｏ＞テーブルＴ３４２から、「?ref:?refArea」と「?ref:?refArea,?y:?year」とを特定して、
・「?ref:?refArea」から「?ref」を「?refArea」に置き換える、
・「?y:?year」から「?y」を「?year」に置き換える
変数変換規則を取得する。クエリ分類部３２１は、得られた変数変換規則に従って、Ｇ３０２の３つ組条件の「?ref」を「?refArea」に変換する。
【００９７】
次に、クエリ分類部３２１は、定数の要素の異なる値に対して、変数に置き換える。具体的には、この例では、目的語（Ｏ）がＩＤ「Ｇ３０１」から「Ｇ３０４」までそれぞれ違う値を示している。この目的語（Ｏ）を変数に置き換える。一例として「?o001」に置き換えた例を示すが、この例に限定されず、どのような変数であってもよい。
【００９８】
よって、ＩＤ「Ｇ３０１」から「Ｇ３０４」の全ての３つ組条件に対して、
「?refArea wb270a-prop:indicator ?o001」
のような３つ組条件８ｈを得る。クエリ分類部３２１は、得られた３つ組条件を共通クエリ８のwhere節内の最後に追加し、目的語（Ｏ）を置き換えた変数をselect文に追加する。
【００９９】
全てのテーブル（３つ組条件グループ）を共通化すると、クエリ分類部３２１は、共通クエリ８を実行管理部３２３へと通知する。また、クエリ分類部３２１は、記憶部１３０に作成した＜Ｓ、Ｐ、ｏ＞テーブルＴ３４１、＜ｓ、Ｐ、ｏ＞テーブルＴ３４２、及び＜ｓ、Ｐ、Ｏ＞テーブルＴ３４３を削除してもよい。
【０１００】
次に、実行管理部３２３による実行管理処理について説明する。図１６は、実行管理部による実行管理処理を説明するための図である。図１６において、実行管理部３２３は、クエリ分類部３２１によって作成された共通クエリ８を用いて、ＬＯＤクラウド５００にデータ検索を行い、得られたデータを中間結果９として一時クエリ保存部３２９に格納する。ＬＯＤクラウド５００へのデータ検索は、ガジェットＰＰ１〜ＰＰ４に関して１回のみである。
【０１０１】
次に、実行管理部３２３は、ガジェットＰＰ１〜ＰＰ４のそれぞれのクエリを用いて、一時クエリ保存部３２９に対してデータ検索を行って得られた検索結果データ３２８を記憶部１３０に記憶する。
【０１０２】
検索結果データ３２８の取得に応じて、クエリまとめ処理部３２０は、ページ定義処理部３１０へデータ検索の完了を通知する。データ検索の完了通知に応じて、ページ定義処理部３１０は、ガジェットＰＰ１〜ＰＰ４のそれぞれの統計情報を取得してグラフを生成し、１つのページ４ｐ内に配置されたガジェット毎の画面にグラフを描画して表示する。
【０１０３】
図１７は、３つ組条件でのデータ検索例を示す図である。図１７において、共通クエリ８のうち３つ組条件「?refArea wb270a-prop:indicator ?o001」を例として、ガジェットＰＰ１でデータ検索した場合の概念を示している。
【０１０４】
３つ組条件「?refArea wb270a-prop:indicator ?o001」を用いてＬＯＤクラウド５００から得られた中間結果９には、一例として、神奈川県川崎市中原区に関する様々な統計情報を得るためのデータが含まれている。具体的には、「gn-jp:C2101」、「gn-jp:C4101」、「gn-jp:C2102」、「gn-jp:C3581」、「gn-jp:C2104」等に相当する値が示されている。値の例として、事業所数、人口等がある。
【０１０５】
このような中間結果９を保持する一時クエリ保存部３２９に対して、ガジェットＰＰ１でデータ検索した場合、一時クエリ保存部３２９の中間結果９のうち、「l4a-geo:神奈川県_川崎市_中原区」を示し、かつ、「wb270a-prop:indicator」によってリンクされる「gn-jp:C2101」の値が特定される。ガジェットＰＰ１によるデータ検索では、図１７に示されるように３つのノードが返却される。
【０１０６】
一時クエリ保存部３２９に保持されたデータは、ガジェットＰＰ１〜ＰＰ４によるデータ検索によって抽出されるデータを含んでいる。
【０１０７】
次に、クエリまとめ処理部３２０によって行われる処理について説明する。図１８は、クエリまとめ処理部による処理全体の概要を説明するためのフローチャート図である。図１８において、クエリ分類部３２１は、ページ定義処理部３１０から、ユーザが所望するページに係る定義情報１０７を受信すると、各ガジェット４ｇからクエリを抽出し、各クエリに記載された３つ組条件を型ごとに分類する（ステップＳ５０１）。定義情報１０７は、ユーザが指定した観点に係るページ４ｐを作成するための複数のガジェット４ｇを含む。
【０１０８】
型は主語（Ｏ）、述語（Ｐ）、及び目的語（Ｏ）の要素を有し、各要素が定数又は変数であるかを表した型ごとに３つ組条件が分類され、グループを形成する。形成されたグループを、「３つ組条件グループ」という。３つ組条件グループに対応するテーブルが記憶部１３０に記憶される（図１１）。
【０１０９】
クエリ分類部３２１は、各３つ組条件グループ内で、上述した「まとめ判断ルール」に従って、３つ組条件をまとめるまとめ処理を行う（ステップＳ５０２）。クエリ分類部３２１は、記憶部１３０に記憶されたテーブルごとに、「まとめ判断ルール」に従って３つ組条件グループをまとめる（図１２）。「まとめ判断ルール」でまとめられなかった３つ組条件に対して、クエリ分類部３２１は、更に、変数の置き換えによるまとめ処理を実行する（図１３）。変数の置き換えにより、「変数変換規則」が定まる。
【０１１０】
そして、クエリ分類部３２１は、まとめ処理で更新された３つ組条件グループごとのテーブルを参照して、共通クエリ８を作成する共通クエリ作成処理を行う（ステップＳ５０３）。
【０１１１】
クエリ分類部３２１は、テーブルのクエリ情報にガジェットの識別子が複数記録された３つ組条件を共通クエリ８に含める（図１４）。ガジェットの識別子が一つのみのテーブルが存在する場合には、クエリ分類部３２１は、まとめ処理にて定めた「変数変換規則」を用いて、３つ組条件内の該当する変数を変換し、異なる定数を示す要素の値は予め定めた変数に置き換える（図１５）。
【０１１２】
そして、実行管理部３２３は、クエリ分類部３２１によって作成された共通クエリ８を用いて、ＬＯＤクラウド５００に対してデータ検索を行い、得られた中間結果９を一時クエリ保存部３２９へ格納する（ステップＳ５０４）。
【０１１３】
次に、実行管理部３２３は、一時クエリ保存部３２９に対して、ガジェット４ｇごとに、ガジェット４ｇ内のクエリを用いたデータ検索を行う（ステップＳ５０５）。従って、定義情報１０７に含まれるガジェット４ｇに係るデータ検索が完了し、クエリまとめ処理部３２０は、ページ定義処理部３１０へデータ検索の完了を通知し、この処理を終了する。
【０１１４】
図１９は、クエリ分類部による処理全体を説明するためのフローチャート図である。図１９において、クエリ分類部３２１は、ページに関連付けられるガジェット４ｇを読み込む（ステップＳ６００）。
【０１１５】
クエリ分類部３２１は、全ガジェット４ｇについて３つ組条件を分類したか否かを判断する（ステップＳ６０１）。具体的には、ページ定義処理部３１０から通知された定義情報１０７に含まれるガジェット４ｇのクエリ内にある全ての３つ組条件を分類したか否かが判断される。
【０１１６】
３つ組条件を分類していないガジェット４ｇが存在する場合（ステップＳ６０１のＮＯ）、クエリ分類部３２１は、未処理のガジェット４ｇを１つ選択し、選択したガジェット４ｇのクエリ内の各３つ組条件の型を判別し、型ごとに３つ組条件を分類して（ステップＳ６０２）、ステップＳ６０１へと戻る。クエリ分類部３２１は、新たな型を検出するごとに、テーブルを作成し、３つ組条件を記録する。既に検出した型の場合、クエリ分類部３２１は、型に対応するテーブルに３つ組条件を追加する。
【０１１７】
全てのガジェット４ｇの３つ組条件を分類した場合（ステップＳ６０１のＹＥＳ）、即ち、３つ組条件の分類を終了した場合、クエリ分類部３２１は、３つ組条件を分類した全てのグループに対して、まとめ判断ルールによるまとめ処理を終了したか否かを判断する（ステップＳ６０３）。
【０１１８】
未処理のグループが存在する場合（ステップＳ６０３のＮＯ）、クエリ分類部３２１は、未処理のグループから１つ選択して、選択したグループ内の３つ組条件をまとめ判断ルールに基づいてまとめ（ステップＳ６０４）、ステップＳ６０３へと戻る。具体的には、クエリ分類部３２１は、テーブルを１つ選択し、テーブルに記録された３つ組条件をまとめ判断ルールに基づいてまとめる（図１１）。
【０１１９】
全てのグループに対してまとめ判断ルールによるまとめ処理を終了した場合（ステップＳ６０３のＹＥＳ）、クエリ分類部３２１は、まとめた３つ組条件を共通クエリに追加し、グループから削除する（ステップＳ６０５）。具体的には、テーブルから削除する３つ組条件に対応付けられたクエリ情報から、置き換え前の変数と置き換え後の変数の対応付けを取得し、変数変換規則に追加しておく。
【０１２０】
クエリ分類部３２１は、３つ組条件が残っているグループが存在するか否かを判断する（ステップＳ６０６）。テーブルのクエリ情報が２以上のガジェット４ｇの識別子を示す３つ組条件は、まとめ判断ルールによりまとめられテーブルから削除されている。３つ組条件が残っているグループとは、クエリ情報が１つのガジェット４ｇの識別子しか示さない３つ組条件のみとなったテーブルに相当する。
【０１２１】
３つ組条件が残っているグループが存在する場合（ステップＳ６０６のＹＥＳ）、クエリ分類部３２１は、残っているグループの１つを選択し、変数変換規則に基づく変数の要素の変換及び定数の要素の変数への置き換えを行って（図１５）、２以上の３つ組条件をまとめる（ステップＳ６０７）。
【０１２２】
そして、クエリ分類部３２１は、まとめにより作成された３つ組条件を共通クエリに追加し、まとめられた３つ組条件をグループから削除し（ステップＳ６０８）、ステップＳ６０６へと戻り上述した処理を繰り返す。
【０１２３】
３つ組条件が残っているグループが存在しない場合（ステップＳ６０６のＮＯ）、クエリ分類部３２１は、共通クエリ８を実行管理部に通知して（ステップＳ６０９）、この処理を終了する。
【０１２４】
ステップＳ６０６において、残っている３つ組条件とは、テーブルのクエリ情報にガジェット４ｇの識別子が１つのみ記録された３つ組条件である。
【０１２５】
図２０は、実行管理部による実行管理処理を説明するためのフローチャート図である。図２０において、実行管理部３２３は、共通クエリ８を利用してＬＯＤクラウド５００をデータ検索し、検索結果を中間結果９として一時クエリ保存部３２９へ格納する（ステップＳ７０１）。
【０１２６】
次に、実行管理部３２３は、ガジェット４ｇ内のクエリを利用して一時クエリ保存部３２９をデータ検索し、ガジェット４ｇごとの検索結果データ３２８を取得する（ステップＳ７０２）。ガジェット４ｇごとの検索結果データ３２８は、記憶部１３０に記憶される。
【０１２７】
そして、実行管理部３２３は、ガジェット４ｇごとの検索結果データ３２８をページ定義処理部に通知して（ステップＳ７０３）、この実行管理処理を終了する。
【０１２８】
以下に、本実施例を用いないで全ガジェットを対象として比較した場合（既存手法）と、本実施例におけるページ４ｐに関連付けられたガジェットのみを対象として比較した場合の結果例を示す。
【０１２９】
図２１は、比較結果例を示す図である。図２１において、既存手法では、条件は全ガジェット数「２００」及びガジェットのクエリ内の３つ組条件数「６」であり、本実施例では、条件はページ４ｐ内のガジェット数「６」及びガジェットのクエリ内の３つ組条件数「６」である。
【０１３０】
既存手法では、比較する２つのガジェット４ｇの組み合せ数と、２つのガジェット４ｇのそれぞれのクエリ内の３つ組条件との比較回数とから、
２００Ｃ２×（６×６）＝１９、９００×３６＝７１６、４００回
を得る。
【０１３１】
本実施例では、比較する２つのガジェット４ｇの組み合せ数と、２つのガジェット４ｇのそれぞれのクエリ内の３つ組条件の型を考慮した場合の比較回数（図４等の説明から１３回）とから、
４Ｃ２×１２＝６×１２＝７２回
を得る。この条件の場合には、本実施例では、既存手法と比べて、凡そ１／９０００にまで削減することができる。
【０１３２】
上述した本実施例における、ページ定義処理部３１０は特定部の一例であり、クエリ分類部３２１は作成部の一例であり、実行管理部３２３は検索部の一例である。
【０１３３】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、主々の変形や変更が可能である。
【０１３４】
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
記憶部に記憶された、表示するページの定義情報を参照して、該表示するページに関連付けられるガジェットを特定し、
特定した前記ガジェットに含まれるクエリから共通となる部分を特定し、特定した共通となる部分と、非共通の部分による問合せを包含する記載とにより共通クエリを作成し、
作成した前記共通クエリを用いてインターネットを介してデータ検索を行う
処理をコンピュータが実行するデータ検索方法。
（付記２）
前記共通クエリの作成では、前記コンピュータは、
前記クエリ内の複数の３つ組条件を構成する各要素が定数であるか変数であるかの種別を示す型ごとに分類し、該型ごとに前記共通となる部分を特定することを特徴とする付記１記載のデータ検索方法。
（付記３）
前記コンピュータは、
前記型ごとに、２以上の３つ組条件の同一要素間の一致又は不一致の結果と、前記型の前記要素の前記種別とに基づいて、該２以上の３つ組条件が検索するデータを包含して検索可能な３つ組条件を作成することで、該２以上の３つ組条件を共通化することを特徴とする付記２記載のデータ検索方法。
（付記４）
前記コンピュータは、
前記ページにおいて注目する第１の対象と、該第１の対象に係る第２の対象の指定に応じて、該ページに含まれるガジェットを前記定義情報に定義する
処理を行うことを特徴とする付記１乃至３のいずれか一項記載のデータ検索方法。
（付記５）
前記コンピュータは、
変数の要素が前記２以上の３つ組条件同士で一致しない場合に、当該要素を除外することで該２以上の３つ組条件同士で一致するときは、いずれか一方の３つ組条件を選択する第１のまとめ処理を行うことを特徴とする付記４記載のデータ検索方法。
（付記６）
前記コンピュータは、
一致しなかった前記要素の変数の対応付けを示す変数変換規則を前記記憶部に作成し、
前記第１のまとめ処理後に、前記記憶部に作成した前記変数変換規則を用いて、未だまとめられいない３つ組条件の変数の要素を対応付けられた変数へと変換し、一致しない定数の要素を予め定めた変数に置き換える第２のまとめ処理を行うことを特徴とする付記５記載のデータ検索方法。
（付記７）
前記コンピュータは、
前記インターネットを介して行ったデータ検索によりデータを取得すると、該データを前記記憶部に記憶し、
前記記憶部に記憶された前記データに対して、特定した前記ガジェットのクエリを用いてデータ検索する
処理を行うことを特徴とする付記１乃至６記載のデータ検索方法。
（付記８）
記憶部に記憶された、表示するページの定義情報を参照して、該表示するページに関連付けられるガジェットを特定し、
特定した前記ガジェットに含まれるクエリから共通となる部分を特定し、特定した共通となる部分と、非共通の部分による問合せを包含する記載とにより共通クエリを作成し、
作成した前記共通クエリを用いてインターネットを介してデータ検索を行う
処理をコンピュータに行わせるデータ検索プログラム。
（付記９）
記憶部に記憶された、表示するページの定義情報を参照して、該表示するページに関連付けられるガジェットを特定する特定部と、
特定した前記ガジェットに含まれるクエリから共通となる部分を特定し、特定した共通となる部分と、非共通の部分による問合せを包含する記載とにより共通クエリを作成する作成部と、
作成した前記共通クエリを用いてインターネットを介してデータ検索を行う検索部と
を有する情報処理装置。
【符号の説明】
【０１３５】
２          インターネット
３          端末
４ｐ        ページ
４ｇ        ガジェット
１００      サーバ装置
１０５      定義情報記憶部
２００      ＬＯＤサーバ装置
２０５      データベース（ＲＤＦストア）
５００      ＬＯＤクラウド
１０００    システム
【図１】
2019159815.tif 000003
【図２】
2019159815.tif 000004
【図３】
2019159815.tif 000005
【図４】
2019159815.tif 000006
【図５】
2019159815.tif 000007
【図６】
2019159815.tif 000008
【図７】
2019159815.tif 000009
【図８】
2019159815.tif 000010
【図９】
2019159815.tif 000011
【図１０】
2019159815.tif 000012
【図１１】
2019159815.tif 000013
【図１２】
2019159815.tif 000014
【図１３】
2019159815.tif 000015
【図１４】
2019159815.tif 000016
【図１５】
2019159815.tif 000017
【図１６】
2019159815.tif 000018
【図１７】
2019159815.tif 000019
【図１８】
2019159815.tif 000020
【図１９】
2019159815.tif 000021
【図２０】
2019159815.tif 000022
【図２１】
2019159815.tif 000023