(57)【要約】      （修正有）【課題】構造化文書を用いてデータ処理装置間で行う文書交換において、文書交換の適合性を評価するための評価データを生成する構造化文書評価データ生成装置を提供する。【解決手段】構造化文書の構造を形成する要素とその属性を設定する項目と、前記構造化文書の構造に基づかない、スペースや終了タグなどのデータ表現に使用するデータを設定する項目とを評価項目として組合わせることにより評価データを生成する。【選択図】図１
2006172343.tif 000002
【特許請求の範囲】
【請求項１】
構造化文書の文書交換におけるデータ処理装置間の文書交換の適合性を評価するための評価データを生成する構造化文書評価データ生成装置であって、
前記構造化文書の構造を形成する要素とその属性を設定する項目と、
前記構造化文書の構造に基づかない、データ表現に使用するデータを設定する項目とを評価項目として組合わせることにより前記評価データを生成することを特徴とする構造化文書評価データ生成装置。
【請求項２】
前記データ表現に使用するデータを設定する項目は、少なくとも１つのデータ表現項目から構成され、前記データ表現項目の１つとしてスペースに関わる項目又は終了タグに関わる項目が設定されていることを特徴とする請求項１に記載の構造化文書評価データ生成装置。
【請求項３】
前記構造化文書のデータ構造の定義をスキーマ定義文書により定義することを特徴とする請求項１又は請求項２に記載の構造化文書評価データ生成装置。
【請求項４】
前記要素とその属性を設定する項目がＸＭＬで記述されていることを特徴とする請求項３に記載の構造化文書評価データ生成装置。
【請求項５】
前記要素に設定可能な機能を判定するために設定された評価分類に該当する全ての前記要素を調べた結果に基づき、前記要素とその属性を設定する項目を生成することを特徴とする請求項４に記載の構造化文書評価データ生成装置。
【請求項６】
前記評価分類は、それぞれ少なくとも１つの機能項目を含み、当該機能項目の１つに省略可能要素に関わる項目又は指定要素の値に関わる項目を含むことを特徴とする請求項５に記載の構造化文書評価データ生成装置。
【請求項７】
前記スキーマ定義文書の解釈を行い、前記全ての要素の親子関係、省略の可否、繰り返しのうち、少なくとも１つを含む要素情報を生成することを特徴とする請求項５又は請求項６に記載の構造化文書評価データ生成装置。
【請求項８】
前記スキーマ定義文書の解釈を行うスキーマ解釈手段を備えることを特徴とする請求項７に記載の構造化文書評価データ生成装置。
【請求項９】
前記スキーマ解釈手段により、前記要素情報に基づいて前記要素の指定可能な値を複数設定することを特徴とする請求項８に記載の構造化文書評価データ生成装置。
【請求項１０】
前記要素情報を用いて前記評価分類に該当する要素を調べ、前記評価分類毎に前記要素の属性の設定を含む項目を生成することを特徴とする請求項７から請求項９のいずれか１項に記載の構造化文書評価データ生成装置。
【請求項１１】
前記要素とその属性を設定する項目と、前記データ表現に使用するデータを設定する項目とを組合せて得られる全ての組合せの評価データを生成することを特徴とする請求項１０に記載の構造化文書評価データ生成装置。
【請求項１２】
前記全ての組合せの評価データを生成する評価データ生成手段を備えることを特徴とする請求項１１に記載の構造化文書評価データ生成装置。
【請求項１３】
前記要素とその属性を設定する項目で互いに親子関係のある要素での親要素の繰り返し及び子要素の繰り返しを設定する場合、前記親要素で前記子要素を当該子要素の設定回数繰り返し、かつ前記親要素を当該親要素の設定回数繰り返す設定とすることを特徴とする請求項１１に記載の構造化文書評価データ生成装置。
【請求項１４】
コンピュータ処理装置上で実行され、構造化文書の文書交換におけるデータ処理装置間の文書交換の適合性を評価するための評価データを生成する構造化文書評価データ生成プログラムであって、
前記コンピュータ処理装置に、前記構造化文書の構造を形成する要素とその属性を設定する項目と、前記構造化文書の構造に基づかない、データ表現に使用するデータを設定する項目とを評価項目として組合わせることにより前記評価データを生成する機能を持たせることを特徴とする構造化文書評価データ生成プログラム。
【請求項１５】
前記データ表現に使用するデータを設定する項目は、少なくとも１つのデータ表現項目から構成され、前記データ表現項目の１つとしてスペースに関わる項目又は終了タグに関わる項目を設定する機能を有することを特徴とする請求項１４に記載の構造化文書評価データ生成プログラム。
【請求項１６】
前記構造化文書のデータ構造の定義をスキーマ定義文書により定義し、前記要素とその属性を設定する項目をＸＭＬで記述する機能を有することを特徴とする請求項１５に記載の構造化文書評価データ生成プログラム。
【請求項１７】
前記要素に設定可能な機能を判定するために設定された評価分類に該当する全ての前記要素を調べた結果に基づき、前記要素とその属性を設定する項目を生成する機能を有することを特徴とする請求項１６に記載の構造化文書評価データ生成プログラム。
【請求項１８】
前記評価分類は、それぞれ少なくとも１つの分類項目を含み、当該分類項目の１つに省略可能要素に関わる項目又は指定要素の値に関わる項目を含む機能を有することを特徴とする請求項１７に記載の構造化文書評価データ生成プログラム。
【請求項１９】
前記スキーマ定義文書の解釈を行い、前記全ての要素の親子関係、省略の可否、繰り返しのうち、少なくとも１つを含む要素情報を生成する機能を有することを特徴とする請求項１７又は請求項１８に記載の構造化文書評価データ生成プログラム。
【請求項２０】
前記要素情報に基づいて前記要素の指定可能な値を複数設定する機能を有することを特徴とする請求項１９に記載の構造化文書評価データ生成プログラム。
【請求項２１】
前記要素情報を用いて前記評価分類に該当する要素を調べ、前記評価分類毎に前記要素の属性の設定を含む項目を生成する機能を有することを特徴とする請求項１９又は請求項２０に記載の構造化文書評価データ生成プログラム。
【請求項２２】
前記要素とその属性を設定する項目と前記データ表現に使用するデータを設定する項目を組合せて得られる全ての組合せの評価データを生成する機能を有することを特徴とする請求項２１に記載の構造化文書評価データ生成プログラム。
【請求項２３】
前記要素とその属性を設定する項目で互いに親子関係のある要素での親要素の繰り返し及び子要素の繰り返しを設定する場合、前記親要素で前記子要素を当該子要素の設定回数繰り返し、かつ前記親要素を当該親要素の設定回数繰り返す設定とする機能を有することを特徴とする請求項２２に記載の構造化文書評価データ生成プログラム。
【請求項２４】
構造化文書を実装したアプリケーションの検査を行うための構造化文書検査システムであって、
前記構造化文書の文書交換におけるデータ処理装置間の文書交換の適合性を評価するための評価データを生成する構造化文書評価データ生成装置と、生成された前記評価データに基づいて、交換される構造化文書の評価を行うことを特徴とする構造化文書検査システム。
【請求項２５】
前記構造化文書の構造を形成する要素とその属性を設定する項目と、前記構造化文書の構造に基づかない、データ表現に使用するデータを設定する項目とを評価項目として組合わせることにより前記評価データを生成することを特徴とする請求項２４に記載の構造化文書検査システム。
【請求項２６】
前記データ表現に使用するデータを設定する項目は、少なくとも１つのデータ表現項目から構成され、前記データ表現項目の１つとしてスペースに関わる項目又は終了タグに関わる項目が設定されていることを特徴とする請求項２５に記載の構造化文書検査システム。
【請求項２７】
前記構造化文書のデータ構造の定義をスキーマ定義文書により定義し、前記要素とその属性を設定する項目がＸＭＬで記述されていることを特徴とする請求項２６に記載の構造化文書検査システム。
【請求項２８】
前記要素に設定可能な機能を判定するために設定された評価分類に該当する全ての前記要素を調べた結果に基づき、前記要素とその属性を設定する項目を生成することを特徴とする請求項２７に記載の構造化文書検査システム。
【請求項２９】
前記アプリケーションの検査を行うための構造化文書検査部を備え、前記構造化文書検査部により前記評価データを用いて前記アプリケーションの検査を行うことを特徴とする請求項２５から請求項２８のいずれか１項に記載の構造化文書検査システム。
【請求項３０】
前記アプリケーションを前記構造化文書検査部の接続されたネットワーク経由で受信することを特徴とする請求項２９に記載の構造化文書検査システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ生成装置に関し、特に、構造化文書を用いてデータ処理装置間で行う文書交換において、文書交換の適合性を評価するための評価データを生成する構造化文書評価データ生成装置、構造化文書評価データ生成プログラム及び構造化文書検査システムを提供することにある。
【背景技術】
【０００２】
コンピュータ（データ処理装置）間での互換性が高いために文書交換に用いられるＸＭＬ（Extensible Markup Language）を始めとする言語で書かれた構造化文書は、スキーマやメッセージ作成手順などの手順書を元に作成されることが多い。ここで、スキーマは、文書の枠組みを示す概念である。
【０００３】
スキーマは要素の繰り返しや省略などを細かく指定することができる。このため、スキーマに基づいた構造化文書では、非常に多くの組合せが可能である。スキーマは文書を交換するアプリケーション間で規定する場合や、標準仕様として一般に公開されているものを利用する場合がある。
【０００４】
実際の文書交換システムでは、スキーマに定義された情報を必ずしも全て扱うわけではなく、個別の取り決めなどで詳細を決定することが多い。
【０００５】
このため、共通のスキーマを使用した文書交換であるにも拘わらず、以下のような場合に、処理が失敗することがある。
１．スキーマを解釈する機能がアプリケーションにより異なるために、文書交換ができなくなることがある。
２．個別規定のようなアプリケーションが認識できない情報をもとにしているため、文書交換の相手同士でアプリケーションによる解釈が一致しない場合があり、結果的にアプリケーション間で解釈の相違が発生する。
３．構造化文書中の空白や改行など、スキーマの定義とは関係のない情報によりアプリケーション間で認識の相違が発生する。
【０００６】
このように、構造化文書を使用した文書交換では、共通のスキーマを使用した文書交換であるにも拘わらず、アプリケーションにより解釈の相違が存在し、その結果、文書交換の失敗を引き起こすことがあるという問題を抱えていた。
【０００７】
このような問題の解決に類する方法の一例が、例えば特開平１１−３０６０４６号公報（特許文献１）及び例えば特開２００３−２８０９４２号公報（特許文献２）に記載されている。
【０００８】
特許文献１に開示される方法は、機能構造データに基づいて、対象物の機能の検証を行うためのテストケースを生成するテストケース生成システムに関するもので、表形式で記述する機能仕様データの入力に従い当該表形式のデータに対応するフォーマットを用いて、各項目間における項目データの組合せを表形式に変換し、機能仕様データベースに格納する。機能検証時は、検証対象を指定するテスト項目データを入力し、機能仕様データベースから、テスト項目データと関連のある項目データの組合せを抽出し、項目データの組合せに従って、テストケースの生成を行うというものである。
【０００９】
特許文献１の方法によれば、機能仕様書情報とテストケースの間のリンクを提供し、整合性を維持して、機能仕様を十分網羅した高品質かつ効率的なテストを行うことが可能になるという効果がある。
【００１０】
また、特許文献２の方法は、ＤＴＤ（Document Type Definition）で記述されたＸＭＬ文書データのスキーマに基づいてテストプログラムを作成するシステムに関するもので、システムは、スキーマを解釈するＰＣ（Personal Computer）とテストプログラムを生成するサーバから構成される。ＰＣでは作成されたスキーマを解釈のために読み込み、スキーマの構造を解釈して、ソースプログラムを作成する。ソースプログラムは、サーバに渡され、サーバは周知のテストプログラム自動生成システムに従ってテストプログラムを作成するというものである。
【００１１】
特許文献２の方法によれば、スキーマをベースにソースプログラムを作成するので、スキーマの作成段階でミスがあったとしても、スキーマの構造をチェックすることにより、ソースプログラムが仕様通りであるか否かを検証できるという効果がある。
【特許文献１】特開平１１−３０６０４６号公報
【特許文献２】特開２００３−２８０９４２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
上述した従来の技術は、いずれも以下に述べるような問題点があった。
【００１３】
特許文献１の方法では、生成されるテストケースは、特定の機能仕様書情報に基づいたものであり、機能仕様を満たすことを条件として設定されたものであった。このため、新規に定義可能で、自由度の高いスキーマ言語に基づく構造化文書に対して適用することができない。
【００１４】
また、特許文献２の方法では、周知のテストプログラム自動生成システムに従ってソースプログラムを作成する方法であり、文書データの交換で発生するシステムエラーの問題を解決するための方法については何ら示されていない。
【００１５】
さらに、特許文献２の方法は、スキーマの構造のチェックでは検出されない、構造化文書の表現に基づかないスペース、改行、終了タグなどのデータ表現の記述による解釈の相違が原因で発生する処理の失敗の問題を解決するものではなかった。
【００１６】
本発明の目的は、上記従来技術の欠点を解決し、構造化文書を用いてデータ処理装置間で行う文書交換において、文書交換の適合性を評価するための評価データを生成する構造化文書評価データ生成装置、構造化文書評価データ生成プログラム及び構造化文書検査システムを提供することにある。
【課題を解決するための手段】
【００１７】
上記目的を達成するための本発明は、構造化文書の文書交換におけるデータ処理装置間の文書交換の適合性を評価するための評価データを生成する構造化文書評価データ生成装置であって、前記構造化文書の構造を形成する要素とその属性を設定する項目と、前記構造化文書の構造に基づかない、データ表現に使用するデータを設定する項目とを評価項目として組合わせることにより前記評価データを生成することを特徴とする。
【００１８】
本発明は、構造化文書を使用した文書交換において、特にデータ組合せが原因となって起こる、システムエラーの発生しない構造化文書評価データ生成装置を提供するものである。このため、本発明では、構造化文書を使用した文書交換で使用されるデータのすべての組合せをテストできる評価データを生成する。
【００１９】
本発明では、構造化文書を使用した文書交換の際に、構造化文書の構造に基づく記述と構造化文書の構造に基づかない記述が共に使用されている点に着目した。
【００２０】
構造化文書の構造に基づく記述としては、例えばＸＭＬ、ＨＴＭＬ（Hyper Text Markup Language）などの言語による記述があり、要素とその属性を設定する表現に使用される。また、構造化文書の構造に基づかない記述としては、例えばスペース、改行、終了タグなどのデータ表現がある。構造化文書の構造に基づく記述は同じであるが、構造化文書の構造に基づかない文字データの記述が異なる２つのデータは、文字データとしては異なるが、構造化文書としては同じデータとなる。
【００２１】
以上の点に鑑み、本発明では、構造化文書の構造に基づく記述と構造化文書の構造に基づかない記述を区別し、構造化文書の構造に基づく項目と構造化文書の構造に基づかない項目を別々に生成し、これらの項目の全てを組合わせることにより評価データを生成する。
【００２２】
ここで、構造化文書の構造に基づく記述には、要素とその属性を設定する表現が該当し、また構造化文書の構造に基づかない記述には、データ表現に使用するデータを設定する表現が該当する。
【００２３】
構造化文書の構造に基づく項目の生成では、最初に要素に設定可能な機能項目に基づき、機能項目を少なくとも１つ含んだ評価分類を設定する。一方、同時に、スキーマ定義文書の解釈を行い、全ての要素の親子関係、省略の可否、繰り返しなどの要素情報を得る。次に、要素情報を用いて評価分類毎に要素とその属性を設定する項目を設定する。
【００２４】
また、構造化文書の構造に基づかない項目の生成では、最初に文字データに対応したデータ表現項目を設定した後、データ表現に使用するデータを設定する項目を設定する。
【００２５】
以上のようにして、構造化文書の構造に基づく要素とその属性を設定する項目と、構造化文書の構造に基づかないデータを設定する項目を生成し、これら２つの項目を組合せて得られる全ての組合せの評価データを生成する。
【発明の効果】
【００２６】
本発明によれば、構造化文書を用いてデータ処理装置間で行う文書交換において、文書交換の適合性を評価するための評価データを生成することができる。
【００２７】
その理由は、要素とその属性を設定する項目とデータ表現に使用するデータを設定する項目とを組合せた全ての場合の評価データを生成するためである。
【実施例１】
【００２８】
以下、本発明の好適な実施例について図面を参照して詳細に説明する。
【００２９】
図１は、本実施例による構造化文書評価データ生成装置１０の構成を示すブロック図である。ここでは、構成の説明を行い、生成されるデータの詳細については、図２以降で説明する。
【００３０】
図１を参照すると、本実施例による構造化文書評価データ生成装置１０は、スキーマ解釈手段２０と、評価データ生成手段３０と、データベース４０を備えた構成となっている。ここで、スキーマは、文書の枠組みを示す概念である。XML文書の作成に使用される文書の枠組みを定義するスキーマ定義文書は、DTD（Document Type Definition）で記述される。また、DTDは文書の構造を定義する言語である。
【００３１】
通常、構造化文書では、タグ（＜＞で示される記号）と呼ばれる記号により要素の位置を明示し、属性を収納する。タグにより明示された表現は構造化文書に基づく表現であり、構造化文書表現としての意味を持つ。
【００３２】
しかし、テキストエディタ等で人間が構造化文書を作成した場合は、改行時にスペースなどを挿入して、文書を見やすいように加工することがある。このようなテキスト上の改行文字、スペースなどのデータ表現に基づく表現は、構造化文書の構造に基づかない表現であり、構造化文書表現としては意味を持たない。
【００３３】
スキーマ解釈手段２０は、データベース４０からスキーマ定義文書のファイル及び評価分類を設定するファイルを取得することができる。また、これらのファイルの情報から、構造化文書の構造に基づく項目を設定するファイルを生成し、評価データ生成手段３０に提供することができる。なお、構造化文書の構造に基づく項目には、構造化文書で使用する要素とその属性を設定する項目が含まれ、これらの項目は構造化文書表現としての意味を持つ。以下では、これらの項目を構造化文書表現項目と記述することとする。
【００３４】
評価データ生成手段３０は、スキーマ解釈手段２０から構造化文書表現項目を設定したファイルを取得する。また、データベース４０からデータ表現に基づく項目を設定したファイルを取得し、構造化文書の表現に基づく項目とデータ表現に基づく項目を組合せた評価データを生成することができる。
【００３５】
次に、評価データ生成のプロセスをファイル情報に基づき説明する。
【００３６】
図２は、本実施例の構造化文書評価データ生成装置１０による評価データ生成プロセスを説明するための図である。なお、以下の説明では、必要に応じて図１の主要な部分を参照する。
【００３７】
図２を参照すると、スキーマ解釈手段２０は、データベース４０に格納されたスキーマ定義文書ファイル１０１と評価分類設定ファイル１１１を読み込み、スキーマの構造を解釈して取り出した要素情報と、評価の分類を設定したテスト分類設定ファイル１１１の情報を用いて構造化文書表現項目ファイル１２１を生成することができる。
【００３８】
なお、スキーマ定義文書ファイル１０１は、構造化文書に使用される要素を定義したファイルである。また、テスト分類設定ファイル１１１は要素に設定可能な機能を判定する機能項目に基づくテスト分類を設定したファイルである。また、要素情報は、要素の親子関係、省略の可否、繰り返しなどからなる要素に関する情報である。
【００３９】
構造化文書表現項目ファイル１２１は、構造化文書で使用する要素とその属性の設定などを内容とする構造化文書の表現に基づく項目を設定したファイルである。
【００４０】
評価データ生成手段３０は、スキーマ解釈手段２０により生成された構造化文書表現項目ファイル１２１とデータベース４０に格納されたデータ表現項目ファイル１４１を読み込んで、あらゆる組合せの評価データ３０１を生成することができる。
【００４１】
このように、評価データ３０１の生成ステップを２段階とすることで、データ構造の組合せやデータ表現の組合せを効率的に評価するための構造化文書データの生成を可能にしている。
【００４２】
すなわち、構造化文書の表現に基づく項目をスキーマ解釈手段２０で生成し、次に、構造化文書表現に基づく項目と、構造化文書表現に基づかない項目であるデータ表現に基づく項目を組合せた評価データ３０１を評価データ生成手段３０で生成する。
【００４３】
これらの２段階の生成機能により、あらゆる組合せの評価データ３０１を生成することができる。本実施例では評価データ３０１の生成について記載している。評価データ３０１の具体的利用方法についてはここでは述べないが、第３の実施例では評価データ３０１の具体的利用方法を記載してある。
【００４４】
本発明の特徴である、構造化文書の構造に基づく項目をスキーマ解釈手段２０で生成し、次に、構造化文書の構造に基づく項目と構造化文書の構造に基づかない項目を組合せた評価データ３０１を評価データ生成手段３０で生成する機能については、コンピュータ装置の内部にそのような機能を実現するプログラムを組み込んだ回路部品を実装して実現することも可能であるが、本発明の特徴的な機能を実現するためのプログラム（アプリケーション）を記憶媒体に記憶させ、コンピュータ装置で当該プログラムを実行することで、構造化文書評価データ生成装置１０として機能させることもできる。
【００４５】
次に、構造化文書評価データ生成装置１０の動作例について図３を用いて詳細に説明する。
【００４６】
図３は、本実施例による構造化文書評価データ生成装置１０の動作を説明するための図である。最初に、後述する動作の説明に必要な情報及びファイルについて説明し、次に動作を説明する。
【００４７】
なお、構造化文書表現項目ファイル１２２については、プロセス途中で生成されるファイルであるため、動作の説明で述べる。
【００４８】
スキーマで要素を定義された構造化文書には、１つのルート要素があるものとする。ここで、ルート要素は、構造化文書のツリー構造で最上位の要素を表す。構造化文書では、ルート要素の中に子要素が並ぶ構造となっている。
【００４９】
図３を参照すると、機能項目情報１１０には、要素に設定可能な機能をテストするための項目が項目別に定義されている。機能項目としては、例えば、０．何もしない、１．省略可能要素の省略、２．子要素のいる省略可能要素の省略、３．指定要素の値に固定値指定、４．指定要素のみ繰り返す、５．指定文字列を含む要素名の値に固定値を設定する、のような項目が定義されている。
【００５０】
機能項目情報１１０は、ファイルであってもよいが、紙ベースデータであってもよい。
【００５１】
なお、ここでは指定要素の繰り返しという言葉を、当該要素の子要素を同じ値、条件で設定した同一の要素を繰り返すという意味で使用すると共に、ある特定の要素を複数設定することも含む広い意味で使用する。
【００５２】
評価分類設定ファイル１１２は、機能項目情報１１０から選択されたテスト分類を設定するためのファイルである。テスト分類の設定はアプリケーションの利用者により行われるが、これについては後述する。
【００５３】
評価分類の設定は、機能項目情報１１０の機能項目の中から少なくとも１つを選択することにより設定する。例えば、評価分類設定ファイル１１２のTest1では機能項目１を、Test2では機能項目２を、Test3では機能項目２と機能項目３を、評価分類として指定することを示している。
【００５４】
なお、評価分類設定ファイル１１２でALL1と記述されているテスト分類は、全体の設定で、デフォルト値、繰り返し数などの設定を行う。
【００５５】
機能項目情報１１０に基づく評価分類設定ファイル１１２の設定は、スキーマに基づく構造化文書を交換するアプリケーションの利用者が行う。利用者は、機能項目情報１１０を収納したファイルから評価分類を設定してもよく、また機能項目情報１１０を記載した紙ベースデータに基づき設定してもよい。
【００５６】
構造化文書は、任意の数だけ繰り返すことが可能であるため、上限を設定しないで組合せのみを求めると、組合せ数は無限大となってしまうが、評価分類設定ファイル１１２により、特定要素のみを指定回数繰り返すなどの設定をすることができる。
【００５７】
次に、データ表現項目情報１４０には、スペースや文字コードなどの文字データ（以下ではデータ表現項目と記述する）が項目別に定義されている。データ表現項目としては、例えば、０．何もしない、１．スペース、２．終了タグ、３．文字エンコーディングのような項目が定義されている。
【００５８】
データ表現項目ファイル１４２は、データ表現項目情報１４０から選択されたデータ表現による項目を設定するためのファイルである。データ表現の各テスト項目は、データ表現項目情報１４０に示したデータ表現項目の中から少なくとも１つをデータ表現項目の番号で指定する。例えば、データ表現項目ファイル１４２のTest1ではデータ表現項目１を、Test2ではデータ表現項目１とデータ表現項目２を、Test3ではデータ表現項目１とデータ表現項目２とデータ表現項目３を、テスト項目として指定することを表している。
【００５９】
次に、本実施例による動作を詳細に説明する。
【００６０】
図４は、本実施例による構造化文書評価データ生成装置１０の動作を説明するためのフローチャートである。
【００６１】
以下では、図３の説明を、図４のフローチャートに沿って行う。また、説明の途中で図５の説明を行う。
【００６２】
図４を参照すると、最初に、アプリケーションの利用者により機能項目情報１１０から選択された少なくとも１つの機能項目で構成される各評価分類の設定がなされ、その設定に基づき評価分類設定ファイル１１２が生成される（ステップ４０１）。
【００６３】
図３の評価分類設定ファイル１１２の例では、Test1は機能項目１に、Test2は機能項目２に、Test3は機能項目２と機能項目３にそれぞれ対応する。
【００６４】
このように、機能項目を複数指定できることを可能にすることで、１つの機能項目だけでなく、複数の機能項目を組合せて評価をすることを可能にしている。
【００６５】
スキーマ解釈手段２０は、スキーマ定義文書ファイル１０１の内容の解釈を行い、構造化文書表現項目ファイル１２２を生成する手段である。スキーマ定義文書ファイル１０１は、標準化されているものもある。スキーマの情報量は多いためここではその内容の説明はしないが、本実施例の図６では、ＤＴＤによるスキーマの一例を示してある。
【００６６】
スキーマ解釈手段２０は、スキーマ定義文書ファイル１０１を読み込んで（ステップ４０２）、スキーマの解釈を行い、要素の親子関係、省略の可否、繰り返しなどの要素情報を生成する（ステップ４０３）。
【００６７】
次に、スキーマ解釈手段２０は、評価分類設定ファイル１１２を読み込み（ステップ４０４）、先に解釈したスキーマの要素情報を用いて、要素に設定可能な機能を判定するために設定された評価分類に該当する全ての前記要素を調べる。次に、その結果に基づき、要素とその属性を設定する項目を設定することにより、構造化文書表現項目ファイル１２２を生成する（ステップ４０５）。
【００６８】
前記要素に設定可能な機能を判定するために設定された評価分類に該当する全ての前記要素を調べた結果に基づき、前記要素の属性の設定を含む項目を生成する
なお、ステップ４０５のスキーマ解釈手段２０による構造化文書表現項目ファイル１２２の出力の処理は複雑であるため、以下で説明する。
【００６９】
図５は、本実施例による構造化文書表現項目ファイル１２２の一例を示す図である。構造化文書表現項目ファイル１２２は、ＸＭＬで記述された、編集設定が可能なファイルであり、要素の値や繰り返し数を個別に設定することができるようになっている。
【００７０】
構造化文書表現項目ファイル１２２は、構造化文書である。テスト設定のルート要素の子要素として各テスト項目が並ぶような形式になっている。
【００７１】
図５を参照すると、各テストはそれぞれの要素毎に、値や繰り返し数などが設定されている。ここで＜Test＞と＜/Test＞の間の表現は、テスト設定のルート要素である。また、同様にTest1、Test2、Test3は、ルート要素の子要素であり、各テスト項目に対応する。各テスト項目に定義されている要素（Elm、Elm2、Elm3、要素名）は、いずれもスキーマに定義されている要素名である。
【００７２】
各要素の子要素として、repeat要素、value要素が生成され、要素毎の繰り返し数、値を設定する。要素を省略するときは、repeatに０を設定するか、削除する。
【００７３】
図３の評価分類設定ファイル１１２を参照すると、Test1の評価分類は１であることがわかる。機能項目情報１１０から、機能項目１の内容は、「省略可能要素の省略」であることがわかる。スキーマ解釈手段２０では、スキーマに定義された全ての要素について、「省略可能要素の省略」に該当する要素を調べる。ここで、スキーマ解釈手段２０でスキーマの要素を調べた結果、「Elm要素以外は、省略可能な要素だった」という結果であったとする。すると、スキーマ解釈手段２０は、この結果をもとに図５のTest1に示す項目を設定する。
【００７４】
また、図３の評価分類設定ファイル１１２を参照すると、Test2の機能項目は２であることがわかる。図３の機能項目情報１１０から、機能項目２の内容は、「子要素のいる省略可能要素の省略」であることがわかる。スキーマ解釈手段２０では、スキーマに定義された全ての要素について、「子要素のいる省略可能要素の省略」に該当する要素を調べる。ここで、スキーマ解釈手段２０でスキーマの要素を調べた結果、「Elm要素とその子要素Elm2以外は、子要素を持つ省略可能な要素だった」という結果であったとする。すると、スキーマ解釈手段２０は、この結果をもとに、図５のTest2に示す項目を設定する。
【００７５】
また、図３の評価分類設定ファイル１１２を参照すると、Test3の機能項目は２と３であることがわかる。機能項目２は、上記のTest2と同様である。また、機能項目情報１１０から、機能項目３の内容は、「指定要素の値に固定値指定」であることがわかる。ここでは、指定要素はElmで、値は「あああ」であることがわかる。スキーマ解釈手段２０では、スキーマに定義された全ての要素について、「省略可能要素の省略」に該当する要素を調べる。また、指定要素の子要素を調べる。ここでは、スキーマ解釈手段２０でスキーマの要素を調べた結果、「要素名がElmの要素の値は、あああとする。要素の省略はしない」という結果であったとする。すると、スキーマ解釈手段２０は、この結果をもとに、図５のTest3に示す項目を設定する。
【００７６】
なお、Test1、Test2 、Test3の項目は、あくまで一例であって、スキーマの定義内容が異なる場合には、項目は上記の例と異なるものとなる。
【００７７】
以上で、図５の構造化文書表現項目ファイル１２２の説明を終え、図３の説明に戻る。
【００７８】
次に、指定した要素の値のみ変更したい場合や、繰り返し数を変更したい場合、および指定した要素の繰り返し数だけを変えた評価データ３０１を生成したい場合は、評価分類設定ファイル１１２に評価分類を定義しておく。
【００７９】
このように、評価分類設定ファイル１１２に評価分類を定義しておくことで構造化文書表現項目ファイル１２２に同じ評価分類を任意の数だけ生成することができるため、個別設定したい評価分類を手動で編集することで細かな評価データ生成の制御も行うことができる。
【００８０】
以上に、スキーマ解釈手段２０による構造化文書表現項目ファイル１２２の生成について説明した。
【００８１】
次に、データ表現項目ファイル１４２の生成及び評価データ生成手段３０による評価データ３０１の生成について図３を参照して説明する。
【００８２】
データ表現項目情報１４０は、構造化文書の構造に基づかない、データ表現に基づく表現を設定するためのファイルである。テキスト上の改行文字、スペースなどの文字データは、構造化文書の構造に基づく表現でないため、構造化文書表現では意味を持たない。
【００８３】
アプリケーションの利用者によりデータ表現項目情報１４０から選択された少なくとも１つのデータ表現項目に基づき各データ表現テスト項目の設定がなされ、その設定に基づきデータ表現項目ファイル１４２が生成される（ステップ４０６）。
【００８４】
次に、評価データ生成手段３０が、データ表現項目ファイル１４２と構造化文書表現項目ファイル１２２を読み込み（ステップ４０７）、構造化文書表現項目ファイル１２２の項目とデータ表現項目ファイル１４２の項目とを組合せて得られる全ての組合せの数だけ評価データ３０１を生成する（ステップ４０８）。
【００８５】
なお、全ての組合せの数は、構造化文書表現項目ファイル１２２の項目数とデータ表現項目ファイル１４２の項目数との積となる。
【００８６】
次に、本実施例による構造化文書表現項目ファイル１２２の項目とデータ表現項目ファイル１４２の項目を組合せる例について説明する。
【００８７】
図３を参照すると、構造化文書表現項目ファイル１２２のTest1とデータ表現項目ファイル１４２のTest1を組合わせる場合には、構造化文書表現項目ファイル１２２のTest1の内容は、図５の構造化文書表現項目ファイル１２２のTest1の内容となる。また、データ表現項目ファイル１４２のTest1は、データ表現項目情報１４０の「スペース」に該当することがわかる。よって、この場合の評価データ３０１は、図５の構造化文書表現項目ファイル１２２のTest1と「スペース」を組合せたものとなる。
【００８８】
また、構造化文書表現項目ファイル１２２のTest1とデータ表現項目ファイル１４２のTest2を組み合わせる場合には、構造化文書表現項目ファイル１２２のTest1の内容は、図５の構造化文書表現項目ファイル１２２のTest1の内容となる。また、データ表現項目ファイル１４２のTest2は、図３を参照すると、データ表現項目情報１４０の「スペース」と「終了タグ」に該当することがわかる。この場合の評価データ３０１は、図５の構造化文書表現項目ファイル１２２のTest1に「スペース」と「終了タグ」を組合せたものとなる。
【００８９】
以上述べたように、本実施例による構造化文書評価データ生成装置１０は、構造化文書の文書交換をデータ処理装置間で行う際、文書交換の適合性を評価するための評価データを生成するシステムであって、構造化文書の構造に基づく項目と構造化文書の構造に基づかない項目を組合せた評価データを生成することを特徴とする。なお、構造化文書の構造に基づく項目には、構造化文書の構造を形成する要素とその属性を設定する項目が含まれる。また、構造化文書の構造に基づかない項目には、データ表現に使用するデータを設定する項目が含まれる。
【００９０】
次に、本実施例による繰り返しが含まれる場合の評価データ３０１の例について説明する。スキーマ解釈手段２０により生成される構造化文書の表現に基づく項目には、親子関係のある要素の繰り返しが含まれる場合がある。
【００９１】
親子関係のある要素が共に繰り返し可能な場合は、全ての要素を走査し、設定回数だけ繰り返した評価データ３０１を生成する。
【００９２】
例えば、親要素Ａ、子要素Ｂをそれぞれ２回、３回繰り返す場合は、１番目の親要素Ａの子要素として１番目の子要素Ｂ、２番目の子要素Ｂ、３番目の子要素Ｂが生成され、同様に２番目の親要素Ａの子要素として１番目の子要素Ｂ、２番目の子要素Ｂ、３番目の子要素が生成される。
【００９３】
以下、親子関係のある要素を繰り返すときの例について説明する。
【００９４】
図６は、本実施例によるスキーマで親子関係を定義する例を説明するための図である。この例では、ＤＴＤ（Document Type Definition）によるスキーマ定義例１０２を示してある。
【００９５】
図６を参照すると、ルート要素sampleの子要素として要素ElementAが定義され、要素ElementAの子要素として要素ElementBが定義されている。
【００９６】
図７は、本実施例による親子関係のある要素を繰り返すときの要素の関係を説明するための図である。ルート要素sampleが要素ElementAを２回繰り返し、ElementAが子要素であるElementBを３回繰り返す様子が示されている。
【００９７】
図８は、本実施例による親子関係のある要素を繰り返すときのＸＭＬによる記述例１２４を示す図である。
【００９８】
ルート要素であるsampleでは要素ElementAを２回繰り返し、またElementAでは子要素であるElementBを３回繰り返すことが表現されている。
【００９９】
上記の実施例では、スキーマにより文書の枠組みを定義した場合について、説明したが、スキーマ以外の別の方法により文書の枠組みを定義した構造化文書の場合についても、本実施例を同様に適用することができる。
【０１００】
以上説明した実施例によれば、構造化文書を用いてデータ処理装置間で行う文書交換において、文書交換の適合性を評価するための評価データを生成することができる。
【０１０１】
その理由は、構造を形成する要素とその属性を設定する項目と構造化文書の構造に基づかない、データ表現に使用するデータを設定する項目とを組合せた全ての場合の評価データを生成するためである。
【０１０２】
また、構造化文書に使用されるデータ定義の組合せのテストを効率良く行うことができる。
【０１０３】
その理由は、要素とその属性を設定する項目、データ表現に使用するデータを設定する項目をそれぞれ複数指定できることを可能にすることで、複数のテスト水準を組合せてテストをすることを可能にしたためである。
【実施例２】
【０１０４】
次に、本発明の第２の実施例について説明する。
【０１０５】
図９は、本実施例による構造化文書評価データ生成装置１０による評価データ生成プロセスを説明するための図である。
【０１０６】
本発明は、データ定義の組合せのテストを効率良く行うためのものであるが、
本実施例では、指定した要素間での値の組合せをテストする場合について説明する。
【０１０７】
指定した要素間での値の組合せのテストは、図２に示した評価データ生成プロセスに、さらに１段増やすことで可能となる。
【０１０８】
図９を参照すると、スキーマ解釈手段２０はスキーマ定義文書ファイル１０１の情報を解釈して得た要素情報から、要素設定ファイル２０１を生成する。要素設定ファイル２０１は、スキーマに定義してある要素が全て定義されている設定用のファイルである。
【０１０９】
図１０は、本実施例による要素設定ファイル２０２の一例を示す図である。
【０１１０】
要素設定ファイル２０２には、それぞれの要素について、指定可能な複数の値を設定する。
【０１１１】
図１０を参照すると、名称が要素名の要素では、あああ、いいい、ううの３つの値が設定されている。また、名称が要素名３の要素では、Ａ、ＢＢ、ＣＣＣ、ＤＤＤＤの４つの値が設定されている。要素設定ファイル２０２の例の場合、要素名の要素の値は３つが設定され、また要素３の要素の値は４つが設定されるため、要素間での値の組合せの数は１２となる。要素設定ファイル２０２では、要素名３の４つの値と要素名の３つの値をそれぞれ変化させた１２のテストが設定される。
【０１１２】
設定された要素設定ファイル２０１と、評価分類設定ファイル１１１をスキーマ解釈手段２０に入力すると、要素間での値の組合せの数と評価分類設定ファイル１１１に設定された評価分類の組合せを掛け合わせた数の項目が定義された構造化文書表現項目ファイル１２１が生成される。
【０１１３】
次に、評価データ生成手段３０が、データ表現項目ファイル１４１と構造化文書表現項目ファイル１２１を読み込む。
【０１１４】
評価データ生成手段３０からは、構造化文書表現項目ファイル１２１の項目とデータ表現項目ファイル１４１の項目とを組合せて得られる全ての組合せに対応した評価データ３０１が生成される。
【０１１５】
以上説明した実施例によれば、指定した要素間での値の組合せのテストを効率良く行うことができる。
【０１１６】
その理由は、各要素での複数の値の指定を可能にすることで、複数のテスト水準を組合せてテストをすることを可能にしたためである。
【実施例３】
【０１１７】
次に、本発明の第３の実施例について説明する。本実施例では、第１の実施例で説明した構造化文書評価データ生成装置１０を用いた構造化文書検査システム５０について説明する。
【０１１８】
図１１は、本実施例による構造化文書検査システム５０の構成を示すブロック図である。以下、必要に応じて図１、図３の主要な部分を参照する。
【０１１９】
図１１を参照すると、本実施例による構造化文書検査システム５０は、構造化文書評価データ生成装置１０と、データベース４１と、構造化文書検査部６０を備えた構成となっている。
【０１２０】
構造化文書評価データ生成装置１０は、第１の実施例で説明したように、構造化文書表現項目ファイル１２２の項目とデータ表現項目ファイル１４２の項目とを組合せて得られる全ての組合せの数だけ評価データ３０１を生成することができる。
【０１２１】
データベース４１は、構造化文書評価データ生成装置１０で生成された評価データ３０１を格納する。
【０１２２】
構造化文書検査部６０は、データベース４１から評価データ３０１を取得して、ＸＭＬ文書を始めとする構造化文書のテストを行うことができる。この場合のテストは、構造化文書を実装して使用するアプリケーションに評価データ３０１を読み込ませて、正常に動作するかどうかを確認することにより行う。
【０１２３】
上記のようなテストを行うことにより、構造化文書を実装したアプリケーションが評価データ３０１により設定される諸条件下で正常に動作するか否かを検査することができる。
【０１２４】
テストに利用するアプリケーションは構造化文書検査部６０内に記憶されたものであっても良く、あるいはデータベース４１に格納されているものであってもよい。
【０１２５】
構造化文書検査部６０はネットワーク４００に接続されているため、ネットワーク４００経由で受信したアプリケーションもテストに利用することができる。また、ネットワーク４００を介して評価データ３０１を読み込んだアプリケーションを当該ネットワーク４００に接続されたデータ端末に対して提供することもできる。
【０１２６】
さらに、評価データ３０１を読み込んだアプリケーションが格納された記録媒体あるいは評価データ３０１を格納した記録媒体を構造化文書検査部６０で生成し、アプリケーションの利用者に提供することもできる。
【０１２７】
本発明の構造化文書評価データ生成装置１０は、その動作をハードウェア的に実現することは勿論として、上記した各手段を実行する構造化文書評価データ生成プログラム（アプリケーション）５００をコンピュータ処理装置である構造化文書評価データ生成装置１０で実行することにより、ソフトウェア的に実現することができる。この構造化文書評価データ生成プログラム５００は、磁気ディスク、半導体メモリその他の記録媒体に格納され、その記録媒体から構造化文書評価データ生成装置１０にロードされ、その動作を制御することにより、上述した各機能を実現する。
【０１２８】
以上好ましい複数の実施例をあげて本発明を説明したが、本発明は必ずしも、上記実施例に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【図面の簡単な説明】
【０１２９】
【図１】本発明の第１の実施例による構造化文書評価データ生成装置の構成を示すブロック図である。
【図２】本発明の第１の実施例の構造化文書評価データ生成装置による評価データ生成プロセスを説明するための図である。
【図３】本発明の第１の実施例による構造化文書評価データ生成装置の動作例を説明するための図である。
【図４】本発明の第１の実施例による構造化文書評価データ生成装置の流れを説明するためのフローチャートである。
【図５】本発明の第１の実施例によるテスト設定ファイルの一例を示す図である。
【図６】本発明の第１の実施例によるスキーマで親子関係を定義する例を説明するための図である。
【図７】本発明の第１の実施例による親子関係のある要素を繰り返すときの要素の関係を説明するための図である。
【図８】本発明の第１の実施例による親子関係のある要素を繰り返すときのＸＭＬによる記述例を示す図である。
【図９】本発明の第２の実施例による構造化文書評価データ生成装置による評価データ生成プロセスを説明するための図である。
【図１０】本発明の第２の実施例による要素設定ファイルの一例を示す図である。
【図１１】本発明の第３の実施例による構造化文書検査システムの構成を示すブロック図である。
【符号の説明】
【０１３０】
１０：構造化文書評価データ生成装置
２０：スキーマ解釈手段
３０：評価データ生成手段
４０、４１：データベース
５０：構造化文書検査システム
６０：構造化文書検査部
１０１：スキーマ定義文書ファイル
１０２：ＤＴＤによるスキーマ定義例
１１０：機能項目情報
１１１、１１２：テスト分類設定ファイル
１２１、１２２：構造化文書表現項目ファイル
１２４：ＸＭＬによる記述例
１４０：データ表現項目情報
１４１、１４２：データ表現項目ファイル
２０１、２０２：要素設定ファイル
３０１：評価データ
４００：ネットワーク
５００：構造化文書評価データ生成プログラム
【図１】
2006172343.tif 000003
【図２】
2006172343.tif 000004
【図３】
2006172343.tif 000005
【図４】
2006172343.tif 000006
【図５】
2006172343.tif 000007
【図６】
2006172343.tif 000008
【図７】
2006172343.tif 000009
【図８】
2006172343.tif 000010
【図９】
2006172343.tif 000011
【図１０】
2006172343.tif 000012
【図１１】
2006172343.tif 000013