(57)【特許請求の範囲】
【請求項１】
文字または文字列が対応付けられた複数のセルをそれぞれが含む複数の行を有する複数のテーブルのテーブル情報を記憶する第１の記憶部を参照して、前記複数の行のうちの各行について、該行に含まれる複数のセルに対応付けられた文字または文字列のデータ種別の組みを特定し、
前記テーブルの開始の行を含む特定の行に含まれる複数のセルに対応付けられたデータ種別の組みの情報をそれぞれ記憶する第２の記憶部を参照して、前記テーブルの開始の行に含まれる複数のセルに対応付けられたデータ種別の組みを取得し、
前記複数の行のうちの各行について、特定した前記データ種別の組みと、取得した前記テーブルの開始の行における前記データ種別の組みと、の比較を行い、
特定した前記データ種別の組みと、取得した前記テーブルの開始の行における前記データ種別の組みとが同じである場合に、比較処理の対象行が前記テーブルの開始の行であるという評価を行う
処理をコンピュータに実行させることを特徴とする評価プログラム。
【請求項２】
前記比較を行う処理は、取得した前記データ種別の組みと、特定した前記データ種別の組みとが同じである場合には、前記テーブル情報を記憶する前記第１の記憶部を参照して、さらに、前記複数の行のうちの各行について、該行に含まれる複数のセルに対応付けられた文字または文字列およびデータ種別の組みを特定し、
前記テーブルの開始の行に含まれる複数のセルに対応付けられた固定の文字または文字列およびデータ種別の組みをさらに記憶する第２の記憶部を参照して、前記テーブルの開始の行に含まれる複数のセルに対応付けられた固定の文字および文字列およびデータ種別の組みを取得し、
前記複数の行のうちの各行について、特定した文字および文字列およびデータ種別の組みと、取得した前記テーブルの開始の行における文字および文字列およびデータ種別の組みとの比較を行い、
前記評価を行う処理は、特定した文字および文字列およびデータ種別の組みと、取得した前記テーブルの開始の行における文字および文字列および前記データ種別の組みとが同じである場合に、比較処理の対象行が前記テーブルの開始の行であるという評価を行う
ことを特徴とする請求項１に記載の評価プログラム。
【請求項３】
テーブルのレイアウトを定義する定義情報を参照し、前記テーブルの開始の行に含まれる複数のセルに対応付けられたデータ種別の組みの情報を生成し、
該生成した前記データ種別の組みの情報を前記第２の記憶部に記憶する
ことを特徴とする請求項１に記載の評価プログラム。
【請求項４】
テーブルのレイアウトを定義する定義情報を参照し、前記テーブルの開始の行に含まれる複数のセルに対応付けられた文字または文字列、およびデータ種別の組みの情報を生成し、
該生成した前記文字または文字列、およびデータ種別の組みの情報を前記第２の記憶部に記憶する
ことを特徴とする請求項２に記載の評価プログラム。
【請求項５】
文字または文字列が対応付けられた複数のセルをそれぞれが含む複数の行を有する複数のテーブルのテーブル情報を記憶する第１の記憶部を参照して、前記複数の行のうちの各行について、該行に含まれる複数のセルに対応付けられた文字または文字列のデータ種別の組みを特定する特定部と、
前記テーブルの開始の行を含む特定の行に含まれる複数のセルに対応付けられたデータ種別の組みの情報をそれぞれ記憶する第２の記憶部を参照して、前記テーブルの開始の行に含まれる複数のセルに対応付けられたデータ種別の組みを取得する取得部と、
前記複数の行のうちの各行について、特定した前記データ種別の組みと、取得した前記テーブルの開始の行における前記データ種別の組みと、の比較を行う比較部と、
特定した前記データ種別の組みと、取得した前記テーブルの開始の行における前記データ種別の組みとが同じである場合に、比較処理の対象行が前記テーブルの開始の行であるという評価を行う評価部と、
を有することを特徴とする評価装置。
【請求項６】
文字または文字列が対応付けられた複数のセルをそれぞれが含む複数の行を有する複数のテーブルのテーブル情報を記憶する第１の記憶部を参照して、前記複数の行のうちの各行について、該行に含まれる複数のセルに対応付けられた文字または文字列のデータ種別の組みを特定し、
前記テーブルの開始の行を含む特定の行に含まれる複数のセルに対応付けられたデータ種別の組みの情報をそれぞれ記憶する第２の記憶部を参照して、前記テーブルの開始の行に含まれる複数のセルに対応付けられたデータ種別の組みを取得し、
前記複数の行のうちの各行について、特定した前記データ種別の組みと、取得した前記テーブルの開始の行における前記データ種別の組みと、の比較を行い、
特定した前記データ種別の組みと、取得した前記テーブルの開始の行における前記データ種別の組みとが同じである場合に、比較処理の対象行が前記テーブルの開始の行であるという評価を行う
処理をコンピュータが実行することを特徴とする評価方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、評価方法等に関する。
【背景技術】
【０００２】
ＸＢＲＬ（eXtensible  Business  Reporting  Language）による財務諸表を金融庁へ提出することが義務付けられている。ＸＢＲＬとは、ビジネス報告の作成、流通および利用を容易にするためのデータ記述言語として、ＸＭＬ（eXtensible  Markup  Language）をベースに開発された言語である。【０００３】
金融庁や東証等の監督機関に提出される財務諸表のデータは、インスタンスと呼ばれる。インスタンスは、監督機関から公開されている定義体（「タクソノミ」という）に基づいて作成される。タクソノミは、項目に相当するＸＢＲＬ要素の名前や型情報を定義したスキーマと、ＸＢＲＬ同士の関係性を定義したリンクベースから構成される。ＸＢＲＬ要素同士の関係性は、例えば、財務諸表上での項目の表示順序や集計方法等に相当する。【０００４】
ここで、財務諸表としてのインスタンスを作成する流れの参考例を、図１５を参照して説明する。図１５は、インスタンスを作成する流れの参考例を示す図である。監督機関では、ＸＢＲＬで記述されたタクソノミが記憶され、公開されている。提出企業では、マッピングエンジンが、公開されているタクソノミをダウンロードして（Ｓ１１０）、タクソノミに基づいてマッピング定義およびテンプレートシートを生成する（Ｓ１２０）。テンプレートシートとは、Ｅｘｃｅｌ等の表計算ソフトで作成されたテーブルのことをいう。マッピング定義とは、テーブル内のヘッダー部分や入力部分のセルの位置およびサイズ情報、並びにセルに対応するＸＢＲＬ要素のプロパティ情報の紐付けを定義したものである。【０００５】
そして、担当者がテンプレートシートに財務データを入力し、入力済みシートを作成する（Ｓ１３０）。この入力済みシートをマッピングエンジンに入力し、マッピングエンジンは、入力された入力済みシートをインスタンスに変換し（Ｓ１４０）、インスタンスを監督機関へアップロードする（Ｓ１５０）。監督機関では、インスタンスを蓄積し、検証する。【０００６】
図１６は、テンプレートシートを示すテーブルの参考例を示す図である。図１６に示すように、テンプレートシートは、２次元のテーブルであり、テンプレートシートのフォーマットは、統一される。【０００７】
このように、マッピングエンジンは、公開されたタクソノミを利用して、統一したテンプレートシートとマッピング定義を用意することで、テンプレートシートに入力された入力済みシートをインスタンスに変換する。【０００８】
ここで、入力済みシートをインスタンスに変換するマッピング処理の参考例を、図１７を参照して説明する。図１７は、マッピング処理の参考例を示す図である。図１７に示すように、マッピングエンジンは、入力済みシートの各行を上から順番に読み出し、読み出した行について、マッピング定義を参照して、インスタンスに変換する。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１０−１２３１４９号公報
【特許文献２】特開２０１０−１４６１０９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
ところで、近年、財務報告の詳細化が、監督機関および利用者から求められたことに応じて、ＸＢＲＬデータのテーブルレイアウトを記述するための国際標準仕様（テーブルリンクベース）が勧告化された。これにより、財務報告で利用されるテーブルが２次元のテーブルから、提出企業ごとに大きさの異なるテーブルや個数の異なるテーブルに変化することが予想される。例えば、全社単位の１個のテーブルから事業所単位の複数個のテーブルに変化したり、年次単位の１個のテーブルから月次単位の複数個のテーブルに変化したりすることが予想される。【００１１】
そうすると、マッピングエンジンは、テーブルをインスタンスに変換する際、テーブルが複数存在すると、各テーブルの開始位置を判別できないという問題がある。すなわち、マッピングエンジンは、テーブルの各行を上から順番に読み出し、読み出した行について、マッピング定義を参照して、インスタンスに変換する。しかしながら、マッピングエンジンは、テーブル内で使用されるセルが可変であるため、マッピング定義を参照して、テーブルの終了位置を判別できない。この結果、マッピングエンジンは、次のテーブルの開始位置を判別できない。【００１２】
１つの側面では、本発明は、複数のテーブルをインスタンスに変換する際、各テーブルの開始位置を判別することを目的とする。
【課題を解決するための手段】
【００１３】
一態様の評価プログラムは、文字または文字列が対応付けられた複数のセルをそれぞれが含む複数の行を有するテーブル情報を記憶する記憶部を参照して、前記複数の行のうちの各行について、該行に含まれる複数のセルに対応付けられた文字または文字列のデータ種別の組みを特定し、前記複数の行のうちの特定の行に含まれる複数のセルに対応付けられたデータ種別の組みの情報を記憶する記憶部を参照して、該記憶部に記憶されたデータ種別の組みを取得し、前記複数の行のうちの各行について、取得した前記データ種別の組みと、特定した前記データ種別の組みとの比較を行い、比較結果に応じて、比較処理の対象行の評価を行う処理をコンピュータに実行させる。
【発明の効果】
【００１４】
一つの態様によれば、複数のテーブルをインスタンスに変換する際、各テーブルの開始位置を判別することができる。
【図面の簡単な説明】
【００１５】
【図１】図１は、実施例に係る評価装置の構成を示す機能ブロック図である。
【図２】図２は、実施例に係るテンプレートシートの一例を示す図である。
【図３】図３は、実施例に係る入力済みシートの一例を示す図である。
【図４】図４は、実施例に係るマッピング定義の第１の例を示す図である。
【図５】図５は、実施例に係るデータ変換処理の第１の具体例を示す図である。
【図６】図６は、実施例に係るマッピング定義の第２の例を示す図である。
【図７】図７は、実施例に係るデータ変換処理の第２の具体例を示す図である。
【図８】図８は、実施例に係るマッピング定義の第３の例を示す図である。
【図９】図９は、実施例に係る構造解析処理のイメージを示す図である。
【図１０】図１０は、実施例に係るデータ変換処理のイメージを示す図である。
【図１１】図１１は、実施例に係る構造解析処理のフローチャートの一例を示す図である。
【図１２】図１２は、実施例に係るデータ変換処理のフローチャートの一例を示す図である。
【図１３】図１３は、実施例に係る評価装置の用途の一例を示す図である。
【図１４】図１４は、評価プログラムを実行するコンピュータの一例を示す図である。
【図１５】図１５は、インスタンスを作成する流れの参考例を示す図である。
【図１６】図１６は、テンプレートシートを示すテーブルの参考例を示す図である。
【図１７】図１７は、マッピング処理の参考例を示す図である。
【発明を実施するための形態】
【００１６】
以下に、本願の開示する評価プログラム、評価装置および評価方法の実施例を図面に基づいて詳細に説明する。なお、実施例によりこの発明が限定されるものではない。
【実施例】
【００１７】
［実施例に係る評価装置の構成］
図１は、実施例に係る評価装置の構成を示す機能ブロック図である。図１に示すように、評価装置１は、テーブル形式のデータをＸＢＲＬで記述されたインスタンスに変換する際に、テーブルが複数存在する場合、各テーブルの各行におけるデータ種別の組みを用いて、各行の評価を行い、各テーブルの開始位置を判別する。ここでいうインスタンスは、「ＸＢＲＬインスタンス」という。ここでいうテーブル形式のデータをＸＢＲＬインスタンスに変換することは、テーブル形式のデータをＸＢＲＬインスタンスにマッピングすることと同義である。【００１８】
評価装置１は、記憶部２と、制御部３とを有する。【００１９】
記憶部２は、例えばフラッシュメモリ（Flash  Memory）やＦＲＡＭ（登録商標）（Ferroelectric  Random  Access  Memory）等の不揮発性の半導体メモリ素子等の記憶装置に対応する。そして、記憶部２は、ＸＢＲＬタクソノミ２１、マッピング定義２２、テンプレートシート２３および入力済みシート２４を有する。【００２０】
ＸＢＲＬタクソノミ２１は、ＸＢＲＬ要素の体系を定義したものであり、スキーマ、リンクベースおよびテーブルリンクベースからなる。スキーマとは、ＸＢＲＬ要素の名前やデータ型等の属性情報を記憶する辞書であり、実施例では「項目定義」に対応する。リンクベースとは、例えばＸＢＲＬ要素間の親子関係や表示順や表示名等を記述する文書である。テーブルリンクベースとは、ＸＢＲＬ要素のテーブルレイアウトを記述する文書であり、実施例では、「テーブルレイアウト」に対応する。【００２１】
マッピング定義２２は、テーブル内のヘッダー（タイトル）部分のデータ型の組み合わせ情報を定義する。マッピング定義２２には、例えば、Ｘ軸のヘッダー部、Ｙ軸のヘッダー部およびＺ軸のヘッダー部のデータ型の組み合わせが定義される。データ型には、一例として、文字列型、日付型や数値型が挙げられるが、これに限定されない。また、マッピング定義２２は、テーブル内のセルとＸＢＲＬ要素との紐付けを定義する。例えば、マッピング定義２２には、テーブル内のヘッダー部分や入力部分のセルの列の位置やセルに対応するＸＢＲＬ要素のプロパティ情報が定義される。なお、マッピング定義２２は、後述する構造解析部３２によって生成される。また、マッピング定義２２の内容の一例については、後述する。【００２２】
テンプレートシート２３は、財務諸表を再現した入力フォームを示す汎用的なテンプレートシートである。テンプレートシート２３は、Ｅｘｃｅｌ等の表計算ソフトで作成されるテーブルのことをいう。なお、テンプレートシート２３は、テーブルリンクベースを用いて定義され、後述する構造解析部３２によって生成される。また、テンプレートシート２３の内容の一例については、後述する。【００２３】
入力済みシート２４は、テンプレートシート２３に財務データを入力済みのシートである。入力済みシート２４は、ユーザによって入力される。【００２４】
制御部３は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。そして、制御部３は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路またはＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等の電子回路に対応する。さらに、制御部３は、入力部３１と、構造解析部３２と、データ変換部３３と、出力部３４とを有する。【００２５】
入力部３１は、ＸＢＲＬタクソノミ２１を入力し、入力したＸＢＲＬタクソノミ２１を記憶部２に格納する。【００２６】
構造解析部３２は、ＸＢＲＬタクソノミ２１の解析を行い、テーブルリンクベース（テーブルレイアウト）の定義に従ったマッピング定義２２およびテンプレートシート２３を生成する。構造解析部３２は、生成したマッピング定義２２およびテンプレートシート２３を記憶部２に格納する。【００２７】
［テンプレートシートの一例］
ここで、テンプレートシート２３の一例を、図２を参照して説明する。図２は、実施例に係るテンプレートシートの一例を示す図である。図２に示すように、テンプレートシート２３は、Ｘ軸のヘッダー部、Ｙ軸のヘッダー部、Ｚ軸のヘッダー部および値セル部を有する。各軸のヘッダー部は、それぞれ階層的に定義されている。【００２８】
Ｚ軸のヘッダー部は、１個のテーブルのタイトルの代わりとして、最上部に設定される。Ｚ軸のヘッダー部は、親のヘッダーｚ−１，ｚ−３と、子のヘッダーｚ−２，ｚ−４とを有する。ここでは、親のヘッダーｚ−１には、「ＳＥＧＭＥＮＴ」（部門名）が設定されている。子のヘッダーｚ−２には、「ＳＥＧＭＥＮＴ」に対する子のヘッダーとしてユーザによって値が入力される。同様に、親のヘッダーｚ−３には、「ＡＲＥＡ」（地区名）が設定されている。子のヘッダーｚ−４には、「ＡＲＥＡ」に対する子のヘッダーとしてユーザによって値が入力される。なお、Ｚ軸ヘッダー部は、テーブルのタイトルを示す行を意味するので、「テーブルのタイトル行」という。言い換えれば、「テーブルのタイトル行」は、新しく別のテーブルへの値入力のために追加された行のことをいう。【００２９】
Ｙ軸のヘッダー部は、親のヘッダーｙ−１と子のヘッダーｙ−２とを有する。ここでは、親のヘッダーｙ−１には、「ＰＥＲＩＯＤ」が設定されている。子のヘッダーｙ−２には、「ＰＥＲＩＯＤ」に対する子のヘッダーとしてユーザによって値が入力される。子のヘッダーｙ−２には、例えば、年度および期間が追加可能である。なお、Ｙ軸ヘッダー部は、データを入力する行を意味するので、「データ入力行」という場合がある。言い換えれば、「データ入力行」は、継続して同一のテーブルへの値入力のために追加された行のことをいう。【００３０】
Ｘ軸のヘッダー部は、親のヘッダーｘ−１，ｘ−２と、各親のヘッダーに対する値セル部ｘ−３，ｘ−４とを有する。ここでは、親のヘッダーｘ−１には、ＸＢＲＬ要素としての「Ａｓｓｅｔｓ」（資産）が設定されている。値セル部ｘ−３には、「Ａｓｓｅｔｓ」に対する値がユーザによって入力される。親のヘッダーｘ−２には、ＸＢＲＬ要素としての「Ｌｉａｂｉｌｉｔｉｅｓ」（負債）が設定されている。値セル部ｘ−４には、「Ｌｉａｂｉｌｉｔｉｅｓ」に対する値がユーザによって入力される。なお、値セル部は、データを入力する行を意味するので、「データ入力行」という場合がある。【００３１】
また、テンプレートシート２３の各セルには、各データ型が設定される。【００３２】
［入力済みシートの一例］
図３は、実施例に係る入力済みシートの一例を示す図である。図３に示す入力済みシート２４は、図２で示したテンプレートシート２３にユーザが財務データを入力した結果である。入力済みシート２４は、複数のテーブルからなり、各テーブルは、Ｚ軸ヘッダー部を開始行とする。ここでは、２個のテーブルが表わされている。一方のテーブルには、アジア地区の財務データが表わされ、他方のテーブルには、ヨーロッパ地区の財務データが表わされている。なお、図３では、テーブルの数を２個としたが、３個としても良いし、４個としても良いし、数に制限はない。また、テーブルの数を１個としても良い。【００３３】
［マッピング定義の第１の例］
図４は、実施例に係るマッピング定義の第１の例を示す図である。図４に示すように、マッピング定義２２は、データ型の組み合わせ情報を含む。データ型の組み合わせ情報には、Ｘ軸のヘッダー部のデータ型の組み合わせが設定される。データ型の組み合わせ情報には、Ｙ軸のヘッダー部のデータ型の組み合わせが設定される。データ型の組み合わせ情報には、Ｚ軸のヘッダー部のデータ型の組み合わせが設定される。データ型の組み合わせ情報には、値セル部の組み合わせ情報が設定される。ここでは、Ｘ軸のヘッダー部のデータ型の組み合わせとして、「文字列型，文字列型」が設定される。Ｙ軸のヘッダー部のデータ型の組み合わせとして、「文字列型，日付型」が設定される。Ｚ軸のヘッダー部のデータ型の組み合わせとして、「文字列型，文字列型，文字列型，文字列型」が設定される。値セル部のデータ型の組み合わせとして、「数値型，数値型」が設定される。【００３４】
なお、マッピング定義２２は、さらに、セルとＸＢＲＬ要素との紐付け情報を含む。セルとＸＢＲＬ要素との紐付け情報には、値を入力するセルについて、位置とＸＢＲＬ要素との紐付けが設定される。ここでは、Ｂ列に値を入力するセルについて、タイトル行の場合には、ＸＢＲＬ要素としてのＳＥＧＭＥＮＴの値と紐付けられる。データ入力行の場合には、ＸＢＲＬ要素としてのＰＥＲＩＯＤの値と紐付けられる。Ｃ列に値を入力するセルについて、データ入力行の場合には、ＸＢＲＬ要素としての＜Ａｓｓｅｔｓ＞の値と紐付けられる。Ｄ列に値を入力するセルについて、データ入力行の場合には、ＸＢＲＬ要素としての＜Ｌｉａｂｉｌｉｔｉｅｓ＞の値と紐付けられる。タイトル行の場合には、ＸＢＲＬ要素としてのＡＲＥＡの値と紐付けられる。【００３５】
図１に戻って、データ変換部３３は、入力済みシート２４を参照して、複数の行のうちの各行について、行に含まれる複数のセルに対応付けられたデータのデータ型の組み合わせを特定する。データ型は、データ種別の一例である。例えば、データ変換部３３は、データ変換の開始時に、入力済みシート２４から、Ｚ軸のヘッダー部、Ｘ軸ヘッダー部を読み込む。データ変換部３３は、後続の行を順番に読み込む。データ変換部３３は、行を読み込むと、読み込んだ行のデータ型の組み合わせを特定する。なお、読み込んだ行のデータ型の組み合わせは、入力済みシート２４に設定されたデータ型から特定される。【００３６】
データ変換部３３は、マッピング定義２２を参照して、データ入力行およびテーブルのタイトル行に含まれる複数のセルに対応付けられたデータ種別の組み合わせをそれぞれ取得する。なお、データ入力行のデータ型の組み合わせは、マッピング定義２２に含まれるＹ軸のヘッダー部のデータ型の組み合わせと値セル部のデータ型の組み合わせとを加えたものである。テーブルのタイトル行のデータ型の組み合わせは、マッピング定義２２に含まれるＺ軸のヘッダー部のデータ型の組み合わせである。【００３７】
データ変換部３３は、複数の行のうちの各行について、取得したデータ型の組み合わせと、特定したデータ型の組み合わせとの比較を行い、比較結果に応じて、比較処理の対象行の評価を行う。例えば、データ変換部３３は、読み込んだ行のデータ型の組み合わせがデータ入力行と同じであるか否かを判定する。データ変換部３３は、読み込んだ行のデータ型の組み合わせがデータ入力行と同じでない場合には、読み込んだ行のデータ型の組み合わせがテーブルのタイトル行と同じであるか否かを判定する。データ変換部３３は、読み込んだ行のデータ型の組み合わせがテーブルのタイトル行と同じである場合には、読み込んだ行が次のテーブルの開始位置であることを検出する。すなわち、データ変換部３３は、上部から下部へ１行ずつ、左端から右端へセルを解析していく際に、マッピング定義２２と照らし合わせることにより、次のテーブルの開始位置を検出する。そして、データ変換部３３は、次のテーブルの開始位置を検出すると、次のテーブルについて、データ変換処理を行う。なお、データ変換部３３は、読み込んだ行のデータ型の組み合わせがデータ入力行と同じである場合には、データ入力行をマッピングし、ＸＢＲＬインスタンス４１に追加する。そして、データ変換部３３は、次の行について、データ変換処理を行う。【００３８】
出力部３４は、データ変換部３３によって変換された結果を示すＸＢＲＬインスタンス４１を出力する。例えば、出力部３４は、変換結果であるＸＢＲＬインタンス４１をモニタに出力しても良いし、記憶部２に記憶するようにしても良い。【００３９】
［データ変換処理の第１の具体例］
ここで、図４で示すマッピング定義２２を用いたデータ変換処理の具体例を、図５を参照して説明する。図５は、実施例に係るデータ変換処理の第１の具体例を示す図である。図５には、入力済みシート２４が表わされている。【００４０】
図５に示すように、データ変換部３３は、入力済みシート２４の上部から下部へ１行ずつ、マッピング定義２２と照らし合わせることにより、入力済みシート２４の次のテーブルの開始位置を検出する。【００４１】
例えば、データ変換部３３は、入力済みシート２４を参照して、符号ａ１の行を読み込むとする。データ変換部３３は、読み込んだ行のデータ型の組み合わせを特定する。ここでは、符号ａ１の行のデータ型の組み合わせは、「文字列型，日付型，数値型，数値型」である。【００４２】
データ変換部３３は、マッピング定義２２を参照して、データ入力行およびテーブルのタイトル行に含まれるデータ型の組み合わせをそれぞれ取得する。ここでは、データ入力行のデータ型の組み合わせは、マッピング定義２２のデータ型の組み合わせ情報に含まれるＹ軸のヘッダー部のデータ型の組み合わせと値セル部のデータ型の組み合わせとを組み合わせたものである。この結果、データ入力行のデータ型の組み合わせは、「文字列型，日付型，数値型，数値型」である。テーブルのタイトル行に含まれるデータ型の組み合わせは、マッピング定義２２のデータ型の組み合わせ情報に含まれるＺ軸のヘッダー部のデータ型の組み合わせであり、「文字列型，文字列型，文字列型，文字列型」である。【００４３】
データ変換部３３は、符号ａ１の行のデータ型の組み合わせがデータ入力行と同じであるか否かを判定する。ここでは、いずれの行のデータ型の組み合わせも「文字列型，日付型，数値型，数値型」である。そこで、データ変換部３３は、符号ａ１の行をマッピングし、ＸＢＲＬインスタンス４１に追加し、次の下部の行について、データ変換処理を行う。【００４４】
次に、データ変換部３３は、入力済みシート２４を参照して、符号ａ２の行を読み込むとする。データ変換部３３は、読み込んだ行のデータ型の組み合わせを特定する。ここでは、符号ａ２の行のデータ型の組み合わせは、「文字列型，文字列型，文字列型，文字列型」である。【００４５】
データ変換部３３は、符号ａ２の行のデータ型の組み合わせがデータ入力行と同じであるか否かを判定する。ここでは、符号ａ２の行のデータ型の組み合わせは、「文字列型，文字列型，文字列型，文字列型」であり、データ入力行のデータ型の組み合わせは、「文字列型，日付型，数値型，数値型」であるため、データ型の組み合わせは、同じでない。そこで、データ変換部３３は、符号ａ２の行のデータ型の組み合わせがテーブルのタイトル行と同じであるか否かを判定する。ここでは、いずれの行のデータ型の組み合わせも「文字列型，文字列型，文字列型，文字列型」である。【００４６】
そこで、データ変換部３３は、符号ａ２の行が次のテーブルの開始位置であることを検出する。そして、データ変換部３３は、入力済みシート２４の次のテーブルについて、データ変換処理を行うことになる。【００４７】
ところで、入力済みシート２４の全ての行のデータ型の組み合わせが同じである場合がある。例えば、全ての行のデータ型の組み合わせが、「文字列型，文字列型，文字列型，文字列型」である場合である。かかる場合には、データ変換部３３は、入力済みシート２４から読み込んだ行がデータ入力行であるのかテーブルのタイトル行であるのかを判別できないので、次のテーブルの開始位置であることを検出できない。そこで、データ変換部３３は、入力済みシート２４から読み込んだ行のデータ型の組み合わせがデータ入力行と同じである場合には、さらに、読み込んだ行がテーブルのタイトル行の固定の文字列とデータ型との組み合わせと同じであるか否かを判定すれば良い。以下に、この判定に用いられるマッピング定義２２の第２の例について説明する。【００４８】
［マッピング定義の第２の例］
図６は、実施例に係るマッピング定義の第２の例を示す図である。図６に示すように、マッピング定義２２は、データ型の組み合わせ情報を含む。データ型の組み合わせ情報には、Ｘ軸のヘッダー部の固定の文字列の組み合わせが設定される。データ型の組み合わせ情報には、Ｙ軸のヘッダー部の固定の文字列とデータ型との組み合わせが設定される。データ型の組み合わせ情報には、Ｚ軸のヘッダー部の固定の文字列とデータ型との組み合わせが設定される。データ型の組み合わせ情報には、値セル部のデータ型の組み合わせが設定される。ここでは、Ｘ軸のヘッダー部のデータ型の組み合わせとして、「“Ａｓｓｅｔｓ  Ｅｖａｌｕａｔｉｏｎ”，“Ｌｉａｂｉｌｉｔｉｅｓ  Ｒａｎｋ”」が設定される。Ｙ軸のヘッダー部のデータ型の組み合わせとして、「“ＰＥＲＩＯＤ”，文字列型」が設定される。Ｚ軸のヘッダー部のデータ型の組み合わせとして、「“ＳＥＧＭＥＮＴ”，文字列型，“ＡＲＥＡ”，文字列型」が設定される。値セル部のデータ型の組み合わせとして、「文字列型，文字列型」が設定される。“Ａｓｓｅｔｓ  Ｅｖａｌｕａｔｉｏｎ”，“Ｌｉａｂｉｌｉｔｉｅｓ  Ｒａｎｋ”，“ＰＥＲＩＯＤ”，“ＳＥＧＭＥＮＴ”および“ＡＲＥＡ”は、それぞれＸＢＲＬ要素である。これらの固定の文字列は、構造解析部３２によってＸＢＲＬタクソノミ２１のテーブルレイアウトの定義に従いマッピング定義２２に設定される。【００４９】
なお、マッピング定義２２は、さらに、セルとＸＢＲＬ要素との紐付け情報を含むが、図４の説明と同様であるので、その説明を省略する。【００５０】
［データ変換処理の第２の具体例］
ここで、図６で示すマッピング定義２２を用いたデータ変換処理の具体例を、図７を参照して説明する。図７は、実施例に係るデータ変換処理の第２の具体例を示す図である。図７には、入力済みシート２４が表わされている。【００５１】
図７に示すように、データ変換部３３は、入力済みシート２４の上部から下部へ１行ずつ、マッピング定義２２と照らし合わせることにより、入力済みシート２４の次のテーブルの開始位置を検出する。【００５２】
例えば、データ変換部３３は、入力済みシート２４を参照して、符号ｂ１の行を読み込むとする。データ変換部３３は、読み込んだ行について、文字または文字列の組み合わせおよびデータ型の組み合わせを特定する。ここでは、符号ｂ１の行の文字または文字列の組み合わせは、「”ＰＥＲＩＯＤ”，”２０１４．２Ｑ”，”Ｇｏｏｄ”，”Ｃ”」が特定される。符号ｂ１の行のデータ型の組み合わせは、「文字列型，文字列型，文字列型，文字列型」が特定される。【００５３】
データ変換部３３は、マッピング定義２２を参照して、データ入力行およびテーブルのタイトル行に含まれる文字列およびデータ型の組み合わせをそれぞれ取得する。ここでは、データ入力行の文字列およびデータ型の組み合わせは、マッピング定義２２のデータ型の組み合わせ情報に含まれるＹ軸のヘッダー部と値セル部との文字列およびデータ型の組み合わせである。この結果、データ入力行の文字列およびデータ型の組み合わせは、「“ＰＥＲＩＯＤ”（文字列型），文字列型，文字列型，文字列型」である。テーブルのタイトル行に含まれる文字列およびデータ型の組み合わせは、マッピング定義２２のデータ型の組み合わせ情報に含まれるＺ軸のヘッダー部のデータ型の組み合わせである。この結果、テーブルのタイトル行に含まれる文字列およびデータ型の組み合わせは、「“ＳＥＧＭＥＮＴ”（文字列型），文字列型，“ＡＲＥＡ”（文字列型），文字列型」である。【００５４】
データ変換部３３は、符号ｂ１の行のデータ型の組み合わせがデータ入力行と同じであるか否かを判定する。ここでは、いずれの行のデータ型の組み合わせも「文字列型，文字列型，文字列型，文字列型」である。そこで、データ変換部３３は、符号ｂ１の行がテーブルのタイトル行の文字列およびデータ型の組み合わせと同じであるか否かを判定する。ここでは、符号ｂ１の行の文字列およびデータ型の組み合わせは、「”ＰＥＲＩＯＤ”，文字列型，”Ｇｏｏｄ”，文字列型」である。テーブルのタイトル行の文字列およびデータ型の組み合わせは、「“ＳＥＧＭＥＮＴ”，文字列型，“ＡＲＥＡ”，文字列型」である（図６参照）。符号ｂ１の行は、テーブルのタイトル行の文字列およびデータ型の組み合わせと同じでない。すなわち、符号ｂ１の行は、テーブルのタイトル行でなく、データ入力行である。そこで、データ変換部３３は、符号ｂ１の行をマッピングし、ＸＢＲＬインスタンス４１に追加し、次の下部の行について、データ変換処理を行う。【００５５】
次に、データ変換部３３は、入力済みシート２４を参照して、符号ｂ２の行を読み込むとする。データ変換部３３は、読み込んだ行について、文字または文字列の組み合わせおよびデータ型の組み合わせを特定する。ここでは、符号ｂ２の行の文字または文字列の組み合わせは、「”ＳＥＧＭＥＮＴ”，”Ｄｅｖｉｃｅ”，”ＡＲＥＡ”，”Ｅｕｒｏｐｅ”」が特定される。符号ｂ２の行のデータ型の組み合わせは、「文字列型，文字列型，文字列型，文字列型」が特定される。【００５６】
データ変換部３３は、符号ｂ２の行のデータ型の組み合わせがデータ入力行と同じであるか否かを判定する。ここでは、いずれの行のデータ型の組み合わせも「文字列型，文字列型，文字列型，文字列型」である。そこで、データ変換部３３は、符号ｂ２の行がテーブルのタイトル行の文字列およびデータ型の組み合わせと同じであるか否かを判定する。ここでは、符号ｂ２の行の文字列およびデータ型の組み合わせは、「”ＳＥＧＭＥＮＴ”，文字列型，”ＡＲＥＡ”，文字列型」である。テーブルのタイトル行の文字列およびデータ型の組み合わせは、「“ＳＥＧＭＥＮＴ”，文字列型，“ＡＲＥＡ”，文字列型」である。符号ｂ２の行は、テーブルのタイトル行の文字列およびデータ型の組み合わせと同じである。すなわち、符号ｂ２の行は、テーブルのタイトル行である。【００５７】
そこで、データ変換部３３は、符号ｂ２の行が次のテーブルの開始位置であることを検出する。そして、データ変換部３３は、入力済みシート２４の次のテーブルについて、データ変換処理を行う。【００５８】
なお、マッピング定義２２のデータ型の組み合わせ情報には、各軸のヘッダー部の固定の文字列とデータ型との組み合わせが設定されると説明した。しかしながら、マッピング定義２２のデータ型の組み合わせ情報は、これに限定されない。データ型で表わされるデータが予め定められ、列挙されている場合がある。かかる場合には、データ型の組み合わせ情報のデータ型として列挙型の識別子が設定されれば良い。列挙型の識別子は、ＸＢＲＬタクソノミ２１と対応付けられる。列挙型の識別子には、例えば、列挙型ｘ、列挙型ｙが挙げられる。このようなマッピング定義２２を用いて、データ変換部３３は、入力済みシート２４から読み込んだ行のデータ型の組み合わせがデータ入力行と同じである場合には、さらに、以下を判定すれば良い。すなわち、データ変換部３３は、読み込んだ行がテーブルのタイトル行の列挙型の文字列を含む文字列の組み合わせと同じであるか否かを判定する。以下に、この判定に用いられるマッピング定義２２の第３の例について説明する。【００５９】
［マッピング定義の第３の例］
図８は、実施例に係るマッピング定義の第３の例を示す図である。図８に示すように、マッピング定義２２は、データ型の組み合わせ情報を含む。データ型の組み合わせ情報には、Ｘ軸のヘッダー部の固定の文字列の組み合わせが設定される。データ型の組み合わせ情報には、Ｙ軸のヘッダー部の固定の文字列とデータ型との組み合わせが設定される。データ型の組み合わせ情報には、Ｚ軸のヘッダー部の固定の文字列と、文字列型として列挙型の識別子との組み合わせが設定される。ここでは、Ｘ軸のヘッダー部のデータ型の組み合わせとして、「“Ａｓｓｅｔｓ  Ｅｖａｌｕａｔｉｏｎ”，“Ｌｉａｂｉｌｉｔｉｅｓ  Ｒａｎｋ”」が設定される。Ｙ軸のヘッダー部のデータ型の組み合わせとして、「“ＰＥＲＩＯＤ”，文字列型」が設定される。Ｚ軸のヘッダー部のデータ型の組み合わせとして、「“ＳＥＧＭＥＮＴ”，列挙型ｘ，“ＡＲＥＡ”，列挙型ｙ」が設定される。データ変換部３３は、読み込んだ行のデータ変換処理を行う際に、列挙型の識別子に対応付けられた列挙値をＸＢＲＬタクソノミ２１から取得し、読み込んだ行がテーブルのタイトル行の列挙値の中のいずれかの文字列を含む文字列の組み合わせと同じであるか否かを判定すれば良い。【００６０】
［データ変換処理の第３の具体例］
ここで、図７を参照して、図８で示すマッピング定義２２を用いたデータ変換処理の第３の具体例を説明する。【００６１】
例えば、データ変換部３３は、入力済みシート２４を参照して、符号ｂ１の行を読み込んだ場合は、第２の具体例と同様であるので、その説明を省略する。【００６２】
次に、データ変換部３３は、入力済みシート２４を参照して、符号ｂ２の行を読み込むとする。データ変換部３３は、読み込んだ行について、文字または文字列の組み合わせおよびデータ型の組み合わせを特定する。ここでは、符号ｂ２の行の文字または文字列の組み合わせは、「”ＳＥＧＭＥＮＴ”，”Ｄｅｖｉｃｅ”，”ＡＲＥＡ”，”Ｅｕｒｏｐｅ”」が特定される。符号ｂ２の行のデータ型の組み合わせは、「文字列型，文字列型，文字列型，文字列型」が特定される。【００６３】
データ変換部３３は、符号ｂ２の行のデータ型の組み合わせがデータ入力行と同じであるか否かを判定する。ここでは、いずれの行のデータ型の組み合わせも「文字列型，文字列型，文字列型，文字列型」である。【００６４】
そこで、データ変換部３３は、符号ｂ２の行がテーブルのタイトル行の文字列の組み合わせと同じであるか否かを判定する。ここでは、符号ｂ２の行の文字列の組み合わせは、「”ＳＥＧＭＥＮＴ”，”Ｄｅｖｉｃｅ”，”ＡＲＥＡ”，”Ｅｕｒｏｐｅ”」である。テーブルのタイトル行の文字列の組み合わせは、「“ＳＥＧＭＥＮＴ”，列挙型ｘ，“ＡＲＥＡ”，列挙型ｙ」である。そこで、データ変換部３３は、ＸＢＲＬタクソノミ２１に、列挙型ｘおよび列挙型ｙの列挙値を問い合わせる。すると、テーブルのタイトル行の文字列の組み合わせは、「“ＳＥＧＭＥＮＴ”，”Ｄｅｖｉｃｅ”ｏｒ”Ｕｂｉｑｕｉｔｏｕｓ”ｏｒ”Ｔｅｃｈｎｏｌｏｇｙ”，“ＡＲＥＡ”，”Ａｓｉａ”ｏｒ”Ｏｃｅａｎｉａ”ｏｒ”Ｅｕｒｏｐｅ”ｏｒ”Ａｍｅｒｉｃａ”」となる。それぞれの組み合わせのうち１個目の文字列は“ＳＥＧＭＥＮＴ”であるため、同じである。それぞれの組み合わせのうち２個目の文字列は、テーブルタイトル行の文字列の組み合わせに符号ｂ２の行の文字列“Ｄｅｖｉｃｅ”が含まれているため、同じである。それぞれの組み合わせのうち３個目の文字列は“ＡＲＥＡ”であるため、同じである。それぞれの組み合わせのうち４個目の文字列は、テーブルタイトル行の文字列の組み合わせに符号ｂ２の行の文字列“Ｅｕｒｏｐｅ”が含まれているため、同じである。したがって、符号ｂ２の行は、テーブルのタイトル行の文字列の組み合わせと同じとなる。すなわち、符号ｂ２の行は、テーブルのタイトル行である。【００６５】
そこで、データ変換部３３は、符号ｂ２の行が次のテーブルの開始位置であることを検出する。そして、データ変換部３３は、入力済みシート２４の次のテーブルについて、データ変換処理を行う。【００６６】
［構造解析処理のイメージ］
ここで、実施例に係る構造解析処理のイメージを、図９を参照して説明する。図９は、実施例に係る構造解析処理のイメージを示す図である。図９に示すように、構造解析部３２は、ＸＢＲＬタクソノミ２１を入力する。そして、構造解析部３２は、入力したＸＢＲＬタクソノミ２１を解析し、マッピング定義２２およびテンプレートシート２３を生成し、出力する。【００６７】
例えば、構造解析部３２は、ＸＢＲＬタクソノミ２１のテーブルレイアウトから、ＸＹＺ軸のヘッダー部と値セル部のレイアウト（並び順）を取得する。構造解析部３２は、ＸＢＲＬタクソノミ２１のテーブルレイアウトから、ＸＹＺ軸のヘッダー部の情報、値セル部のデータ型を取得する。ＸＹＺ軸のヘッダー部の情報には、タイトルの文字列およびその値のデータ型が挙げられる。ここでは、Ｘ軸では、タイトルとして“Ａｓｓｅｔｓ”、“Ｌｉａｂｉｌｉｔｉｅｓ”の並びとなる。Ｙ軸では、タイトルとして“ＰＥＲＩＯＤ”、“ＰＥＲＩＯＤ”の値の並びとなる。そして、“ＰＥＲＩＯＤ”の値のデータ型は、文字列型を示す。Ｚ軸では、タイトルとして“ＳＥＧＭＥＮＴ”、“ＳＥＧＭＥＮＴ”の値、“ＡＲＥＡ”、“ＡＲＥＡ”の値の並びとなる。そして、“ＳＥＧＭＥＮＴ”の値のデータ型は、列挙型を示す。“ＡＲＥＡ”の値のデータ型は、列挙型を示す。値セル部は、Ｘ軸の“Ａｓｓｅｔｓ”の値を入力するセル、“Ｌｉａｂｉｌｉｔｉｅｓ”の値を入力するセルに対応する。“Ａｓｓｅｔｓ”の値を入力するセルのデータ型は、Ａｓｓｅｔｓ要素のデータ型であり、数値型を示す。“Ｌｉａｂｉｌｉｔｉｅｓ”の値を入力するセルのデータ型は、Ｌｉａｂｉｌｉｔｉｅｓ要素のデータ型であり、数値型を示す。ＸＢＲＬ要素のデータ型は、項目定義から取得される。【００６８】
そして、構造解析部３２は、解析したレイアウトに従って、テンプレートシート２３を生成し、生成したテンプレートシート２３を出力する。【００６９】
そして、構造解析部３２は、テンプレートシート２３の各セルに対応するＸＢＲＬ要素の情報を、マッピング定義２２のセルとＸＢＲＬ要素の紐付け情報に設定する。構造解析部３２は、解析したレイアウトに従って、ヘッダー部のタイトルのデータ型の組み合わせ、値セル部のデータ型の組み合わせをマッピング定義２２のデータ型の組み合わせ情報に設定する。ここでは、Ｘ軸のヘッダー部では、文字列型、文字列型の組み合わせ情報が設定される。Ｙ軸のヘッダー部では、文字列型、文字列型の組み合わせ情報が設定される。Ｚ軸のヘッダー部では、文字列型、列挙型ｘ、文字列型、列挙型ｙの組み合わせ情報が設定される。値セル部では、数値型、数値型の組み合わせ情報が設定される。【００７０】
なお、図９では、構造解析部３２は、マッピング定義２２のデータ型の組み合わせ情報を、列挙型の文字列を含む文字列とデータ型との組み合わせで生成したが、これに限定されない。構造解析部３２は、第２のマッピング定義２２のように、固定の文字列とデータ型との組み合わせを用いて生成しても良いし、第３のマッピング定義２２のように、列挙型の文字列を含む文字列の組み合わせを用いて生成しても良い。【００７１】
［データ変換処理のイメージ］
ここで、実施例に係るデータ変換処理のイメージを、図１０を参照して説明する。図１０は、実施例に係るデータ変換処理のイメージを示す図である。図１０に示すように、データ変換部３３は、入力済みシート２４およびマッピング定義２２を入力する。そして、データ変換部３３は、マッピング定義２２およびＸＢＲＬタクソノミ２１を参照し、入力済みシート２４に入力された財務データをマッピング（変換）し、ＸＢＲＬインスタンス４１に出力（追加）する。【００７２】
ここでは、入力済みシート２４から変換されたＸＢＲＬインスタンス４１には、ＳＥＧＭＥＮＴが「Ｄｅｖｉｃｅ」およびＡＲＥＡが「Ａｓｉａ」である場合、ＰＥＲＩＯＤとして「２０１４．０３．３１」のＡｓｓｅｔｓ値が「１０００」として設定されている。また、ＳＥＧＭＥＮＴが「Ｄｅｖｉｃｅ」およびＡＲＥＡが「Ｅｕｒｏｐｅ」である場合、ＰＥＲＩＯＤとして「２０１４．１２．３１」のＬｉａｂｉｌｉｔｉｅｓ値が「８１００」として設定されている。【００７３】
［構造解析処理のフローチャートの一例］
次に、実施例に係る構造解析処理のフローチャートについて、図１１を参照して説明する。図１１は、実施例に係る構造解析処理のフローチャートの一例を示す図である。【００７４】
まず、構造解析部３２は、ＸＢＲＬタクソノミ２１を読み込む（ステップＳ１１）。構造解析部３２は、ＸＢＲＬタクソノミ２１の解析を開始する（ステップＳ１２）。ここでいうＸＢＲＬタクソノミ２１の解析は、項目定義とテーブルレイアウトの解析を主とする。【００７５】
構造解析部３２は、テーブルレイアウトを参照して、ＸＹＺ軸のヘッダー部と値セル部のレイアウト（並び順）を取得する（ステップＳ１３）。構造解析部３２は、テーブルレイアウトおよび項目定義を参照して、ＸＹＺ軸のヘッダー部の情報、値セル部のデータ型を取得する（ステップＳ１４）。ＸＹＺ軸のヘッダー部の情報には、タイトルの文字列とその値のデータ型が含まれる。【００７６】
構造解析部３２は、解析したレイアウト（並び順）に従って、テンプレートシート２３を生成し、出力する（ステップＳ１５）。【００７７】
構造解析部３２は、生成されたテンプレートシート２３の各セルと対応するＸＢＲＬ要素の情報を、マッピング定義２２のセルとＸＢＲＬ要素の紐付け情報に出力する（ステップＳ１６）。構造解析部３２は、解析したレイアウト（並び順）に従って、ヘッダー部や値セル部のタイトルの文字列やデータ型の情報を組み合わせの情報として、マッピング定義２２のデータ型の組み合わせ情報に出力する（ステップＳ１７）。そして、構造解析部３２は、ＸＢＲＬタクソノミ２１の解析を終了する（ステップＳ１８）。【００７８】
［データ変換処理のフローチャートの一例］
次に、実施例に係るデータ変換処理のフローチャートについて、図１２を参照して説明する。図１２は、実施例に係るデータ変換処理のフローチャートの一例を示す図である。【００７９】
まず、データ変換部３３は、入力済みシート２４を受け付けたか否かを判定する（ステップＳ２０）。入力済みシート２４を受け付けていないと判定した場合には（ステップＳ２０；Ｎｏ）、データ変換部３３は、入力済みシート２４を受け付けるまで、判定処理を繰り返す。【００８０】
一方、入力済みシート２４を受け付けたと判定した場合には（ステップＳ２０；Ｙｅｓ）、データ変換部３３は、受け付けた入力済みシート２４からＺ軸のヘッダー部を取得する（ステップＳ２１）。すなわち、データ変換部３３は、受け付けた入力済みシート２４上のテーブルの１行目に存在するＺ軸のヘッダー部から１行ずつ読み込む。そして、データ変換部３３は、入力済みシート２４からＸ軸のヘッダー部を取得する（ステップＳ２２）。【００８１】
続いて、データ変換部３３は、次の１行を解析対象行として読み込む（ステップＳ２３）。すなわち、データ変換部３３は、最初のテーブルのＹ軸のヘッダー部以降の行を解析し、次のテーブルの開始位置を検出する。データ変換部３３は、解析対象行のデータ型の組み合わせがマッピング定義２２に登録されているデータ入力行と同じであるか否かを判定する（ステップＳ２４）。データ入力行のデータ型の組み合わせは、Ｙ軸のヘッダー部のデータ型の組み合わせと値セル部のデータ型の組み合わせとを加えたものである。【００８２】
解析対象行のデータ型の組み合わせがデータ入力行と同じであると判定した場合には（ステップＳ２４；Ｙｅｓ）、データ変換部３３は、ステップＳ２７に移行する。【００８３】
解析対象行のデータ型の組み合わせがデータ入力行と同じでないと判定した場合には（ステップＳ２４；Ｎｏ）、データ変換部３３は、以下の処理を行う。すなわち、データ変換部３３は、解析対象行のデータ型の組み合わせがマッピング定義２２に登録されているテーブルのタイトル行と同じであるか否かを判定する（ステップＳ２５）。テーブルのタイトル行のデータ型の組み合わせは、Ｚ軸のヘッダー部のデータ型の組み合わせである。【００８４】
解析対象行のデータ型の組み合わせがテーブルのタイトル行と同じであると判定した場合には（ステップＳ２５；Ｙｅｓ）、データ変換部３３は、解析対象行を次のテーブルの開始位置として検出する（ステップＳ２６）。そして、データ変換部３３は、次のテーブルのマッピング処理をすべく、ステップＳ２１に移行する。【００８５】
一方、解析対象行のデータ型の組み合わせがテーブルのタイトル行と同じでないと判定した場合には（ステップＳ２５；Ｎｏ）、データ変換部３３は、解析対象行のマッピング処理をすべく、ステップＳ２８に移行する。なお、かかる場合は、解析対象行がデータ入力行にも、テーブルのタイトル行にもマッチしないので、ユーザの入力ミスの場合である。そこで、データ変換部３３は、マッピング処理時に、入力されたデータ型に応じたエラーを通知するようにしても良い。【００８６】
ステップＳ２４において、解析対象行のデータ型の組み合わせがデータ入力行と同じであると判定した場合には（ステップＳ２４；Ｙｅｓ）、データ変換部３３は、以下の処理を行う。すなわち、データ変換部３３は、解析対象行の文字列とデータ型の組み合わせがマッピング定義２２に登録されているテーブルのタイトル行と同じであるか否かを判定する。かかる場合は、第２のマッピング定義２２を用いる場合である。あるいは、データ変換部３３は、解析対象行の文字列の組み合わせがマッピング定義２２に登録されているテーブルのタイトル行と同じであるか否かを判定する（ステップＳ２７）。かかる場合は、第３のマッピング定義２２を用いる場合である。【００８７】
解析対象行の文字列とデータ型の組み合わせまたは解析対象行の文字列の組み合わせがテーブルのタイトル行と同じであると判定した場合には（ステップＳ２７；Ｙｅｓ）、データ変換部３３は、ステップＳ２６に移行する。すなわち、データ変換部３３は、解析対象行を次のテーブルの開始位置として検出する。【００８８】
一方、解析対象行の文字列とデータ型の組み合わせまたは解析対象行の文字列の組み合わせがテーブルのタイトル行と同じでないと判定した場合には（ステップＳ２７；Ｎｏ）、データ変換部３３は、解析対象行がＹ軸のヘッダー部であると判断する。そして、データ変換部３３は、解析対象行についてマッピング処理を行う（ステップＳ２８）。【００８９】
データ変換部３３は、データの終端か否かを判定する（ステップＳ２９）。データの終端でないと判定した場合には（ステップＳ２９；Ｎｏ）、データ変換部３３は、次の１行を読み込むべく、ステップＳ２３に移行する。一方、データの終端であると判定した場合には（ステップＳ２９；Ｙｅｓ）、データ変換部３３は、データ変換処理を終了する。【００９０】
［評価装置の用途の一例］
次に、実施例に係る評価装置の用途の一例を、図１３を参照して説明する。図１３は、実施例に係る評価装置の用途の一例を示す図である。図１３に示すように、評価装置１は、監督機関側に設置される。監督機関によってＸＢＲＬタクソノミ２１が作成される。そして、構造解析部３２は、作成されたＸＢＲＬタクソノミ２１を入力し、入力したＸＢＲＬタクソノミ２１を用いて、テンプレートシート２３およびマッピング定義２２を生成する（Ｓ２１０）。監督機関は、生成されたテンプレートシート２３およびマッピング定義２２を公開し、提出企業がテンプレートシート２３を取得できるようにする。提出企業は、取得したテンプレートシート２３を用いて財務データを入力し、入力済みシート２４を作成する。そして、データ変換部３３は、入力済みシート２４を入力し、入力した入力済みシート２４をＸＢＲＬインスタンス４１に変換する（Ｓ２２０）。【００９１】
なお、図１３で示した評価装置１は、監督機関側に設置されたサーバモデルであるが、これに限定されない。評価装置１は、提出企業側に設置されるクライアントモデルであっても良い。【００９２】
［実施例の効果］
上記実施例によれば、評価装置１は、複数の行を有するテーブル情報を記憶する入力済みシート２４を参照して、複数の行のうちの各行について、該行に含まれる複数のセルに対応付けられた文字または文字列のデータ種別の組みを特定する。評価装置１は、複数の行のうちの特定の行に含まれる複数のセルに対応付けられたデータ種別の組みの情報を記憶するマッピング定義２２を参照して、マッピング定義２２に記憶されたデータ種別の組みを取得する。評価装置１は、複数の行のうちの各行について、取得したデータ種別の組みと、特定したデータ種別の組みとの比較を行い、比較結果に応じて、比較処理の対象行の評価を行う。かかる構成によれば、評価装置１は、入力済みシート２４のテーブル情報に含まれる複数の行のうち特定の行と同様の行を特定できる。【００９３】
また、上記実施例によれば、評価装置１は、マッピング定義２２から取得したデータ種別の組みと、入力済みシート２４から特定したデータ種別の組みとが同じである場合には、以下の処理を行う。評価装置１は、入力済みシート２４を参照して、さらに、複数の行のうちの各行について、該行に含まれる複数のセルに対応付けられた文字または文字列およびデータ種別の組みを特定する。評価装置１は、特定の行に含まれる複数のセルに対応付けられた文字または文字列およびデータ種別の組みを記憶するマッピング定義２２を参照して、マッピング定義２２に記憶された文字および文字列およびデータ種別の組みを取得する。評価装置１は、複数の行のうちの各行について、取得した文字および文字列およびデータ種別の組みと、特定した文字および文字列およびデータ種別の組みとの比較を行う。かかる構成によれば、評価装置１は、さらに確実に特定の行と同様の行を特定できる。【００９４】
また、上記実施例によれば、評価装置１は、ＸＢＲＬタクソノミ２１を参照し、特定の行に含まれる複数のセルに対応付けられたデータ種別の組みの情報を生成する。評価装置１は、生成したデータ種別の組みの情報をマッピング定義２２に記憶する。かかる構成によれば、評価装置１は、データ種別の組みの情報を記憶したマッピング定義２２を用いることで、入力済みシート２４に複数のテーブルが存在する場合であっても、各テーブルの特定の行を特定できる。【００９５】
また、上記実施例によれば、評価装置１は、ＸＢＲＬタクソノミ２１を参照し、特定の行に含まれる複数のセルに対応付けられた文字または文字列、およびデータ種別の組みの情報を生成する。評価装置１は、生成した文字または文字列、およびデータ種別の組みの情報をマッピング定義２２に記憶する。かかる構成によれば、評価装置１は、文字または文字列、およびデータ種別の組みの情報を記憶したマッピング定義２２を用いることで、入力済みシート２４に複数のテーブルが存在する場合であっても、さらに、各テーブルの特定の行を特定できる。【００９６】
［プログラム等］
なお、評価装置１は、既知のパーソナルコンピュータ、ワークステーション等の情報処理装置に、上記した制御部３と、記憶部２等の各機能を搭載することによって実現することができる。【００９７】
また、図示した評価装置１の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、評価装置１の分散・統合の具体的態様は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、入力部３１と構造解析部３２とを１個の部として統合しても良い。データ変換部３３と出力部３４とを１個の部として統合しても良い。一方、構造解析部３２を、マッピング定義２２を生成する第１の生成部と、テンプレートシート２３を生成する第２の生成部とに分散しても良い。また、ＸＢＲＬタクソノミ２１、マッピング定義２２、テンプレートシート２３および入力済みシート２４等の記憶部２を評価装置１の外部装置としてネットワーク経由で接続するようにしても良い。【００９８】
また、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーション等のコンピュータで実行することによって実現することができる。そこで、以下では、図１に示した評価装置１と同様の機能を実現する評価プログラムを実行するコンピュータの一例を説明する。図１４は、評価プログラムを実行するコンピュータの一例を示す図である。【００９９】
図１４に示すように、コンピュータ２００は、各種演算処理を実行するＣＰＵ２０３と、ユーザからのデータの入力を受け付ける入力装置２１５と、表示装置２０９を制御する表示制御部２０７を有する。また、コンピュータ２００は、記憶媒体からプログラム等を読取るドライブ装置２１３と、ネットワークを介して他のコンピュータとの間でデータの授受を行う通信制御部２１７とを有する。また、コンピュータ２００は、各種情報を一時記憶するメモリ２０１と、ＨＤＤ２０５を有する。そして、メモリ２０１、ＣＰＵ２０３、ＨＤＤ２０５、表示制御部２０７、ドライブ装置２１３、入力装置２１５、通信制御部２１７は、バス２１９で接続されている。【０１００】
ドライブ装置２１３は、例えばリムーバブルディスク２１１用の装置である。ＨＤＤ２０５は、評価プログラム２０５ａおよび評価処理関連情報２０５ｂを記憶する。【０１０１】
ＣＰＵ２０３は、評価プログラム２０５ａを読み出して、メモリ２０１に展開する。評価プログラム２０５ａは、評価プロセスとして機能する。【０１０２】
例えば、評価プロセスは、制御部３の各機能部に対応する。評価処理関連情報２０５ｂは、ＸＢＲＬタクソノミ２１、マッピング定義２２、テンプレートシート２３および入力済みシート２４に対応する。【０１０３】
なお、評価プログラム２０５ａについては、必ずしも最初からＨＤＤ２０５に記憶させておかなくても良い。例えば、コンピュータ２００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカード等の「可搬用の物理媒体」に当該プログラムを記憶させておく。そして、コンピュータ２００がこれらからプログラム２０５ａを読み出して実行するようにしても良い。
【符号の説明】
【０１０４】
１  評価装置
２  記憶部
３  制御部
２１  ＸＢＲＬタクソノミ
２２  マッピング定義
２３  テンプレートシート
２４  入力済みシート
３１  入力部
３２  構造解析部
３３  データ変換部
３４  出力部
４１  ＸＢＲＬインスタンス
【図１】
0006708253.tif 000002
【図２】
0006708253.tif 000003
【図３】
0006708253.tif 000004
【図４】
0006708253.tif 000005
【図５】
0006708253.tif 000006
【図６】
0006708253.tif 000007
【図７】
0006708253.tif 000008
【図８】
0006708253.tif 000009
【図９】
0006708253.tif 000010
【図１０】
0006708253.tif 000011
【図１１】
0006708253.tif 000012
【図１２】
0006708253.tif 000013
【図１３】
0006708253.tif 000014
【図１４】
0006708253.tif 000015
【図１５】
0006708253.tif 000016
【図１６】
0006708253.tif 000017
【図１７】
0006708253.tif 000018