(57)【要約】【課題】人間用の表形式の利点を保ったまま計算機による処理が可能なRDF形式のデータを形成する。【解決手段】本発明は、オリジナルの表の列見出し部を構成する各行の下に１行ずつ挿入し、挿入行の各セルに対応するIDを記入すると共に、行見出し部を構成する各列の右に１列ずつ挿入し、挿入列の各セルに対応するIDを記入する第１の処理部と、前記列見出し部とデータ部の間に１行挿入すると共に、行見出し部とデータ部の間に１列挿入し、挿入した１行及び１列の各セルが次元の値であれば次元のIDを記入し、測度であれば何も記入せず、すべての列見出し又は行見出しが次元の値であれば挿入行及び列の交点セルに測度のIDを更に記入する第２の処理部と、作成されたテンプレート表のデータ部の各セルに対応する次元とその値及び測度を同定し、RDF形式のデータを生成する第３の処理部とを有する。【選択図】図６
2015028736.tif 000002
【特許請求の範囲】
【請求項１】
オリジナルの表の列見出し部を構成する各行の下に１行ずつ挿入し、挿入した行の各セルに対応する列見出しのIDを記入すると共に、オリジナルの表の行見出し部を構成する各列の右に１列ずつ挿入し、挿入した列の各セルに対応する行見出しのIDを記入する第１の処理部と、
前記列見出し部とデータ部の間に１行挿入すると共に、行見出し部とデータ部の間に１列挿入し、挿入した１行及び１列の各セルには、それぞれ対応する列見出し又は行見出しが次元の値であれば次元のIDを記入し、測度であれば何も記入せず、すべての列見出し又は行見出しが次元の値であれば、挿入した１行及び１列の交点のセルに測度のIDを更に記入する第２の処理部と、
前記第１及び第２の処理部により作成されたテンプレート表のデータ部の各セルから、各セルに対応する列見出し及び行見出しに記入されている次元とその値及び測度を同定し、それらの情報をRDF形式のデータとして出力する第３の処理部と
を有することを特徴とする表形式多次元データ変換装置。
【請求項２】
請求項１に記載の表形式多次元データ変換装置において、
前記オリジナルの表又は前記テンプレート表を表示する第１の表示エリアと、RDF形式のデータを表示する第２の表示エリアとを表示画面上に表示させる表示制御部
を更に有することを特徴とする表形式多次元データ変換装置。
【請求項３】
請求項２に記載の表形式多次元データ変換装置において、
前記表示制御部は、表示画面上に、前記第１及び第２の表示エリアを並列表示する
ことを特徴とする表形式多次元データ変換装置。
【請求項４】
請求項２に記載の表形式多次元データ変換装置において、
前記表示制御部は、表示画面上に、前記第１及び第２の表示エリアのいずれか一方だけを切り替え可能に表示する
ことを特徴とする表形式多次元データ変換装置。
【請求項５】
請求項２に記載の表形式多次元データ変換装置において、
前記表示制御部は、前記第１の表示エリアに、前記オリジナルの表及び前記テンプレート表のいずれか一方だけを切り替え可能に表示する
ことを特徴とする表形式多次元データ変換装置。
【請求項６】
請求項２に記載の表形式多次元データ変換装置において、
前記表示制御部は、前記第１の処理部が挿入した行及び列のうち列見出しのID及び行見出しのIDを記入するべきセルをハイライト表示する
ことを特徴とする表形式多次元データ変換装置。
【請求項７】
請求項２に記載の表形式多次元データ変換装置において、
前記表示制御部は、前記第２の処理部が挿入した行及び列のうち次元のID及び測度のIDを記入するべきセルをハイライト表示する
ことを特徴とする表形式多次元データ変換装置。
【請求項８】
請求項１に記載の表形式多次元データ変換装置において、
表示画面上に表示されている前記オリジナルの表又は前記テンプレート表に対して行又は列を挿入する操作の受付時、挿入行の下に１行を自動的に挿入する、又は、挿入列の右に１列を自動的に挿入する第４の処理部
を更に有することを特徴とする表形式多次元データ変換装置。
【請求項９】
請求項１に記載の表形式多次元データ変換装置において、
表示画面上に表示されている前記オリジナルの表又は前記テンプレート表から行又は列を削除する操作の受付時、削除行の下の１行も同時に削除する、又は、削除列の右の１列も同時に削除する第５の処理部
を更に有することを特徴とする表形式多次元データ変換装置。
【請求項１０】
請求項２に記載の表形式多次元データ変換装置において、
前記表示制御部は、前記第１のエリアに表示された前記オリジナルの表又は前記テンプレート表をRDF形式のデータに変換するボタンを表示する
ことを特徴とする表形式多次元データ変換装置。
【請求項１１】
請求項２に記載の表形式多次元データ変換装置において、
前記表示制御部は、前記第２のエリアに表示されたRDF形式のデータを前記オリジナルの表又はテンプレート表に変換するボタンを表示する
ことを特徴とする表形式多次元データ変換装置。
【請求項１２】
請求項１１に記載の表形式多次元データ変換装置において、
前記ボタンの操作時、
RDF形式のデータから３要素の集合を生成する第６の処理部と、
前記集合から測度の述語を抽出した後、任意の順番でソートして第１のリストと生成する第７の処理部と、
前記集合から次元の述語を抽出した後、任意の順番でソートして第２のリストを生成する第８の処理部と、
前記集合から主語を抽出した後、任意の順番でソートして第３のリストを生成する第９の処理部と、
前記第３のリストの各要素に対して長さが次元数の第４のリストを生成する第１０の処理部と、
前記第４のリストをその第ｉ番目（ｉは自然数）の要素について多重ソートして第５のリストを生成する第１１の処理部と、
前記第５のリストの要素の重複を削除して第６のリストを生成する第１２の処理部と、
前記第１のリストの各要素を測度として列見出し部に配列する第１３の処理部と、
前記第２のリストの各要素を次元名として行見出し部に配列する第１４の処理部と、
前記第６のリストの第ｊ番目（ｊは自然数）の要素を第ｊ＋１行目の行見出し要素に配置する第１５の処理部と、
前記第３のリストの各要素について前記集合を検索し、測度のインデックスを同定する処理と、前記第５のリストの要素と一致する前記第６のリストの要素を検索し、次元のインデックスを同定する処理と、前記測度のインデックスを同定する処理で同定された目的語を、前記同定された２つのインデックスで与えられるセルに配置する処理とを含む第１６の処理部と
を有することを特徴とする表形式多次元データ変換装置。
【請求項１３】
オリジナルの表の列見出し部を構成する各行の下に１行ずつ挿入し、挿入した行の各セルに対応する列見出しのIDを記入すると共に、オリジナルの表の行見出し部を構成する各列の右に１列ずつ挿入し、挿入した列の各セルに対応する行見出しのIDを記入する第１の処理と、
前記列見出し部とデータ部の間に１行挿入すると共に、行見出し部とデータ部の間に１列挿入し、挿入した１行及び１列の各セルには、それぞれ対応する列見出し又は行見出しが次元の値であれば次元のIDを記入し、測度であれば何も記入せず、すべての列見出し又は行見出しが次元の値であれば、挿入した１行及び１列の交点のセルに測度のIDを更に記入する第２の処理と、
前記第１及び第２の処理の実行により作成されたテンプレート表のデータ部の各セルから、各セルに対応する列見出し及び行見出しに記入されている次元とその値及び測度を同定し、それらの情報をRDF形式のデータとして出力する第３の処理と
を有することを特徴とする表形式多次元データ変換方法。
【請求項１４】
請求項１３に記載の表形式多次元データ変換方法において、
前記オリジナルの表又は前記テンプレート表を表示する第１の表示エリアと、RDF形式のデータを表示する第２の表示エリアとを表示画面上に表示させる第４の処理
を更に有することを特徴とする表形式多次元データ変換方法。
【請求項１５】
請求項１４に記載の表形式多次元データ変換方法において、
前記第４の処理は、表示画面上に、前記第１及び第２の表示エリアを並列表示する
ことを特徴とする表形式多次元データ変換方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表形式の多次元データを読み込み、計算機が処理しやすい形式に変換する方法および装置に関する。
【背景技術】
【０００２】
現在、以下に示す処理に対するニーズが存在する。
(1) 表形式で表現されている統計データ等の多次元データを様々な観点から絞り込んで集計する処理
(2) 異なる表形式で表現されている多次元データを１つの多次元データに統合する処理
【０００３】
しかし、表形式で表現された多次元データは、一般に、計算機処理にはあまり適さない。そこで近年、前述した計算機処理のために、多次元データをRDF（Resource Description Framework）と呼ばれる形式で表現することが試みられている。例えば図１や図２に示すように３行３列で表現された表データをRDF形式で表現すると、模式的には、図３に示すようなネットワーク形式で表現される。図３は、図１及び図２に示す表のデータ部（２行２列のセルで構成される）のうち「セル１」をRDF形式で表したものであり、各セルを一意に特定するための次元情報や測度情報により記述される。このような記述方式を採用すれば、仮に同じセルが異なる表形式によって記述されていたとしても、RDF形式では表現が同一となり、計算機による絞込み処理や統合処理などが容易になる。
【０００４】
前述の通り、表形式は、一般的に、計算処理には適さないが人間には扱い易い形式である。一方で、データ数が数千にも及ぶ多次元データをRDF形式で表現した場合、人間にはデータ間の関係を把握することが困難なだけでなく、データの一覧性に欠ける問題がある。また、RDF形式は、人間にとっては目的とするデータを見つけ難いため、データの編集も難しい問題がある。更に、表形式であれば、行見出しや列見出しの要素（例えば図２の「製品出荷額」）を一度に変更できるのに対し、RDF形式で同じ処理を実行するには、個々のセルに対して、対応するノードやリンク（図３の場合は「ex:vStocks」というノードとリンク）の情報を全て変更する必要がある。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
このため、同じ多次元データを、人間が扱いやすい二次元の表形式と、計算機が扱いやすいRDF形式との間で相互に変換できることが望まれる。ところが、表形式をRDF形式に変換する処理を計算機で実行しようにも、表形式には計算機処理に必要な情報が欠けていることが多い。以下、具体例により説明する。
【０００６】
まず、多次元データを計算機で処理する際に必須となる情報について説明する。表の構成データ（セル）は、複数の観点で測定された観測値である。例えば図１の符号１０５の構成データ（セル）は、「北海道」という「都道府県」に対応する製品出荷額の値を表している。「都道府県」の要素が「北海道」であるという観点がないと、この構成データ（セル）は意味をもたない。ここで、「都道府県」のことを次元、「北海道」のことを次元の値と呼ぶ。図１には、次元の値である「北海道」しか記載されていないが、人間はこの表全体を見れば、「北海道」が「都道府県」という次元の値であることを予測できる。しかし、「北海道」は「工業地域」という別の次元の値である可能性もあるため、計算機処理を行うためには次元を明示しておく必要がある。
【０００７】
また、符号１０１で示す列見出しの「製品出荷額」は、観測値を定める次元ではなく、観測値が何を測定したものであるかを表している。このような情報を測度と呼ぶ。ここでも、人間が見れば「製品出荷額」が「測度」を表していることを理解可能であるが、計算機処理を行うには、「測度」を「次元」と明確に区別することが必要となる。また、後述するように、人間用の表では、「測度」の記載自体が省略されることも多い。
【０００８】
計算機であっても、「都道府県」、「北海道」、「製品出荷額」といった次元、次元の値、測度の文字列に対し、URI（Uniform Resource Identifier）のような一意のIDが付与されていれば、同一IDを介してデータを統合することができる。しかし、このようなIDは、人間用の表では不要なため、図１に示す表でも明記されていない。
【０００９】
以上をまとめると、以下のような特徴が確認される。
(1) 人間用の表では、次元、測度が省略されることがある。
(2) 人間用の表では、次元と測度の区別はほとんどの場合なされていない。
(3) 人間用の表では、次元、次元の値、測度のIDも明記されていない。
【００１０】
そのため、表形式からRDF形式への変換処理を計算機で実行させるためには、人間用の表で欠けている情報を、変換処理に先立って記述しておく必要がある。その際、人間用の表の構造を可能な限り保存した状態で、変換処理に必要な情報を自然に埋め込むことができれば、人間にとって扱いやすい表形式の利点を保ったまま、計算機による処理が可能なRDF形式のデータに変換することができると発明者らは考える。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、発明者らは、例えば特許請求の範囲に記載の構成を採用する。本出願は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、表形式多次元データ変換装置（方法）は、(1) オリジナルの表の列見出し部を構成する各行の下に１行ずつ挿入し、挿入した行の各セルに対応する列見出しのIDを記入すると共に、オリジナル表の行見出し部を構成する各列の右に１列ずつ挿入し、挿入した列の各セルに対応する行見出しのIDを記入する第１の処理部（処理）と、(2) 列見出し部とデータ部の間に１行挿入すると共に、行見出し部とデータ部の間に１列挿入し、挿入した１行及び１列の各セルには、それぞれ対応する列見出し又は行見出しが次元の値であれば次元のIDを記入し、測度であれば何も記入せず、すべての列見出し及び行見出しが次元であれば、挿入した１行及び１列の交点のセルに測度のIDを更に記入する第２の処理部（処理）と、(3) 前記第１及び第２の処理部（処理）（実行順序は問わない）により作成されたテンプレート表（中間表）のデータ部の各セルから、各セルに対応する列見出し及び行見出しに記入されている次元、次元の値、測度を同定し、それらの情報をRDF形式のデータとして出力する第３の処理部（処理）とを有する。
【発明の効果】
【００１２】
本発明によれば、入力されたオリジナルの表のデータ部に対しては全く変更を加えることなく、RDF形式への変換に必要な情報をオリジナルの表に埋め込んだテンプレート表（中間表）を作成し、更に作成されたテンプレート表（中間表）からRDF形式のデータに必要な情報を同定する。この処理手法の採用により、本発明は、人間にとって扱いやすいという表形式の利点を保持した状態のまま、入力されたオリジナルの表のデータ部を計算機処理が可能なRDF形式のデータに変換することができる。前述した以外の課題、構成及び効果は、以下の実施の形態の説明により明らかにされる。
【図面の簡単な説明】
【００１３】
【図１】表データの一例を示す図。
【図２】表データを構成するセルデータとRDF形式による記述に必要な情報との関連付けを説明する図。
【図３】RDFデータの模式例を示す図。
【図４】表形式多次元データ変換装置の構成例を示すブロック図。
【図５】RDFデータのテキスト表現の例を示す図。
【図６】RDF化に必要な情報を埋め込んだテンプレート表の例を示す図。
【図７】単一測度の表データの例を示す図。
【図８】単一測度の表データから生成したテンプレート表の例を示す図。
【図９】複数測度の表データの例を示す図。
【図１０】複数測度の表データから生成したテンプレート表の例を示す図。
【図１１】表データおよびRDFデータの編集画面例１を示す図。
【図１２】表データおよびRDFデータの編集画面例２を示す図。
【図１３】表データからテンプレート表を生成する処理を説明するフローチャート。
【図１４】テンプレート行とテンプレート列の交点位置をハイライト表示した画面例を示す図。
【図１５】各列見出し行の直下に挿入されたURI行をハイライト表示した画面例を示す図。
【図１６】各行見出し列の直右に挿入されたURI列をハイライト表示した画面例を示す図。
【図１７】テンプレート表の表示を隠蔽状態に切り替える場合の処理を説明するフローチャート。
【図１８】テンプレート表にURI行を挿入する処理を説明するフローチャート。
【図１９】テンプレート表からURI行を削除する処理を説明するフローチャート。
【図２０】表データをRDFデータに変換する処理を説明するフローチャート。
【図２１】RDFデータを表データに変換する処理を説明するフローチャート。
【図２２】RDFデータから変換した表データの例を示す図。
【図２３】RDFデータのトリプルの例を示す図。
【発明を実施するための形態】
【００１４】
以下、図面に基づいて、本発明の実施の形態を説明する。なお、本発明の実施態様は、後述する形態例に限定されるものではなく、その技術思想の範囲において、種々の変形が可能である。
【００１５】
［実施例１］
（１）装置構成
図４に、本実施例に係る表形式多次元データ変換装置の構成を示す。表形式多次元データ変換装置４００は、CPU４０１、メモリ４０２、キーボード・マウス４０３、ディスプレイ４０４、テンプレート生成部４０５、RDF変換部４０６、表変換部４０７、入出力制御部４０８、表示制御部４０９、データ通信部４１０、二次記憶部４１１を備える。
【００１６】
CPU４０１は、テンプレート生成部４０５、RDF変換部４０６、表変換部４０７、入出力制御部４０８、表示制御部４０９を構成する各種プログラムを実行することによって各種の処理を実行する。メモリ４０２は、CPU４０１が実行するプログラムと、プログラムを実行するために必要なデータとを一時的に記憶する。キーボード・マウス４０３は、ユーザからの入力を受け付ける。ディスプレイ４０４は、編集画面（例えば図１１の編集画面１１００や図１２の編集画面１２００）を表示制御部４０９の制御の下で表示する。二次記憶部４１１は、入力データや出力データなどを永続的に記憶するハードディスク等で構成される。
【００１７】
テンプレート生成部４０５は、表データに行や列を挿入し、RDF化に必要な情報（以下「RDF化情報」ともいう）が記入されるテンプレート表（中間表）を生成するプログラムで構成される。RDF変換部４０６は、必要な情報が記入されたテンプレート表（中間表）を使用して、データ部を構成する各セルが表すデータをRDF形式のデータに変換するプログラムで構成される。表変換部４０７は、RDF形式のデータを表形式に変換するプログラムで構成される。入出力制御部４０８は、表形式やRDF形式のデータの入出力を制御する。表示制御部４０９は、編集画面を表示するプログラムで構成される。データ通信部４１０はネットワーク４２０を介してデータ通信をするインターフェースであり、例えば、TCP/IPプロトコルによって通信可能なＬＡＮカードによって構成される。
【００１８】
（２）テンプレート表の構成
各構成部のプログラムの詳細を説明する前に、テンプレート生成部４０５で生成されるテンプレート表（中間表）について説明する。以下の説明では、図１及び図２に示す表をオリジナルの表として使用し、当該表からテンプレート表（中間表）を生成し、生成されたテンプレート表に必要な情報を入力した後、データ部を構成する各セルのデータを後述するRDF変換部４０６によってRDF形式のデータに変換する場合について説明する。
【００１９】
前述の通り、図２のセル１をRDF形式を模式化したのが図３である。RDF形式のデータは、実際には、図５に示すようなテキスト形式で出力される。発明が解決する課題で述べたように、表をRDF化する際には、観測値である表のデータ部を構成するセル毎に、観測の観点である次元とその値、観測の対象である測度の情報を図３に示すような形式で記述する。図３の場合、セル１の都道府県「ex:pref」の次元値が北海道「pref:C00」であること、セル１の測度「qb:measureType」が製品出荷額「ex:vStocks」であること、セル１の製品出荷額「ex:vStocks」が“6182”であることを表している。ここで、「ex:pref」などは、URIという一意のIDである。
【００２０】
図２は、RDF形式で表されたセル１の情報が、オリジナルの表のどこのセルに対応するかを示している。都道府県「ex:pref」は表中には記入されていない。次元の値である「北海道」と、測度である「製品出荷額」という情報自体は記入されているが、前者が次元の値で、後者が測度であるという区別まではオリジナルの表中には記入されていない。また、これらのURIもオリジナルの表には記入されていない。
【００２１】
そこで、これらの情報が記入できるように、図１及び図２に行や列を挿入して図６に示すようなテンプレート表（中間表）を生成する。テンプレート表（中間表）の生成処理の詳細については後述する。
【００２２】
まず、テンプレート生成部４０５は、列見出しの行６０１の下に１行挿入し（行６０２）、同行内に対応する測度のURIを記入できるようにする。同様に、テンプレート生成部４０５は、行見出しの列６０３の右に１列挿入し（列６０４）、同列内に対応する次元の値のURIを記入できるようにする。図６の例では、既に対応する速度や次元の値のURIが記入されている。なお、図６の場合とは異なり、列見出し行６０１の上に１行挿入し、行見出し列６０３の左に１行挿入することもできる。
【００２３】
次に、テンプレート生成部４０５は、列見出し部（図６では、行６０１と行６０２）とデータ部の間に１行挿入し（行６０５）、行見出し部（図６では、列６０３と列６０４）とデータ部の間にも１列挿入する（列６０６）。なお、ここでは、行６０２と列６０４を挿入した後に行６０５と列６０６を挿入しているが、挿入順序はこれにかぎらず、先に行６０５と列６０６を挿入し、その後、行６０２と列６０４を挿入しても良い。
【００２４】
図６に示すように、見出し部（行見出し部と列見出し部）とデータ部を分離するように挿入された行６０５及び列６０６を構成するセルのうち斜線が引いてあるセルは未使用セルとする。斜線を引いていないセルは、次元や測度の情報の記入に使用する。例えばセル６０７を含む列６０４には都道府県という次元の値が挿入されるため、セル６０７には、都道府県に対応する次元のURIを記入する。一方、セル６０８を含む行の各セルが対応する列見出しは全て測度を表すため、セル６０８は空白とする。
【００２５】
このような挿入ルールの採用により、テンプレート生成部４０５は、セルが空白か否かにより、該当セルに対応する行見出しや列見出しが次元を表しているか測度を表しているかを区別することができる。以上により、RDF化情報を全て表に埋め込むことができる。因みに、ここでの情報の挿入は、例えば利用者が手動で行う。図６に示すテンプレート表（中間表）が完成すれば、プログラムは、データ部のデータからRDF形式のデータを自動生成することができる。
【００２６】
ここで、テンプレート表（中間表）を生成する際にオリジナルの表に自動挿入される行や列は、全て、列見出し部や行見出し部に限られている。つまり、データ部には全く変更がないため、オリジナルの表の基本構造が保存される。よって、挿入した行や列を隠せば、いつでもテンプレート表（中間表）からオリジナルの表を再現できる。つまり、利用者は、オリジナルの表上で、データを閲覧したり、データを編集したりすることができる。テンプレート表（中間表）からオリジナルの表への変換処理については図１７を用いて説明し、データの編集処理（行／列の挿入又は削除処理）については図１８や図１９を用いて説明する。
【００２７】
本実施例で提案するテンプレート表（中間表）では、オリジナルの表（２次元表）を構成する列見出しの各要素の下（又は上）に隣り合うようにURIを記入することができるだけでなく、行見出しの右（又は左）に隣り合うようにURIを記入することができる。このため、利用者は、URIの記入漏れや記入誤りを即座に見つけることができる。また、このテンプレート表（中間表）の場合、利用者は、列見出し部や行見出し部にまとめられている次元の値や測度とURIとを一度に一覧できるため、URIの表記の一貫性も保持しやすい。
【００２８】
以下、図７〜図１０を用い、オリジナルの表が単一測度の場合と複数測度の場合とで、生成されるテンプレート表がどのように異なるかを説明する。因みに、図７はオリジナルの表が単一測度の表データの例であり、図９はオリジナルの表が複数測度の表データの例を示している。また、図８は単一測度の表データから生成されるテンプレート表の例であり、図１０は複数測度の表データから生成されるテンプレート表の例である。以下、測度が単一の場合と複数の場合を順番に説明し、図６に示すテンプレート表（中間表）が、様々な表形式に対応可能であることを説明する。
【００２９】
図７は、オリジナルの表を構成する列見出しと行見出しがいずれも次元で与えられる例である。列見出しの行７０１は「産業分類」という次元を与え、行見出しの列７０２は「都道府県」という次元を与えている。測度は全てのデータに共通であり、例えば「売上高」とする。しかし、測度の情報は、オリジナルの表内には記載されず、表のタイトルなどに記載されることが多い。このような形式の表は、単一測度の表と呼ばれる。
【００３０】
図８は、図７に示すオリジナルの表から生成したテンプレート表の一例である。図６を生成した手順と同じ手順で生成する。ただし、図７に示す単一測度の表の場合、列見出しの行７０１と行見出しの列７０２が全て次元で与えられる。このため、列見出しの行の下に挿入された行８０３と行見出し部とデータ部との間に挿入された列８０５の交点に位置するセル８０２には測度の次元が入力される（図６との違い）。このため、データ部を構成する各セルの測度の次元は、見出し部とデータ部との間に挿入された行８０４と列８０５の交点に位置するセル８０１に記入する。
【００３１】
図９は、列見出し部と行見出し部がそれぞれ複数の行及び列で構成される複雑な表の例である。図９で表すオリジナルの表のうち行見出しの列９０３及び９０４と列見出しの行９０２は次元を表し、列見出しの行９０１は測度を表している。図１０は、図９に示す複数測度のオリジナルの表から生成したテンプレート表の一例である。このテンプレート表の場合、２行目の列見出しの行１００３の下に挿入された行１００４と、行見出し部とデータ部との間に挿入された列１００９とが交差するセル１０１３に次元が書き込まれる。なお、１行目の列見出しの行１００１の下に挿入された行１００２と、行見出し部とデータ部との間に挿入された列１００９とが交差するセル１０１２は、対応する列見出しの行の要素が全て測度に対応するため空白である。なお、測度URIは行１００２の対応セルに書き込まれるため、見出し部とデータ部の間に挿入された行１０１０と列１００９の交点に位置するセル１０１１は空白のままとなる（図８との違い）。
【００３２】
以上のように、本実施例で提案するテンプレート表は、見出し部（列見出しの行と行見出しの列）が、(１)「次元（次元の値）」で構成される見出しと「測度」で構成される見出しの組み合わせ、（２）「次元（次元の値）」で構成される見出し同士の組み合わせ、（３）「次元（次元の値）と測度」で構成される複合見出しと「次元（次元の値）」で構成される見出しの組み合わせ等にも対応することができる。
【００３３】
（３）編集画面
図１１に、表形式多次元データ変換装置４００で使用する編集画面の一例を示す。編集画面１１００は、表形式のデータからRDF形式のデータを生成する場合だけでなく、RDF形式のデータから表形式のデータを作成する場合にも使用される。編集画面１１００上には、同じデータに対応する表形式の表示エリアとRDF形式の表示エリアが並んで表示される。利用者は、編集画面１１００上で、これら２つのデータを相互に変換することができる。また、個々の表示エリアでは、対応するデータを個別に編集するために利用することもできる。
【００３４】
表示エリア１１０４は表形式のデータを表示するエリアであり、表示エリア１１０５はRDF形式のデータを表示するエリアである。表示エリア１１０４には、オリジナルの表又はRDF形式のデータから作成された表だけでなく、テンプレート表も選択的に表示される。表示エリア１１０５には、図５に示したように、RDF形式のデータがテキスト形式で表示される。利用者は、この編集画面１１００により、データ全体の内容を容易に理解しつつ、セル毎のリンク関係も容易に確認することができる。
【００３５】
表読込ボタン１１０１が画面上でクリック操作されると、表示制御部４０９は、ファイル選択画面を編集画面１１００上に表示する。なお、ディスプレイ４０４の画面表面に入力用のタッチスクリーンが配置されている場合には、マウスによるクリック操作に代えて、タッチ操作が用いられる。選択対象である表データは、二次記憶部４１１又はネットワーク４２０を通じて外部記憶部から読み出される。表示制御部４０９は、読み込んだ表データから生成されたテンプレート表（中間表）を表示エリア１１０４に表示する。また、表示制御部４０９は、表示エリア１１０４にテンプレート表が表示されている場合、オリジナルの表をRDF化するために必要な情報（例えば次元URI、値URI、測度URI）を対応するセルに記入した状態で表示する。
【００３６】
表示切替ボタン１１０２は、表示エリア１１０４に表示する表の形式を切り替えるために使用される。例えばテンプレート表が表示エリア１１０４に表示されている状態で表示切替ボタン１１０２がクリック操作されると、表示制御部４０９は、テンプレート表の生成時に挿入された行や列を隠し、表示内容をオリジナルの表に戻す。また例えば、オリジナルの表が表示されている状態で表示切替ボタン１１０２がクリック操作されると、表示制御部４０９は、隠されている行や列を再度表示する。すなわち、本実施例の場合、表示切替ボタン１１０２は、挿入行や挿入列を表示する状態と挿入行や挿入列を表示しない状態を相互に切り替えるトグルスイッチとして機能する。
【００３７】
利用者は、表示切替ボタン１１０２を使用目的に応じて操作することにより、表示エリア１１０４の表示状態を切り替えて所望の作業を行うことができる。例えばRDF化情報を入力する際には、表示エリア１１０４に挿入行や挿入列を表示させる（すなわち、テンプレート表を表示させる）。RDF化情報の入力が終わると、利用者は、挿入行や挿入列を隠してオリジナルの表と同じ表示状態でデータの閲覧やデータの編集に集中する。
【００３８】
表書き出しボタン１１０６が画面上でクリック操作されると、表形式多次元データ変換装置４００は、表示エリア１１０４に表示されている表を、二次記憶部４１１に保存する、又は、ネットワーク４２０を通じて接続された外部記憶部に保存する。
【００３９】
変換ボタン１１０８は、表示エリア１１０４に表示されている表形式のデータをRDF形式のデータに変換する際にクリック操作される。当該ボタンがクリック操作されると、表示エリア１１０４に表示された表形式のデータから生成されたRDF形式のデータが表示エリア１１０５に表示される。この機能により、利用者は、計算機が処理可能なRDFデータを容易に生成することができる。
【００４０】
これとは別に、RDF読込ボタン１１０３は、二次記憶部４１１又はネットワーク４２０を通じて接続された外部記憶部からRDF形式のデータを読み出して表示エリア１１０５に表示するために使用される。
【００４１】
RDF書き出しボタン１１０７が画面上でクリック操作されると、入出力制御部４０８は、表示エリア１１０５に表示されているRDF形式のデータを、二次記憶部４１１に保存する、又は、ネットワーク４２０を通じて接続された外部記憶部に保存する。
【００４２】
変換ボタン１１０９は、表示エリア１１０５に表示されているRDF形式のデータを表形式のデータに変換する際にクリック操作される。当該ボタンがクリック操作されると、表示エリア１１０５に表示されていたRDF形式のデータから生成された表形式のデータが表示エリア１１０４に表示される。この機能により、利用者は、RDFデータに対応する表の内容を容易に確認することができる。
【００４３】
図１２に、他の編集画面例を示す。編集画面１２００は、表形式のデータとRDF形式のデータとは画面内で排他的に切り替え表示され、表示形式の切り替えにはタブ１２０１及び１２０２が用いられる。タブ１２０１は、表形式のデータを画面表示する際にクリック操作される。図中上段の画面に相当する。タブ１２０２は、RDF形式のデータを画面表示する際にクリック操作される。図中の下段の画面に相当する。なお、図１２には、図１１と対応する部分に同一符号を付して表している。当該表示形式を採用すれば、ディスプレイ４０４の限られた表示サイズを有効に活用することができる。すなわち、利用者による表の確認を容易にできる。
【００４４】
（４）処理動作例
以下、CPU４０１が実行するプログラムを通じて実現される処理動作の一例を説明する。
【００４５】
（４−１）表データからテンプレート表を生成する処理
まずは、利用者が表読込ボタン１１０１をクリック操作した場合に実行される処理内容を説明する。すなわち、読み込んだ表からテンプレート表を生成する処理について説明する。図１３に、テンプレート生成処理手順を示す。なお、図１３に示す処理は、プログラムに従い、CPU４０１とテンプレート生成部４０５が連携して実行する。
【００４６】
（ステップ１３０１）
表読込ボタン１１０１のクリック操作を検知したCPU４０１は、ファイル選択画面で選択された表データをメモリ４０２に読み込み、編集画面１１００又は編集画面１２００の形態で読み込まれた表データを表示する。
【００４７】
（ステップ１３０２）
表示エリア１１０４にオリジナルの表が表示されている場合において、利用者がデータ部の開始行と開始列を指示入力すると、テンプレート生成部４０５は、それぞれの列番号を変数DR及びDCとして保存する。図９に示す表の場合であれば、データの開始行DRは３行目、データの開始列DCは３列目になる。もっとも、データのフォーマットの均一性（例えば日付形式）からデータ部分をテンプレート生成部４０５に自動推定させる手法を採用してもよい。また、自動推定された値を画面上に表示させ、必要に応じて、利用者の修正を受け付ける手法を採用してもよい。
【００４８】
（ステップ１３０３−１３０４）
前ステップで変数DR及びDCが定まると、テンプレート生成部４０５は、データ部の上側に１行を挿入すると共にデータ部の左側に１列を挿入し、次元と測度の情報を記入するための行および列を用意する。具体的には、DR行の１行上に空行を挿入し、DC列の１列左に空列を挿入する。本明細書では、このようにデータ部と見出し部（データ部以外の部分であり、行見出しや列見出しを含む）の間に挿入される行及び列のことをテンプレート行及びテンプレート列と呼ぶ。例えば図９に示す表が与えられた場合、テンプレート生成部４０５は、行９０５の上にテンプレート行を挿入し、列９０６の左にテンプレート列を挿入する。すなわち、図１０の行１０１０及び列１００９が挿入される。
【００４９】
（ステップ１３０５）
テンプレート行とテンプレート列が表中に挿入されると、テンプレート生成部４０５は、それらの交点に位置するセル１０１１をハイライト表示する。図１４に表示例を示す。ハイライト表示されているセルは、RDF化情報の入力対象となるセルであり、利用者に入力を促す効果がある。ハイライト表示により、利用者は、入力可能なセルを間違えずに済む。
【００５０】
（ステップ１３０６）
次に、テンプレート生成部４０５は、列見出し行（列見出し行が複数行の場合には、個々の列見出し行）の直下に空行を１行ずつ挿入し、次元の値と測度のURIを記入するための行を用意する。この挿入行をURI行と呼ぶ。図１５に、列見出しの行が２行の場合の表示例である。同時に、テンプレート生成部４０５は、利用者が入力すべき箇所をハイライト表示する。このハイライト表示により、利用者は、入力可能なセルを間違えずに済む。
【００５１】
（ステップ１３０７）
この後、テンプレート生成部４０５は、データの開始行DRの値を更新する。具体的には、ステップ１３０２で設定された開始行DRの値を２倍する。
【００５２】
（ステップ１３０８）
さらに、テンプレート生成部４０５は、行見出し列（行見出し列が複数列の場合には、個々の行見出し列）の直右隣りに１列ずつ挿入し、次元の値と測度のURIを記入するための行を用意する。同時に、テンプレート生成部４０５は、利用者が入力すべき箇所をハイライト表示する。この挿入列をURI列と呼ぶ。図１６に、行見出し列が２行の場合の表示例を示す。この場合も、ハイライト表示により、利用者は、入力可能なセルを間違えずに済む。
【００５３】
（ステップ１３０９）
この後、テンプレート生成部４０５は、データの開始列DCの値を更新する。具体的には、ステップ１３０２で設定された開始列DCの値を２倍する。
【００５４】
（まとめ）
以上の処理によりテンプレート表の生成が終了する。利用者は、テンプレート表のうちハイライト表示されているセルにRDF化情報を入力する。テンプレート生成部４０５は、入力された情報を各セルに対応付けて保存する。なお、過去に入力された履歴や辞書等を利用できる場合、テンプレート生成部４０５は、これらの情報に基づいて、RDF化情報を対応セルに自動的に入力する仕組みを採用することもできる。自動入力機能が搭載される場合、利用者の入力負担を軽減することができる。もっとも、全ての情報を自動入力できない場合も考えられるし、自動入力された情報の内容に誤りがある場合も考えられる。従って、自動入力された情報は、利用者が入力内容を確認できる表示態様で表示されることが望ましい。
【００５５】
（４−２）表示切替ボタン操作時の処理
次に、利用者が表示切替ボタン１１０２をクリック操作した場合に実行される処理内容を説明する。すなわち、表示エリア１１０４に表示される表の表示状態を切り替える場合の処理動作を説明する。表示制御部４０９は、表示切替ボタン１１０２がクリック操作された時点で、テンプレート行／列及びURI行／列が隠蔽済みか否か判断する。隠蔽済みの場合、CPU４０１は隠蔽設定をキャンセルする。一方、隠蔽済みでなかった場合、表示制御部４０９は、隠蔽設定を有効とし、図１７に示す処理手順に従って、対象となる行や列を隠蔽する。図１７に示す処理は、プログラムに従い、表示制御部４０９が実行する。
【００５６】
（ステップ１７０１）
ここでは、表示制御部４０９が処理対象であるテンプレート表を入力し、表示エリア１１０４に表示する。
【００５７】
（ステップ１７０２）
表示制御部４０９は、列見出しの行の直下に挿入されたURI行を隠蔽する。これらのURI行は全て偶数行である。従って、表示制御部４０９は、データ部の開始行DRよりも２行小さい範囲までの偶数行を隠蔽対象とする。
【００５８】
（ステップ１７０３）
次に、表示制御部４０９は、行見出しの列の右隣に挿入されたURI列を隠蔽する。これらのURI列は全て偶数列である。従って、表示制御部４０９は、データ部の開始列DCよりも２列小さい範囲までの偶数列を隠蔽対象とする。
【００５９】
（ステップ１７０４−１７０５）
続いて、表示制御部４０９は、テンプレート行とテンプレート列を隠蔽する。具体的には、データ部の開始行DRよりも１行小さい行と、データ部の開始列DCよりも１列小さい列を隠蔽する。
【００６０】
（まとめ）
表示エリア１１０４に表示される表示態様の切り替え機能の搭載により、利用者は、編集作業を効率的に行うことができる。例えばRDF化情報の記入する場合や記入されている情報を確認したい場合には、テンプレート行／列とURI行／列を含むテンプレート表を画面表示する。また、表の記載内容を利用者が確認したい場合には、テンプレート行／列とURI行／列を含まない２次形式の表を画面表示する。
【００６１】
（４−３）行／列の挿入／削除時の処理
利用者は、表示エリア１１０４上で、表示されている表（入力されたオリジナルの表だけでなく、テンプレート表を含む）に対して必要に応じて行や列を挿入又は削除することができる。なお、CPU４０１は、行や列の挿入／削除を実行する前に、現在画面上に表示されているかを判定する。以下では、説明を容易にするため、表示エリア１１０４には、テンプレート表が表示されている場合について説明する。
【００６２】
（行／列の挿入）
まず、図１８を用い、既存のテンプレート表に対し、新たに行を挿入する場合の処理手順を説明する。なお、既存のテンプレート表に対し、新たに列を挿入する場合の処理手順は、図１８と同様であるので説明を省略する。
【００６３】
（ステップ１８０１）
CPU４０１は、編集対象とするテンプレート表、挿入する行番号Ｒ、データ部の開始行DRを読み込む。因みに、開始行DRの値は、オリジナルの表を読み込んでテンプレート表を生成した時点で判明している。
【００６４】
（ステップ１８０２）
次に、CPU４０１は、挿入する行がテンプレート行及びURI行に該当するか否かを判定する。これらの場所には行を挿入できないため、挿入行としてテンプレート行又はURI行が指定された場合にはそのまま処理を終了する。一方、挿入行がテンプレート行でもURI行でない場合、CPU４０１は、ステップ１８０３に進む。
【００６５】
（ステップ１８０３）
CPU４０１は、挿入行の位置（行番号R）がデータの開始行DRより小さい値か否かを判定する。すなわち、挿入行が列見出し部に属するか、データ部に属するかを判定する。列見出し部への行の挿入である場合、CPU４０１はステップ１８０４以下の処理を実行し、データ部への行の挿入である場合、CPU４０１はステップ１８０７以降の処理を実行する。
【００６６】
（ステップ１８０４）
ここで、CPU４０１は、テンプレート表に対し、実際に行を挿入する。この場合、挿入される行は列見出し行であるため、RDF化情報を入力するためのURI行（１行）も同時に挿入する。当該機能により、RDF化情報の入力漏れ等を無くすことができる。
【００６７】
（ステップ１８０５−１８０６）
次に、CPU４０１は、RDF化情報の入力が必要なセルをハイライト表示する。ハイライト表示により、利用者は、入力可能なセルを間違えずに済む。ハイライト表示されたセルに所定の情報が入力された場合には、入力された情報を保持する。次に、CPU４０１は、データ部の開始行DRの値を更新する。前述のステップ１８０４で２行追加されているので、開始行DRの値はDR+2に更新される。
【００６８】
（ステップ１８０７−１８０８）
一方、挿入行がデータ部への行の追加である場合、列見出し部への行の挿入の場合のようにURI行を追加する必要はないので、CPU４０１は、指定された行番号Rに空行を挿入する。次に、CPU４０１は、挿入行のうちデータ部の開始列DCの左側のセルをハイライト表示する。
【００６９】
（行／列の削除）
次に、図１９を用い、既存のテンプレート表から任意の行を削除する場合の処理手順を説明する。なお、既存のテンプレート表から任意の列を削除する場合の処理手順は、図１９と同様であるので説明を省略する。
【００７０】
（ステップ１９０１）
CPU４０１は、編集対象とするテンプレート表、削除する行番号Ｒ、データ部の開始行DRを読み込む。因みに、開始行DRの値は、オリジナルの表を読み込んでテンプレート表を生成した時点で判明している。
【００７１】
（ステップ１９０２）
次に、CPU４０１は、削除する行がテンプレート行及びURI行に該当するか否かを判定する。これらの行は削除できないため、削除行としてテンプレート行又はURI行が指定された場合にはそのまま処理を終了する。一方、削除行がテンプレート行でもURI行でない場合、CPU４０１は、ステップ１９０３に進む。
【００７２】
（ステップ１９０３）
CPU４０１は、削除行の位置（行番号R）はデータ開始行DRより小さい値か否かを判定する。すなわち、削除行が列見出し部に属するか、データ部に属するかを判定する。列見出し部からの行の削除である場合、CPU４０１はステップ１９０４以降の処理を実行する。
【００７３】
（ステップ１９０４−１９０５）
ここで、CPU４０１は、テンプレート表から実際に行を削除する。この場合、削除される行は列見出し行であるため、URI行（１行）も同時に削除する。当該機能により、不必要なデータがテンプレート表内に残る可能性を無くすことができる。次に、CPU４０１は、データ開始行DRの値をDR-2に更新する。
【００７４】
（ステップ１９０６）
一方、削除行がデータ部の行である場合、CPU４０１は、指定された行を削除する。このように、本実施例の場合には、行見出し部の不要な情報も一度に削除することができる。これに対し、RDF化情報をテンプレート表以外の場所で定義して管理するような方式では、不要なRDF化情報を検索して削除する必要がある。すなわち、削除行に対応する各行見出し列の要素について検索処理を実行し、該当した要素のRDF化情報を削除する必要がある。
【００７５】
しかし、本実施例において提案するテンプレート表の場合には、前述の通り、オリジナルの表構造をそのまま保持しているため、データ行を削除するだけで関連する行見出し部の情報も自動的に削除することができる。
【００７６】
（４−４）表形式からRDF形式への変換
続いて、利用者が変換ボタン１１０８をクリック操作した場合に実行される処理内容を説明する。すなわち、表示エリア１１０４に表示される表形式のデータをRDF形式のデータに変換し、表示エリア１１０５に表示する場合の処理動作を説明する。なお、前提として、表示エリア１１０４にオリジナルの表が表示されている場合でも、対応するテンプレート表は既に生成されているものとする。以下では、図２０を用い、表形式のデータからRDF形式のデータに変換する際の処理手順を説明する。
【００７７】
（ステップ２００１）
まず、RDF変換部４０６は、変換対象とするテンプレート表、データ部の開始行DR及び開始列DCを読み出す。
【００７８】
（ステップ２００２）
次に、RDF変換部４０６は、テンプレート行及びテンプレート列の交点に値があるか否かを判定する。具体的には、座標（DR-1,DC-1）のセルが空白（ブランク）か否かを判定する。例えば図８に示すテンプレート表であれば、符号８０１のセルが空白（ブランク）か否かを、図１０に示すテンプレート表であれば、符号１０１１のセルが空白（ブランク）か否かを判定する。
【００７９】
この交点のセルに値を有するテンプレート表は「単一測度の表」である。図８のテンプレート表がこの場合に相当する。「単一測度の表」と判定された場合、RDF変換部４０６はステップ２００３に進む。一方、この交点のセルに値を有しないテンプレート表は「複数測度の表」である。図１０のテンプレート表がこの場合に相当する。「複数測度の表」と判定された場合、RDF変換部４０６はステップ２００８に進む。
【００８０】
（ステップ２００３）
RDF変換部４０６は、テンプレート行とテンプレート列の交点に位置するセルの値を測度URIとする。この測度URIで特定される測度は、表内のデータ部に記載された全てのデータの測度となる。
【００８１】
（ステップ２００４−２００６）
次に、RDF変換部４０６は、列見出し部のURI行（データ部の開始行DRより上に位置する各偶数行）とURI列（データ部の開始列DCより左に位置する各偶数列）から次元のURIと次元の値のURIを抽出する。ただし、単一測度の表の場合、列見出し部と行見出し部におけるURI行とURI列の情報は、必然的にすべて次元に関する情報である。そのため、RDF変換部４０６は、URI行とURI列から次元のURIと次元の値のURIを抽出することができる。
【００８２】
（ステップ２００８−２０１２）
次に、ステップ２００２の判定所で肯定結果が得られた場合について説明する。この場合、検査対象である交点セルは空白であるので、変換対象である表は「複数測度の表」である。例えば図１０のテンプレート表がこの場合に相当する。この場合、複数の測度が、列見出し行又は行見出し列のどこかに埋め込まれている。
【００８３】
そこで、RDF変換部４０６は、まず測度が埋め込まれているURI行又はURI列を探す処理を実行する。この場合、RDF変換部４０６は、列見出し部のURI行（データ部の開始行DRより上に位置する各偶数行）とテンプレート列との交点セルが空白（ブランク）であるか否か、それともURI列（データ部の開始列DCより左に位置する各偶数列）とテンプレート行との交点セルが空白（ブランク）か否かを判定する。
【００８４】
測度が埋め込まれている場合、対応するURI行とテンプレート列との交点セル又はURI列とテンプレート行との交点セルは空白（ブランク）のはずである。ステップ２００９は、この条件判定に対応する。従って、RDF変換部４０６は、交点セルが空白セルであるURI行又はURI列から測度のURIの集合を抽出する。一方、RDF変換部４０６は、交点セルが空白セルでないURI行又はURI列から次元のURIとその値のURIを抽出する。
【００８５】
（ステップ２００７）
以上の処理により、任意のデータセルに対応する「測度」、「次元」、「次元の値」のURIを抽出できるため、RDF変換部４０６は、それらの情報を使用して任意のデータセルのデータをRDF化する。
【００８６】
（４−５）RDF形式から表形式への変換
最後に、利用者が変換ボタン１１０９をクリック操作した場合に実行される処理内容を説明する。すなわち、表示エリア１１０５に表示されるRDF形式のデータを表形式のデータに変換し、表示エリア１１０４に表示する場合の処理動作を説明する。以下では、図２１を用い、RDF形式のデータから表形式のデータに変換する際の処理手順を説明する。
【００８７】
（ステップ２１０１）
まず、表変換部４０７は、表示エリア１１０５に表示されているRDF形式のデータからトリプル（s，p，o）と呼ばれる３つの要素を収集して集合Rを作る。RDF形式は、主語s、述語p、目的語oの三つ組み（トリプル）により、sの性質又は属性がoであることを表現する。図３のネットワーク表現で説明すると、主語はリンク元のノード、述語がリンク、目的語がリンク先のノードになる。図３の例には、３個のトリプルが含まれる。
【００８８】
（ステップ２１０２）
次に、表変換部４０７は、トリプルの集合Rから測度である述語pを抽出した後、任意の順番でソートしてリストPAとする。以下では、図９に示す表形式のデータを変換して作成したRDF形式のデータを入力に用い、それらを表形式に再変換する例について説明する。この場合、測度は「製品出荷額」と「従業者数」である。よって、リストPAは、例えば［製品出荷額，従業者数］となる。実際の測度はURIで表現されているが、説明の便宜上、文字列で表現する。
【００８９】
（ステップ２１０３）
表変換部４０７は、トリプルの集合Rから次元の述語pを抽出した後、任意の順番でソートして次元リストPDとする。例の場合は、例えば［都道府県、市区町村、年］となる。
【００９０】
（ステップ２１０４）
表変換部４０７は、トリプルの集合Rから主語のみを抽出した後、任意の順番でソートしてリストSとする。主語はデータセルの数だけ存在する。例の場合は、対応する図９の表には８個のデータセルがあるので、主語も８個ある。
【００９１】
（ステップ２１０５）
表変換部４０７は、リストSの各要素に対し長さが次元数｜PD｜の次元値リストpvを作る。例の場合は、次元リストPDの要素は３個であるため長さが３の次元値リストpvになる。このリストの要素には対応する次元の値を入れる。例えば図９の３行３列のセルの次元値リストpvは、［北海道、札幌市、２０１０］である。このようにして作成した次元値リストpvは主語sの数だけ存在し、主語と１対１に対応している。
【００９２】
次に、表変換部４０７は、次元値リストpvのＮ番目の要素をキーに、次元値リストpvの集合を多重ソートしてリストPVUとする。前述したように、次元値リストpvは、主語sと１対１対応している。このため、次元値リストpvを多重ソートすると、主語sも連動して並べ変える。更に、表変換部４０７は、ソートした次元値リストpvの要素の重複をつぶしてリストPVUとする。
【００９３】
以上で変換処理のための準備が終わり、データを表形式に配置していく。表変換部４０７は、測度が複数ある場合、列見出し部に測度のみを配置し、次元は全て行見出し部に配置する。なお、表変換部４０７は、単一測度の場合、次元を適当に分割して、一方を列見出し部に配置し、他方を行見出し部に振り分ける。図２１は、複数測度の場合に適用する処理手順の例であるが、単一測度の場合にも容易に対応できる。
【００９４】
（ステップ２１０６−２１０８）
まず、表変換部４０７は、列見出し部を構成し、続くステップ２１０７とステップ２１０８で行見出し部を構成する。具体的には、リストPAの各要素を測度として列見出し部に順番に並べ、リストPDの各要素を次元名として行見出し部に順番に並べる。この際、リストPVUのi番目の要素をi+1行目の行見出し列の要素とする。
【００９５】
図２２に、このようにして構成した表の構造例を示す。ここでは、説明を簡単にするために、テンプレート表ではなく人間用の表について説明するが、実際は、テンプレート表のURI行およびURI列に次元、次元の値、測度のURIを配置していく。なお、作成される表の構造は一例であり、一般には複数の構造を採り得る。
【００９６】
ステップ２１０６で説明したように、列見出し部には、測度として、リストPAの要素をそのまま並べる。行見出し部には、次元として、リストPVUの要素を上から並べる。図２２は、これらの配置関係を示している。
【００９７】
（ステップ２１０９からステップ２１１１）
以上で表の構造が決まる。表変換部４０７は、主語Sの各要素S[i]がどのデータセルに対応するのかを決定して、データセルを埋めていく。図２３に要素S[1]を主語に持つトリプルRの集合を示す。まず、要素S[1]が主語で測度が述語であるトリプルを探す。各セルに対し測度は一つしか存在しないので、このようなトリプルは一意に定まる。ここでは、符号２３０１で示すトリプルが見つかり、要素S[1]の測度が「従業者数」であることが分かる。測度のリストPA内を検索すれば、要素S[1]の列番号が決まる。次に、要素S[1]の次元リスト［北海道，札幌，２０１１］をリストPVU内で探せば、要素S[i]の行番号も決まる。
【００９８】
最後に、表変換部４０７は、要素S[i]が主語で述語が属性であるトリプルの目的語を、前述の処理で同定したデータセルの値に入れる。以上の処理を主語Sの全ての要素に対して繰り返せば、すべてのデータを表内のデータセルに配置できる。ここで説明した手法を用いれば、次元数と測度がいずれも複数の場合も含め、任意のデータ形式の表を作成することができる。
【００９９】
（４−５）まとめ
前述の説明では、RDF読込ボタン１１０３のクリック操作を通じ、RDF形式のデータを二次記憶部４１１又はネットワーク４２０から取得する場合を想定するが、RDF形式のデータを検索により取得する手法を採用してもよい。RDF形式のデータは、SPARQL（SPARQL Protocol and RDF Query Language）と呼ばれるクエリ言語を用いると、柔軟に検索することができる。例えば都道府県における特許出願数の総額と、都道府県における研究投資額の総額を別々のソースから検索し、それらを統合することもできる。
【０１００】
ただし、検索結果はRDF形式であるため、人間にとっては閲覧し難い。そこで、RDF形式の検索結果データを表示エリア１１０５に読み込んで変換ボタン１１０９をクリック操作することで、検索結果のデータを表形式で閲覧することができる。更に必要であれば、表上でデータを修正して、変換ボタン１１０８を押してRDF形式に戻すこともできる。前述したように、RDF形式のままでデータを編集することは面倒であるが、本実施例の場合には変換ボタン１１０８及び１１０９のクリック操作により、RDF形式のデータ内容の確認作業や編集作業を効率的に進めることができる。
【０１０１】
（６）効果
実施例に係る表形式多次元データ変換装置は、入力したオリジナルの表を構成するデータ部には全く変更を加えることなく、RDF形式のデータへの変換に必要な情報をオリジナルの表に埋め込んだテンプレート表（中間表）を作成する。このため、オリジナルの表上でデータの閲覧やデータ編集をいつでも行える状態のまま、オリジナルの表のデータ部を構成する各データをRDF形式のデータに変換することができる。
【０１０２】
また、本実施例の場合には、入力した表自体に必要な情報が全て埋め込めるため、データ管理が容易になる。また、列見出し及び行見出しの要素とそれらに対応付けるURI(ID)が隣り合って表示されるため、URIの入力漏れや入力誤りを防止することができる。また、関連するURIを画面上で一覧できるため、URIの一貫性も保持しやすい。
【０１０３】
（７）他の形態例
本発明は、上述した実施例の構成に限定されるものでなく、様々な変形例を含んでいる。例えば上述した実施例は、本発明を分かりやすく説明するために、一部の実施例について詳細に説明したものであり、必ずしも説明した全ての構成を備える必要は無い。また、ある実施例の一部を他の実施例の構成に置き換えることが可能であり、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成に他の構成を追加し、又は、各実施例の一部構成を他の構成で置換し、又は各実施例の一部構成を削除することも可能である。
【０１０４】
また、上述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路その他のハードウェアとして実現しても良い。また、上記の各構成、機能等は、それぞれの機能を実現するプログラムをプロセッサが解釈して実行することにより実現しても良い。すなわち、各構成等をソフトウェアにより実現しても良い。この場合、各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリやハードディスク、SSD（Solid State Drive）等の記憶装置、ICカード、SDカード、DVD等の記憶媒体に格納することができる。
【０１０５】
また、制御線や情報線は、説明上必要と考えられるものを示すものであり、製品上必要な全ての制御線や情報線を表すものでない。実際にはほとんど全ての構成が相互に接続されていると考えて良い。
【符号の説明】
【０１０６】
４００  表形式多次元データ変換装置
４０１  ＣＰＵ
４０２  メモリ
４０３  キーボード・マウス
４０４  ディスプレイ
４０５  テンプレート生成部
４０６  RDF変換部
４０７  表変換部
４０８  入出力制御部
４０９  表示制御部
４１０  データ通信部
４１１  二次記憶部
４２０  ネットワーク
【図１】
2015028736.tif 000003
【図２】
2015028736.tif 000004
【図３】
2015028736.tif 000005
【図４】
2015028736.tif 000006
【図５】
2015028736.tif 000007
【図６】
2015028736.tif 000008
【図７】
2015028736.tif 000009
【図８】
2015028736.tif 000010
【図９】
2015028736.tif 000011
【図１０】
2015028736.tif 000012
【図１１】
2015028736.tif 000013
【図１２】
2015028736.tif 000014
【図１３】
2015028736.tif 000015
【図１４】
2015028736.tif 000016
【図１５】
2015028736.tif 000017
【図１６】
2015028736.tif 000018
【図１７】
2015028736.tif 000019
【図１８】
2015028736.tif 000020
【図１９】
2015028736.tif 000021
【図２０】
2015028736.tif 000022
【図２１】
2015028736.tif 000023
【図２２】
2015028736.tif 000024
【図２３】
2015028736.tif 000025