(57)【特許請求の範囲】
【請求項１】
変形元の出現回数の制約と、該変形元の出現回数の制約より厳しい変形先の出現回数の制約とが関連付けて記録された出現回数絞込みテーブルと、
変形元の型と、該変形元の型についての派生型とが関連付けて記録された派生クラス絞込みテーブルと、
ＸＭＬスキーマ中のユーザによって指定された指定スキーマ項目が、前記出現回数絞込みテーブルに記録されている変形元の出現回数の制約と同一の出現回数の制約を含む場合は、前記指定スキーマ項目中の制約がより厳しい制約に変形可能と判定して、前記ユーザに対して可能な変形の種類として出現回数絞込みを提示すると共に、変形内容の候補として前記指定スキーマ項目に含まれている出現回数の制約と関連付けて前記出現回数絞込みテーブルに記録されている変形先の出現回数の制約を提示し、前記指定スキーマ項目の型が、変形元の型として前記派生クラス絞込みテーブルに記録されている場合は、前記指定スキーマ項目中の制約がより厳しい制約に変形可能と判定して、前記ユーザに対して可能な変形の種類として派生クラス絞込みを提示すると共に、変形内容の候補として前記指定スキーマ項目の型に関連付けて前記派生クラス絞込みテーブルに記録されている変形先の派生型を提示し、前記指定スキーマ項目が、選択に関する制約を含む場合は、前記指定スキーマ項目中の制約がより厳しい制約に変形可能と判定して、前記ユーザに対して可能な変形の種類として選択項目絞り込みを提示すると共に、変形内容の候補として予め定められている規則に基づいて決定した、前記選択に関する制約よりも選択可能な項目数が少なくなる選択に関する制約を提示するスキーマ変形制御部と、
前記ユーザによって変形の種類として出現回数の絞込みが選択された場合、前記ユーザによって選択された変形内容に従って、前記指定スキーマ項目に含まれている出現回数の制約を変形する出現回数絞込み手段と、
前記ユーザによって変形の種類として派生クラス絞込みが選択された場合、前記ユーザによって選択された変形内容に従って、前記指定スキーマ項目の型を変形する派生クラス絞込み手段と、
前記ユーザによって変形の種類として選択項目絞込みが選択された場合、前記ユーザによって選択された変形内容に従って、前記指定スキーマ項目の選択に関する制約を変形する選択項目絞込み手段とを備えたことを特徴とするＸＭＬスキーマ編集支援装置。
【請求項２】
請求項１記載のＸＭＬスキーマ編集支援装置において、
前記スキーマ変形制御部は、前記指定スキーマ項目が、出現回数の幅が２以上である繰り返しの制約を含む場合、前記ユーザに対して可能な変形の種類として繰り返し項目分解を提示すると共に、変形内容の候補として予め定められている規則に基づいて決定した、繰り返し制約の対を提示し、且つ、
前記ＸＭＬスキーマ編集支援装置は、前記ユーザによって変形の種類として繰り返し項目分解が選択された場合、前記ユーザによって選択された変形内容に従って、前記指定スキーマ項目の繰り返しの制約を変形する繰り返し項目分解手段を備えたことを特徴とするＸＭＬスキーマ編集支援装置。
【請求項３】
請求項２記載のＸＭＬスキーマ編集支援装置において、
記憶装置を備え、且つ、
前記出現回数絞込み手段、前記派生クラス絞込み手段、前記選択項目絞込み手段、および、前記繰り返し項目分解手段が、変形前後の差分情報を前記記憶装置に格納する構成を有することを特徴とするＸＭＬスキーマ編集支援装置。
【請求項４】
請求項３記載のＸＭＬスキーマ編集支援装置において、
前記出現回数絞込み手段、前記派生クラス絞込み手段、前記選択項目絞込み手段、および、前記繰り返し項目分解手段によって変形されたスキーマ項目を、前記記憶装置に格納されている差分情報に基づいて復元する復元手段を備えたことを特徴とするＸＭＬスキーマ編集支援装置。
【請求項５】
請求項１乃至４の何れか１項に記載のＸＭＬスキーマ編集支援装置において、
変換元ＸＭＬスキーマと変換先ＸＭＬスキーマとをディスプレイ画面に表示し、ユーザがディスプレイ画面上で行ったスキーマ項目の対応付け操作に従ってデータマッピング情報を生成するデータマッピング装置を備え、
該データマッピング装置が、前記変換先ＸＭＬスキーマ中に、対応付けが行われていない、出現回数の制約が１回になっているスキーマ項目が存在する場合、警告を発する構成を有することを特徴とするＸＭＬスキーマ編集支援装置。
【請求項６】
変形元の出現回数の制約と、該変形元の出現回数の制約より厳しい変形先の出現回数の制約とが関連付けて記録された出現回数絞込みテーブルと、変形元の型と該変形元の型についての派生型とが関連付けて記録された派生クラス絞込みテーブルとを備えたコンピュータによりＸＭＬスキーマの編集を支援する方法において、
前記コンピュータが、ＸＭＬスキーマ中のユーザによって指定された指定スキーマ項目が、前記出現回数絞込みテーブルに記録されている変形元の出現回数の制約と同一の出現回数の制約を含む場合は、前記指定スキーマ項目中の制約がより厳しい制約に変形可能と判定して、前記ユーザに対して可能な変形の種類として出現回数絞込みを提示すると共に、変形内容の候補として前記指定スキーマ項目に含まれている出現回数の制約と関連付けて前記出現回数絞込みテーブルに記録されている変形先の出現回数の制約を提示し、前記指定スキーマ項目の型が、変形元の型として前記派生クラス絞込みテーブルに記録されている場合は、前記指定スキーマ項目中の制約がより厳しい制約に変形可能と判定して、前記ユーザに対して可能な変形の種類として派生クラス絞込みを提示すると共に、変形内容の候補として前記指定スキーマ項目の型に関連付けて前記派生クラス絞込みテーブルに記録されている変形先の派生型を提示し、前記指定スキーマ項目が、選択に関する制約を含む場合は、前記指定スキーマ項目中の制約がより厳しい制約に変形可能と判定して、前記ユーザに対して可能な変形の種類として選択項目絞り込みを提示すると共に、変形内容の候補として予め定められている規則に基づいて決定した、前記選択に関する制約よりも選択可能な項目数が少なくなる選択に関する制約を提示する第１の処理と、
前記コンピュータが、前記ユーザによって変形の種類として出現回数の絞込みが選択された場合、前記ユーザによって選択された変形内容に従って、前記指定スキーマ項目に含まれている出現回数の制約を変形する第２の処理と、
前記コンピュータが、前記ユーザによって変形の種類として派生クラス絞込みが選択された場合、前記ユーザによって選択された変形内容に従って、前記指定スキーマ項目の型を変形する第３の処理と、
前記コンピュータが、前記ユーザによって変形の種類として選択項目絞込みが選択された場合、前記ユーザによって選択された変形内容に従って、前記指定スキーマ項目の選択に関する制約を変形する第４の処理とを含むことを特徴とするＸＭＬスキーマ編集支援方法。
【請求項７】
請求項６記載のＸＭＬスキーマ編集支援方法において、
前記第１の処理では、前記指定スキーマ項目が、出現回数の幅が２以上である繰り返しの制約を含む場合、前記ユーザに対して可能な変形の種類として繰り返し項目分解を提示すると共に、変形内容の候補として予め定められている規則に基づいて決定した、繰り返し制約の対を提示し、且つ、
前記コンピュータが、前記ユーザによって変形の種類として繰り返し項目分解が選択された場合、前記ユーザによって選択された変形内容に従って、前記指定スキーマ項目の繰り返しの制約を変形する第５の処理を含むことを特徴とするＸＭＬスキーマ編集支援方法。
【請求項８】
変形元の出現回数の制約と、該変形元の出現回数の制約より厳しい変形先の出現回数の制約とが関連付けて記録された出現回数絞込みテーブルと、変形元の型と該変形元の型についての派生型とが関連付けて記録された派生クラス絞込みテーブルとを備えたコンピュータを、ＸＭＬスキーマ編集支援装置として機能させるためのプログラムであって、
前記コンピュータを、
ＸＭＬスキーマ中のユーザによって指定された指定スキーマ項目が、前記出現回数絞込みテーブルに記録されている変形元の出現回数の制約と同一の出現回数の制約を含む場合は、前記指定スキーマ項目中の制約がより厳しい制約に変形可能と判定して、前記ユーザに対して可能な変形の種類として出現回数絞込みを提示すると共に、変形内容の候補として前記指定スキーマ項目に含まれている出現回数の制約と関連付けて前記出現回数絞込みテーブルに記録されている変形先の出現回数の制約を提示し、前記指定スキーマ項目の型が、変形元の型として前記派生クラス絞込みテーブルに記録されている場合は、前記指定スキーマ項目中の制約がより厳しい制約に変形可能と判定して、前記ユーザに対して可能な変形の種類として派生クラス絞込みを提示すると共に、変形内容の候補として前記指定スキーマ項目の型に関連付けて前記派生クラス絞込みテーブルに記録されている変形先の派生型を提示し、前記指定スキーマ項目が、選択に関する制約を含む場合は、前記指定スキーマ項目中の制約がより厳しい制約に変形可能と判定して、前記ユーザに対して可能な変形の種類として選択項目絞り込みを提示すると共に、変形内容の候補として予め定められている規則に基づいて決定した、前記選択に関する制約よりも選択可能な項目数が少なくなる選択に関する制約を提示するスキーマ変形制御部、
前記ユーザによって変形の種類として出現回数の絞込みが選択された場合、前記ユーザによって選択された変形内容に従って、前記指定スキーマ項目に含まれている出現回数の制約を変形する出現回数絞込み手段、
前記ユーザによって変形の種類として派生クラス絞込みが選択された場合、前記ユーザによって選択された変形内容に従って、前記指定スキーマ項目の型を変形する派生クラス絞込み手段、
前記ユーザによって変形の種類として選択項目絞込みが選択された場合、前記ユーザによって選択された変形内容に従って、前記指定スキーマ項目の選択に関する制約を変形する選択項目絞込み手段として機能させるためのプログラム。
【請求項９】
請求項８記載のプログラムにおいて、
前記スキーマ変形制御部は、前記指定スキーマ項目が、出現回数の幅が２以上である繰り返しの制約を含む場合、前記ユーザに対して可能な変形の種類として繰り返し項目分解を提示すると共に、変形内容の候補として予め定められている規則に基づいて決定した、繰り返し制約の対を提示し、且つ、
前記コンピュータを、前記ユーザによって変形の種類として繰り返し項目分解が選択された場合、前記ユーザによって選択された変形内容に従って、前記指定スキーマ項目の繰り返しの制約を変形する繰り返し項目分解手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＸＭＬスキーマの編集を支援するＸＭＬスキーマ編集支援技術に関し、特に、スキーマ項目に対する制約をより厳しいものに変更する際の編集作業を容易なものにすることができるＸＭＬスキーマ編集支援技術に関する。
【背景技術】
【０００２】
近年、ＸＭＬで記述された発注書や請求書などのＸＭＬデータを、企業間などでやり取りするということが盛んに行われるようになってきている。その際、両者で使用しているＸＭＬスキーマが同じであれば、他企業から送られてきたＸＭＬデータを、自企業のシステムでそのまま処理することができるが、ＸＭＬスキーマが異なる場合には、他企業から送られてきたＸＭＬデータを自企業のシステムに合ったものに変更することが必要になる。このため、従来から図１６に示すように、ＸＳＬＴやＸＱｕｅｒｙ等で記述された変換処理プログラム６００を用いて、他企業などから送られてきた変換元ＸＭＬデータ６０１を、自企業のＸＭＬスキーマに合った変換先ＸＭＬデータ６０２に変換するということが行われている。
【０００３】
また、変換処理プログラム６００の開発を容易にするため、変換元ＸＭＬデータ６０１及び変換先ＸＭＬデータ６０２の構造を示す、XML SchemaやＤＴＤ等の変換元ＸＭＬスキーマ７０３及び変換先ＸＭＬスキーマ７０４を入力してディスプレイ装置７０２に両者を表示し、ユーザが入力装置７０１を用いてディスプレイ装置７０２上で行う変換元及び変換先のスキーマ項目の対応付け操作に従って、変換元ＸＭＬスキーマ７０３と変換先ＸＭＬスキーマ７０４とのスキーマ項目の対応関係を示すデータマッピング情報７０５を生成するデータマッピング装置７００も従来から知られている（例えば、非特許文献１参照）。
【０００４】
【非特許文献１】“ミドルウェア・プラットフォームソフトウェア統合サイト”[online]、［平成１８年３月２７日検索］、インターネット＜http://www.hitachi.co.jp/Prod/comp/soft1/cosminexus/products/lineup/interschema/feature.html＞
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、ＸＭＬデータの構造を定義するＸＭＬスキーマは、さまざまな利用方法を考慮し、出現回数などの制約などが汎用的に設計されていることが多い。その一方で、特定のシステムにおいて実際に使用されるＸＭＬデータの構造は、汎用的に設計されたＸＭＬスキーマの一部分の機能しか使っていない場合や、なんらかの制約を別に設けた上で利用している場合も多い。
【０００６】
しかしながら、従来は、このような点を全く考慮しておらず、データマッピング装置にオリジナルのＸＭＬスキーマをそのまま入力するようにしているため、ディスプレイ装置に表示されるＸＭＬスキーマが不必要に複雑になり、ユーザが行う変換元と変換先のスキーマ項目の対応付け操作が不必要に煩雑になる場合があるという問題があった。
【０００７】
このような問題を解決するためには、例えば、汎用的に設計されたオリジナルのＸＭＬスキーマを、システムにおいて実際に使用されているＸＭＬデータの構造に合ったものに変形し、変形後のＸＭＬスキーマをデータマッピング装置に入力するということが考えられる。しかしながら、このような目的に適した操作性の良いＸＭＬスキーマの編集支援装置は存在せず、汎用のテキストエディタを使用しているのが現状であった。
【０００８】
〔発明の目的〕
そこで、本発明の目的は、汎用的に設計されたオリジナルのＸＭＬスキーマを、システムにおいて実際に使用されているＸＭＬデータの構造に合ったものに変形する際に使用するのに好適な、操作性の良いＸＭＬスキーマ編集支援装置を提供することにある。
【課題を解決するための手段】
【０００９】
本発明にかかる第１のＸＭＬスキーマ編集支援装置は、
ＸＭＬスキーマ中のユーザから指定されたスキーマ項目が、より厳しい制約に変形可能な場合、可能な変形の種類及びその変形内容の候補をユーザに提示するスキーマ変形制御部と、
ユーザによって選択された変形の種類に対応する変形手段であって、ユーザにより選択された変形内容に従って、ユーザから指定されたスキーマ項目を変形する変形手段とを備えたことを特徴とする。
【００１０】
本発明にかかる第２のＸＭＬスキーマ編集支援装置は、第１のＸＭＬスキーマ編集支援装置において、
前記変形手段が、ユーザから指定されたスキーマ項目の出現回数の制約を絞り込む出現回数絞込み手段であることを特徴とする。
【００１１】
本発明にかかる第３のＸＭＬスキーマ編集支援装置は、第１のＸＭＬスキーマ編集支援装置において、
前記変形手段が、ユーザから指定されたスキーマ項目の型をその派生型に絞り込む派生クラス絞込み手段であることを特徴とする。
【００１２】
本発明にかかる第４のＸＭＬスキーマ編集支援装置は、第１のＸＭＬスキーマ編集支援装置において、
前記変形手段が、ユーザから指定されたスキーマ項目の選択に関する制約を絞り込む選択項目絞込み手段であることを特徴とする。
【００１３】
本発明にかかる第５のＸＭＬスキーマ編集支援装置は、第１〜第４の何れかのＸＭＬスキーマ編集支援装置において、
ユーザから指定されたスキーマ項目を複数に分解する繰り返し項目分解手段を備えたことを特徴とする。
【００１４】
本発明にかかる第６のＸＭＬスキーマ編集支援装置は、第５のＸＭＬスキーマ編集支援装置において、
記憶装置を備え、且つ、
前記変形手段および前記繰り返し項目分解手段が、変形前後の差分情報を前記記憶装置に格納する構成を有することを特徴とする。
【００１５】
本発明にかかる第７のＸＭＬスキーマ編集支援装置は、第６のＸＭＬスキーマ編集支援装置において、
前記変形手段および前記繰り返し項目分解手段によって変形されたスキーマ項目を、前記記憶装置に格納されている差分情報に基づいて復元する復元手段を備えたことを特徴とする。
【００１６】
本発明にかかる第８のＸＭＬスキーマ編集支援装置は、第２のＸＭＬスキーマ編集支援装置において、
変換元ＸＭＬスキーマと変換先ＸＭＬスキーマとをディスプレイ画面に表示し、ユーザがディスプレイ画面上で行ったスキーマ項目の対応付け操作に従ってデータマッピング情報を生成するデータマッピング装置を備え、
該データマッピング装置が、前記変換先ＸＭＬスキーマ中に、対応付けが行われていない、出現回数の制約が１回になっているスキーマ項目が存在する場合、警告を発する構成を有することを特徴とする。
【００１７】
本発明にかかる第１のＸＭＬスキーマ編集支援方法は、
コンピュータによりＸＭＬスキーマの編集を支援する方法において、
前記コンピュータが、ＸＭＬスキーマ中のユーザから指定されたスキーマ項目が、より厳しい制約に変形可能な場合、可能な変形の種類及びその変形内容の候補をユーザに提示する第１の処理と、
前記コンピュータが、ユーザによって選択された変形の種類および変形内容に従って、ユーザから指定されたスキーマ項目を変形する第２の処理とを含むことを特徴とする。
【００１８】
本発明にかかる第２のＸＭＬスキーマ編集支援方法は、第１のＸＭＬスキーマ編集支援方法において、
前記第２の処理では、ユーザから指定されたスキーマ項目の出現回数の制約を絞り込むことを特徴とする。
【００１９】
本発明にかかる第３のＸＭＬスキーマ編集支援方法は、第１のＸＭＬスキーマ編集支援方法において、
前記第２の処理では、ユーザから指定されたスキーマ項目の型をその派生型に絞り込むことを特徴とする。
【００２０】
本発明にかかる第４のＸＭＬスキーマ編集支援方法は、第１のＸＭＬスキーマ編集支援方法において、
前記第２の処理では、ユーザから指定されたスキーマ項目の選択に関する制約を絞り込むことを特徴とする。
【００２１】
本発明にかかる第１のプログラムは、
コンピュータを、
ＸＭＬスキーマ中のユーザから指定されたスキーマ項目が、より厳しい制約に変形可能な場合、可能な変形の種類及びその変形内容の候補をユーザに提示するスキーマ変形制御部、
ユーザによって選択された変形の種類に対応する変形手段であって、ユーザにより選択された変形内容に従って、ユーザから指定されたスキーマ項目を変形する変形手段として機能させる。
【００２２】
本発明にかかる第２のプログラムは、第１のプログラムにおいて、
前記変形手段が、ユーザから指定されたスキーマ項目の出現回数の制約を絞り込む出現回数絞込み手段であることを特徴とする。
【００２３】
本発明にかかる第３のプログラムは、第１のプログラムにおいて、
前記変形手段が、ユーザから指定されたスキーマ項目の型をその派生型に絞り込む派生クラス絞込み手段であることを特徴とする。
【００２４】
本発明にかかる第４のプログラムは、第１のプログラムにおいて、
前記変形手段が、ユーザから指定されたスキーマ項目の選択に関する制約を絞り込む選択項目絞込み手段であることを特徴とする。
【００２５】
〔作用〕
スキーマ変形制御部は、ユーザによってＸＭＬスキーマ中の項目が指定された場合、そのスキーマ項目の制約を、より厳しいものに変形可能か否かを判定する。そして、変形可能な場合は、可能な変形の種類およびその変形内容の候補をユーザに提示する。ここで、可能な変形の種類としては、例えば、出現回数の絞込み、派生の型への絞込み、選択項目の絞込みがある。
【００２６】
ユーザは、スキーマ変形制御部によって変形の種類および変形内容が提示されると、その中から、実行する変形の種類および変形内容を選択する。これにより、ユーザによって選択された変形の種類に対応する変形手段が、ユーザによって選択された変形内容に従って、ユーザから指定されたスキーマ項目を変形する。より具体的には、ユーザによって出現回数の絞込みが選択された場合は、出現回数絞込み手段が、ユーザによって指定されたスキーマ項目の出現回数に関する制約を、ユーザによって選択された変形内容に従って変形し、派生の型への絞込みが選択された場合は、派生クラス絞込み手段が、ユーザによって指定されたスキーマ項目の型に関する制約を、ユーザによって選択された変形内容に従って変形し、選択項目の絞込みが選択された場合には、選択項目絞り込み手段が、ユーザによって指定されたスキーマ項目の選択項目に関する制約を、ユーザによって選択された変形内容に従って変形する。
【発明の効果】
【００２７】
本発明によれば、汎用的に設計されたオリジナルのＸＭＬスキーマを、操作性良く、システムにおいて実際に使用されているＸＭＬデータの構造に合ったものに変形することが可能になる。その理由は、ＸＭＬスキーマ中のユーザによって指定されたスキーマ項目が、より厳しい制約に変形可能な場合、可能な変形の種類及びその変形内容の候補をユーザに提示するスキーマ変形制御部を備えているからである。即ち、ユーザは、スキーマ変形制御部によって提示された変形の種類および変形内容の中から実際に適用する変形の種類および変形内容を選択するという操作を行うだけで良いので、操作性良くオリジナルのＸＭＬスキーマを、実際のシステムで使用されているＸＭＬデータの構造に合ったものに変形することが可能になる。
【発明を実施するための最良の形態】
【００２８】
次に、本発明を実施するための最良の形態について図面を参照して詳細に説明する。
【００２９】
〔第１の実施の形態の構成の説明〕
図１を参照すると、本発明の第１の実施の形態は、ＸＭＬスキーマ編集支援装置１００と、データマッピング装置２００と、キーボード等の入力装置３０１と、ＬＣＤ等のディスプレイ装置３０２とから構成されている。
【００３０】
ＸＭＬスキーマ編集支援装置１００は、変換先ＸＭＬスキーマ１７０（変換処理プログラムの変換結果である変換先ＸＭＬデータの構造を示す汎用的に設計されたＸＭＬスキーマ）を入力し、ユーザによって指定されたスキーマ項目が、より厳しい制約に変形可能な場合は、可能な変形操作の種類（単に変形の種類と記す場合もある）及びその変形内容の候補をユーザに提示し、ユーザによって選択された変形操作の種類及び変形内容に従ってスキーマ項目を変形することにより、実際のシステムで使用するＸＭＬデータの構造に合ったＸＭＬスキーマを作成するものであり、スキーマ読込み部１１０と、ターゲットスキーマ変形部１２０と、制御部１３０と、表示制御部１４０と、記憶装置１５０、１６０とから構成されている。
【００３１】
制御部１３０は、入力装置３０１を介してユーザから入力される指示に従って、スキーマ読込み部１１０、ターゲットスキーマ変形部１２０及び表示制御部１４０を制御する機能を有する。
【００３２】
スキーマ読込み部１１０は、制御部１３０からの指示に従って外部より変換先ＸＭＬスキーマ１７０を読み込み、それをオリジナルターゲットスキーマ１５１として記憶装置１５０に格納すると共に、記憶装置１５０上のターゲットスキーマ変形情報１５２を空の状態に初期化する。
【００３３】
ターゲットスキーマ変形部１２０は、スキーマ変形制御部１２１と、変形手段群１２２とを備えており、変形手段群１２２は、出現回数絞込み手段１２３、派生クラス絞込み手段１２４、選択項目絞込み手段１２５、繰り返し項目分解手段１２６及びオリジナルスキーマへの復元手段１２７を含んでいる。
【００３４】
スキーマ変形制御部１２１は、ディスプレイ装置３０２に表示されているターゲットスキーマ中の、ユーザによって指定されたスキーマ項目が、出現回数絞込み手段１２３、派生クラス絞込み手段１２４および選択項目絞込み手段１２５によって、より厳しい制約に変形可能か否かを判定し、変形可能な場合には、可能な変形の種類及びその変形内容の候補をユーザに提示する機能や、ユーザによって選択された変形の種類及び変形内容を含んだスキーマ変形操作情報１６１を、変形手段群１２２中の該当する手段に渡す機能を有している。なお、本実施の形態では、スキーマ変形操作情報１６１を記憶装置１６０を介して該当する手段に渡すようにしている。また、出現回数絞込み手段１２３、派生クラス絞込み手段１２４、選択項目絞込み手段１２５により変形可能であると判断した場合には、変形の種類「出現回数絞込み」「派生クラス絞込み」「選択項目絞込み」および変形内容の候補をユーザに提示する。
【００３５】
更に、スキーマ変形制御部１２１は、ユーザによって指定されたスキーマ項目が、繰り返し項目分解手段１２６によって変形可能か否かを判定し、変形可能な場合は、可能な変形の種類「繰り返し項目分解」及び変形内容の候補をユーザに提示する機能や、ユーザによって指定されたスキーマ項目が、オリジナルスキーマへの復元手段１２７によって復元可能か否かを判定し、復元可能な場合には、可能な変形の種類「オリジナルスキーマへの復元」及び復元内容をユーザに提示する機能を有している。
【００３６】
出現回数絞込み手段１２３は、スキーマ変形操作情報１６１中の変形の種類が「出現回数絞込み」であった場合、スキーマ変形操作情報１６１中の変形内容に従って、ユーザによって指定されたスキーマ項目の出現回数の制約がより厳しいものになるようにオリジナルターゲットスキーマ１５１を変形すべく、その変形前後の差分情報をターゲットスキーマ変形情報１５２に格納する機能を有する。ここで出現回数の制約とは、例えば、0..*（０回以上の繰り返しが可能）、0..1（０回または１回出現可能）等であり、より厳しい制約に変形するとは、例えば、0..*（０回以上の繰り返しが可能）を0..0(１回も出現しない)、0..1（０回または１回出現可能)、1..1(常に１回出現する)、1..＊(１回以上繰り返しが可能)等に変形することである。
【００３７】
派生クラス絞込み手段１２４は、スキーマ変形操作情報１６１中の変形の種類が「派生クラス絞込み」であった場合、スキーマ変形操作情報１６１中の変形内容に従って、ユーザによって指定されたスキーマ項目の型の制約がより厳しいものになるように（派生型になるように）オリジナルターゲットスキーマ１５１を変形すべく、その変形前後の差分情報をターゲットスキーマ変形情報１５２に格納する機能を有する。ここで、スキーマ項目の型とは、例えば、integer型(32bit)、short型(16bit)、byte型(8bit)、ユーザが複雑な構造のＸＭＬを型として定義したもの、ユーザが上記複雑な構造に制約や拡張を加えた形で定義した型（派生型）等であり、より厳しい制約に変形するとは、例えば、integer型(32bit)をその派生型であるshort型(16bit)やbyte型(8bit)に変形することである。なお、派生の関係にある型にどのような種類のものがあるかは、ＸＭＬスキーマの言語の種類に依存するものであり、スキーマ変形制御部１２１は、ＸＭＬスキーマ言語の種類に応じて適切な変形内容の候補を提示する。
【００３８】
選択項目絞込み手段１２５は、スキーマ変形操作情報１６１中の変形の種類が「選択項目絞込み」であった場合、スキーマ変形操作情報１６１中の変形内容に従って、ユーザによって指定されたスキーマ項目の選択条件がより厳しくなるようにオリジナルターゲットスキーマ１５１を変形すべく、その変形前後の差分情報をターゲットスキーマ変形情報１５２に格納する機能を有する。例えば、ユーザによって指定されたスキーマ項目が、ＡまたはＢまたはＣのような選択になっている場合、そのサブセットに絞り込むことでより厳しい制約にする。より具体的には、ユーザによって指定されたスキーマ項目が（Ａ｜Ｂ｜Ｃ）となっていた場合には、 スキーマ変形操作情報１６１に従って(Ａ｜Ｂ), (Ａ｜Ｃ), (Ｂ｜Ｃ), (Ａ), (Ｂ), (Ｃ)のいずれかに変形することで、制約をより厳しいものにする。
【００３９】
繰り返し項目分解手段１２６は、スキーマ変形操作情報１６１中の変形の種類が「繰り返し項目分解」であった場合、スキーマ変形操作情報１６１中の変形内容に従って、ユーザによって指定された、出現回数の幅が２以上であるような繰り返しの制約が課せられているスキーマ項目を２つ以上に分解すべく、変形前後の差分情報をターゲットスキーマ変形情報１５２に格納する。例えば、ユーザによって指定されたスキーマ項目中の要素Ａが、Ａ＊（０回以上のＡの繰り返し）となっている場合には、（Ａ，Ａ＊）に分解する。
【００４０】
オリジナルスキーマへの復元手段１２７は、スキーマ変形操作情報１６１中の変形の種類が「オリジナルスキーマへの復元」であった場合、スキーマ変形操作情報１６１中の変形内容に従って、ユーザによって指定されたスキーマ項目を復元すべく、ターゲットスキーマ情報１５２から上記スキーマ項目に関する差分情報を削除する。
【００４１】
表示制御部１４０は、オリジナルターゲットスキーマ１５１及びターゲットスキーマ変形情報１５２に基づいて、オリジナルターゲットスキーマ１５１に対して行われた変形内容を反映したターゲットスキーマをディスプレイ装置３０２に表示する。
【００４２】
上記した機能を有するＸＭＬスキーマ編集支援装置１００は、コンピュータによって実現可能なものであり、コンピュータによって実現する場合には、例えば次のようにする。コンピュータをＸＭＬスキーマ編集支援装置１００として機能させるためのプログラムを記録したディスク、半導体メモリ、その他の記録媒体を用意し、コンピュータに上記プログラムを読み取らせる。コンピュータは、読み取ったプログラムに従って自身の動作を制御することにより、自コンピュータ上に、スキーマ読込み部１１０、ターゲットスキーマ変形部１２０、制御部１３０及び表示制御部１４０を実現する。
【００４３】
データマッピング装置２００は、オリジナルターゲットスキーマ１５１及びターゲットスキーマ変形情報１５２によって示される、変形によって単純化されたＸＭＬスキーマと変換元ＸＭＬスキーマ２０１との項目間のデータマッピングをディスプレイ画面上で利用者に定義させ、この定義に従ったデータマッピング情報２０２を外部に出力する。
【００４４】
〔第１の実施の形態の動作の説明〕
次に、本発明の実施例の動作について詳細に説明する。
【００４５】
ユーザは、汎用的に設計されている変換先ＸＭＬスキーマ１７０を、実際のシステムで使用しているＸＭＬデータの構造に合ったものに変形する場合、先ず、入力装置３０１から制御部１３０に対して、変換先ＸＭＬスキーマ１７０が格納されているファイルのファイル名を含んだ読み込み指示を入力する。これにより、制御部１３０は、スキーマ読込み部１１０に対して上記ファイル名を渡し、スキーマ読込み部１１０は該当するファイルから変換先ＸＭＬスキーマ１７０を読み込み、それをオリジナルターゲットスキーマ１５１として記憶装置１５０に格納すると共に、ターゲットスキーマ変形情報１５２を空の状態に初期化する（図２のステップＳ２１）。
【００４６】
スキーマ読込み部１１０の処理が完了すると、制御部１３０は、表示制御部１４０を起動する。これにより、表示制御部１４０は、オリジナルターゲットスキーマ１５１及びターゲットスキーマ変形情報１５２に従って図３に示すようなターゲットスキーマ４０１をディスプレイ装置３０２に表示する（ステップＳ２２）。
【００４７】
ユーザは、ターゲットスキーマ４０１が表示されると、入力装置３０１を用いてターゲットスキーマ４０１のどの範囲を変形対象範囲にするのかを指定し、その後、変形開始を指示する。これにより、制御部１３０は、ターゲットスキーマ変形部１２０に対して、変形対象範囲を渡し、変形開始を指示する（ステップＳ２３）。
【００４８】
ターゲットスキーマ変形部１２０内のスキーマ変形制御部１２１は、変形開始が指示されると、表示制御部１４０を制御してディスプレイ装置３０２上に、変形対象範囲を含んだ図３に示すような変形操作用ダイアログ４０２を表示する（ステップＳ２４）。
【００４９】
ユーザは、変形操作用ダイアログ４０２が表示されると、そこに表示されているスキーマ項目の中から変形対象にするスキーマ項目を指定する（ステップＳ２５）。
【００５０】
これにより、スキーマ変形制御部１２１は、ユーザによって指定されたスキーマ項目に対して可能な変形操作の種類と、その変形内容の候補とを決定する（ステップＳ２６）。このステップＳ２６の処理を詳しく説明すると次のようになる。
【００５１】
スキーマ変形制御部１２１は、その内部に、より厳しい制約に変形可能な出現回数の制約（絞込み可能制約）と、変形可能なより厳しい出現回数の制約（変形内容候補）とが対応付けて登録された、図４に示すような出現回数絞込みテーブルＴ１２３を備えており、ユーザによって指定されたスキーマ項目中の出現回数の制約が出現回数絞込みテーブルＴ１２３に絞込み可能制約として登録されている場合には、出現回数の絞込みが可能であると判定すると共に、ユーザによって指定されたスキーマ項目中の出現回数制約に対応付けて登録されている制約を変形内容の候補と決定する。例えば、ユーザが指定したスキーマ項目中に出現回数の制約として「0..*」が含まれており、出現回数絞込みテーブルＴ１２３の内容が図４に示すものである場合は、出現回数の絞込みが可能であると判定すると共に、変形内容の候補を「0..0」「0..1」「1..1」「1..*」とする。
【００５２】
また、スキーマ変形制御部１２１は、その内部に、派生型に変形可能な型（変形可能型）と、その派生型（変形内容候補）とが対応付けて登録された、図５に示すような派生クラス絞込みテーブルＴ１２４を備えており、ユーザによって指定されたスキーマ項目の型が派生クラス絞込みテーブルＴ１２４に変形可能型として登録されている場合には、派生クラスの絞込みが可能であると判定すると共に、ユーザによって指定されたスキーマ項目の型に対応付けて登録されている派生型を変形内容の候補と決定する。例えば、ユーザが指定したスキーマ項目の型がintegerであり、派生クラス絞込みテーブルＴ１２４の内容が図５に示すものである場合は、派生クラスの絞込みが可能であると判定すると共に、変形内容の候補を「short」「byte」と決定する。
【００５３】
また、スキーマ変形制御部１２１は、ユーザによって指定されたスキーマ項目に（Ａ｜Ｂ｜Ｃ）等に選択に関する制約が含まれている場合は、選択項目の絞込みが可能であると判定すると共に、予め定められている規則に基づいて変形内容の候補を決定する。例えば、ユーザによって指定されたスキーマ項目が（Ａ｜Ｂ｜Ｃ）となっていた場合、スキーマ変形制御部１２１は、選択項目の絞込みが可能であると判定すると共に、（Ａ｜Ｂ）, （Ａ｜Ｃ）, （Ｂ｜Ｃ）, (Ａ), (Ｂ), (Ｃ)を変形内容の候補と決定する。また、ユーザによって指定されたスキーマ項目の型が派生の型をいくつか持っていて、そこに派生の型のＸＭＬが出現することが許されている場合、これは項目の選択であると考えることができる。この場合も、派生の型のサブセットに変形することができる。例えば、ユーザによって指定されたスキーマ項目がATypeという型であり、ATypeには派生型としてXType, YType, ZTypeの３種類が存在する場合、Atypeは、(XType｜YType｜ZType)であると同等であると考えることができるので、スキーマ変形制御部１２１は、選択項目の絞込みが可能であると判定すると共に、(XType｜YType), (YType｜ZType),(ZType｜XType), (XType), (YType), (ZType)を変形内容の候補とする。
【００５４】
また、スキーマ変形制御部１２１は、ユーザによって指定されたスキーマ項目に対して、その出現回数の幅が２以上あるような繰り返しの制約が課されている場合に、繰り返し項目の分解が可能であると判定すると共に、予め定められている規則に従って変形内容の候補を決定する。図６を参照すると、ユーザによって指定されたスキーマ項目が、（Ａ＊）となっていた場合（０回以上のＡの繰り返しとなっていた場合)、繰り返し項目の分解が可能であると判定すると共に、変形内容の候補を(Ａ, Ａ＊)、（Ａ＊，Ａ＊）と決定する。即ち、変形内容の候補を（１個のＡとそれに続く０回以上のＡの繰り返し）、（０回以上のＡの繰り返しとそれに続く０回以上のＡの繰り返し）と決定する。また、例えば、ユーザが指定したスキーマ項目が（Ａ＋）となっていた場合（１回以上のＡの繰り返しとなっていた場合）、繰り返し項目の分解が可能であると判定すると共に、変形内容の候補を（Ａ，Ａ＋）、（Ａ，Ａ＊）と決定する。
【００５５】
また、スキーマ変形制御部１２１は、ユーザによって指定されたスキーマ項目に関する差分情報がターゲットスキーマ変形情報１５２に含まれている場合、オリジナルスキーマへの復元があると判定すると共に、変形内容の候補をユーザによって指定されたスキーマ項目に関する差分情報と決定する。
【００５６】
以上が、ステップＳ２６で行われる処理の詳細である。ステップＳ２６の処理が完了すると、スキーマ変形制御部１２１は、ステップＳ２６で決定した可能な変形の種類が載った、図３に示すような操作一覧メニュー４０３をディスプレイ装置３０２に表示する（ステップＳ２７）。
【００５７】
ユーザは、操作一覧メニュー４０３が表示されると、表示されている変形操作の中から適用したい変形操作を選択する（ステップＳ２８）。これにより、スキーマ変形制御部１２１は、選択された変形操作に対する変形内容の候補が載った、図３に示すような変形内容候補４０４をディスプレイ装置３０２に表示する（ステップＳ３９）。
【００５８】
ユーザは、変形内容候補４０４が表示されると、その中から変形内容を１つ選択する（ステップＳ３０）。
【００５９】
これにより、スキーマ変形制御部１２１は、ユーザによって選択された変形操作の種類と変形内容とを含むスキーマ変形操作情報１６１を生成し、手段１２３〜１２７の内の該当する手段に渡す（ステップＳ３１）。なお、前述したように、本実施の形態では、スキーマ変形操作情報１６１を記憶装置１６０に保存することにより、該当する手段にスキーマ変形操作情報１６１を渡すようにしている。
【００６０】
記憶装置１６０にスキーマ変形操作情報１６１が格納されると、それに含まれている変形操作の種類に基づいて、手段１２３〜１２７の内の該当する手段が、ユーザによって指定されているスキーマ項目に対して、ユーザによって選択された変形内容に従った変形を行うべく、変形前後の差分情報をターゲットスキーマ変形情報１５２に格納する（ステップＳ３２）。但し、オリジナルスキーマへの復元手段１２７が該当する手段となった場合には、ターゲットスキーマ変形情報１５２に含まれている差分情報の内の、ユーザによって指定されたスキーマ項目に関する差分情報を、新しいものから順に、変形内容によって指示されている差分情報まで削除する。
【００６１】
その後、ユーザによって変形開始が指示されると（ステップＳ２３）、前述した処理と同様の処理が再び行われる。
【００６２】
次に、具体例を挙げて、出現回数絞込み時、派生クラス絞込み時、選択項目絞込み時、繰り返し項目分解時、およびオリジナルスキーマへの復元時の動作を説明する。
【００６３】
〔出現回数絞込み時の動作〕
今、例えば、図７に示すようなターゲットスキーマ４０１、変形操作用ダイアログ４０２がディスプレイ装置３０２に表示されている状態において、ユーザがスキーマ項目（Ａ，Ｂ）＊を指定したとすると（ステップＳ２５）、スキーマ変形制御部１２１は、出現回数の絞込みが可能であると判定し、可能な変形の種類として「出現回数絞込み」が載った操作一覧メニュー４０３を表示する。その後、ユーザが操作一覧メニュー４０３から出現回数絞込みを選択すると（ステップＳ２８）、出現回数絞込みテーブルＴ１２３（図４参照）に基づいて、スキーマ変形制御部１２１は、「0..0」「0..1」「1..1」「1..*」が載った変形内容候補４０４をディスプレイ装置３０２に表示する（ステップＳ２９）。そして、ユーザが、例えば、「1..1」を選択すると（ステップＳ３０）、変形操作の種類「出現回数絞込み」及び変形内容「1..１」を含んだスキーマ変形操作情報１６１を記憶装置１６０に保存する（ステップＳ３１）。これにより、出現回数絞込み手段１２３が、ユーザによって指定されたスキーマ項目を変形内容「1..1」に従って変更すべく、変形前後の差分情報をターゲットスキーマ変形情報１５２に追加する（ステップＳ３２）。
【００６４】
上記した処理が行われると、ディスプレイ装置３０２に表示されているターゲットスキーマ４０１には、図８に示すように、出現回数が「0..*」から「1..1」に変形されたことを示す記述(1..1)が追加される。その後、ユーザ変形開始を指示すると（ステップＳ２３）、図８に示すように、出現回数が「0..*」から「1..1」に変形されたことを示す記述(1..1）が追加された変形操作用ダイアログ４０２がディスプレイ装置３０２に表示される（ステップＳ２４）。その後、ユーザがスキーマ項目（Ａ，Ｂ）＊を選択すると、スキーマ変形制御部１２１は、変形後のスキーマ項目ではなく、変形前のオリジナルのスキーマ項目が選択されたと見なして図７に示した操作一覧メニュー４０３と同様の操作一覧メニュー４０３をディスプレイ装置３０２に表示し（ステップＳ２７）、更に、ユーザが操作一覧メニュー４０３中の出現回数絞込みを選択すると（ステップＳ２８）、変形後のスキーマ項目ではなく、変形前のオリジナルのスキーマ項目が選択されたと見なし、図７に示した変形内容候補４０４と同一の変形内容候補４０４をディスプレイ装置３０２に表示する（ステップＳ２９）。これ以後の処理は、前述した通りである。
【００６５】
〔派生クラス絞込み時の動作〕
スキーマ変形制御部１２１は、図９に示すような操作一覧メニュー４０３がディスプレイ装置３０２に表示されているときに、ユーザによって変形操作の種類「派生クラス絞込み」が選択されると、例えば、変形内容の候補として「short」「byte」が載った変形内容候補４０４を表示する（ステップＳ２９）。その後、ユーザが変形内容「byte」を選択すると（ステップＳ３０）、スキーマ変形制御部１２１は、変形操作の種類「派生クラス絞込み」及び変形内容「byte」を含んだスキーマ変形操作情報１６１を記憶装置１６０に格納し（ステップＳ３１）、派生クラス絞込み手段１２４が変形前後の差分情報をターゲットスキーマ変形情報１５２に追加する（ステップＳ３２）。
【００６６】
〔選択項目絞込み時の動作〕
今、図１０に示すようなターゲットスキーマ４０１Ｂがディスプレイ装置３０２に表示されているとする。すなわち、オリジナルターゲットスキーマに対して、すでに選択項目絞込み手段１２５が適用されて（Ａ｜Ｂ）に変形されている状態であるとする。なお、オリジナルターゲットスキーマは、（Ａ｜Ｂ｜Ｃ）であるとする。このとき表示制御部１４０は、変形が行われたスキーマであることを示す記述（｜modified）をディスプレイ装置３０２に表示する。また、Ｃは表示しない。この状態において、ユーザが、変形開始を指示すると（ステップＳ２３）、スキーマ変形制御部１２１は、同図に示すような変形操作用ダイアログ４０２Ｂをディスプレイ装置３０２に表示する（ステップＳ２４）。ここでは、選択されていない項目Ｃも括弧付きで表示される。その後、ユーザが、変形操作用ダイアログ４０２Ｂ上で、Ａ，Ｂ，Ｃのいずれかの項目を選択すると、同図に示すような操作一覧メニュー４０３Ｂが表示される（ステップＳ２７）。そして、ユーザが操作一覧メニュー４０３Ｂ上で、選択項目絞込みを選択すると、スキーマ変形制御部１２１は、変形内容として「on」「off」が載った変形内容候補４０４Ｂをディスプレイ装置３０２に表示する（ステップＳ２９）。変形内容候補４０４Ｂが表示されると、ユーザは、onまたはoffを選択する（ステップＳ３０）。これにより、スキーマ変形制御部１２１は、種類「選択項目絞込み」と変形内容（onまたはoff）を含んだスキーマ変形操作情報１６１を選択項目絞込み手段１２５に渡す（ステップＳ３１）。これにより、選択項目絞込み手段１２５は、変形前後の差分情報をターゲットスキーマ変形情報１５２に格納する（ステップＳ３２）。
【００６７】
〔繰り返し項目分解時の動作〕
図１１を参照すると、オリジナルターゲットスキーマ１５１のある項目Ａが、Ａ＊となっていた場合(すなわち0回以上のＡの繰り返しとなっていた場合)、(Ａ, Ａ＊)と分解することができる（すなわち１個のＡとそれにつづく０回以上のＡの繰り返しに分解することができる)。スキーマ変形制御部１２１は、オリジナルターゲットスキーマ１５１に対してこれらの変形が可能であることをユーザに提示する。さらに、繰り返し項目分解手段１２６は、他の変形手段である出現回数絞込み手段１２３、派生クラス絞込み手段１２４、選択項目絞込み手段１２５、そして繰り返し項目分解手段１２６自身を組み合わせて適用することができる。図１１を参照すると、オリジナルターゲットスキーマ１５１の項目（Ａ＊）は、繰り返し項目分解手段１２６をまず適用して（Ａ，Ａ＊）に変形することができる。さらにこの変形の結果に繰り返し項目分解手段１２６を再度適用することで、（Ａ，Ａ，Ａ＊）に分解することができる。さらにもう一度繰り返し項目分解手段１２６を適用することで、（Ａ，Ａ，Ａ，Ａ＊）に変形することができる。さらにこの結果のＡ＊の部分に出現回数絞込み手段１２３を適用することで（Ａ，Ａ，Ａ）に変形することができる。このように、各種変形手段は、オリジナルターゲットスキーマ１５１に元々あった項目の他に、繰り返し項目分解手段１２６による分解によって生じた項目に対しても適用することができ、スキーマ変形制御部１２１はそのような変形についてもユーザに変形可能であるものとして提示する。また、出現回数絞込み手段１２３の適用結果がさらに繰り返し項目分解手段１２６によって分解可能な場合についても、スキーマ変形制御部１２１は利用者に分解操作が可能であることを提示する。
【００６８】
具体的には、これは図１２のようなユーザインタフェースによって実現される。すなわち、オリジナルターゲットスキーマ１５１がＡ＊であるとき、すでにこれに繰り返し項目分解手段１２６が適用されて（Ａ，Ａ＊）に変形されている状態であるとする。このとき表示制御手段１４０は、変形が行われたスキーマであることを示す記述()modifiedを含んだターゲットスキーマ４０１Ｃをディスプレイ装置に表示し、変形結果の構造を表示する。ユーザが、変形開始を指示すると（ステップＳ２３）、変形操作用ダイアログ４０２Ｃが表示される。ここで変形によって生じた＊項目をクリックして操作一覧メニュー４０３Ｃを開くと（ステップＳ２７）、可能な繰り返し項目分解操作が変形内容候補４０４Ｃとして表示される（ステップＳ２９）。ユーザがこの中から「X, X*に分解」を選択すると、変形操作用ダイアログ４０２Ｃは４０２Ｃ２のように表示が変わり、ターゲットスキーマ変形情報１５２もそれに応じて更新される(ステップＳ３２)。
【００６９】
〔オリジナルスキーマへの復元時の動作〕
オリジナルスキーマへの復元手段１２７は、オリジナルターゲットスキーマ１５１に対して、出現回数絞込み手段１２３、派生クラス絞込み手段１２４、選択項目絞込み手段１２５、繰り返し項目分解手段１２６、およびこれらの組み合わせを適用した後、オリジナルターゲットスキーマ１５１の状態に戻すような変換手段である。ターゲットスキーマ変形情報１５２に蓄積されたそれまでの変形の情報（差分情報）を参照することにより、復元の内容が決まる。
【００７０】
図１３を参照すると、オリジナルターゲットスキーマ１５１が(A*)の場合、(A*)→(A, A*)→(A, A, A*)→(A, A, A, A*)→(A, A, A)と変形するに従ってターゲットスキーマ変形情報１５２が更新される。状態５０２、状態５０３、状態５０４にあるときはオリジナルスキーマへの復元手段１２７は、オリジナルのときの状態５０１に変形操作を戻すことができる。状態５０５にあるとき、すなわち分解操作に対して出現回数絞込み手段１２３、派生クラス絞込み手段１２４、選択項目絞込み手段１２５のいずれかが適用されている状態のときは、それらの適用を部分的に元に戻して状態５０４にまで復元することができる。また、オリジナルターゲットスキーマ１５１である状態５０１に戻すこともできる。
【００７１】
具体的なユーザインタフェースとしては、変形操作用ダイアログ上で復元可能な状態にある項目を選択してメニューを開くと、どこまで戻すかを指定するサブアイテムがさらに一覧表示されるのでそれを選択することでオリジナルターゲットスキーマ１５１への復元を行う。
【００７２】
以上が、ＸＭＬスキーマ編集支援装置１００の動作である。
【００７３】
ユーザは、汎用的に設計されている変換先ＸＭＬスキーマ１７０を、ＸＭＬスキーマ編集支援装置１００を用いて実際のシステムで使用しているＸＭＬデータの構造に合ったものに変形すると、データマッピング装置２００を起動する。
【００７４】
データマッピング装置２００は、起動されると、オリジナルターゲットスキーマ１５１およびターゲットスキーマ変形情報１５２によって示される変換後の変換先ＸＭＬスキーマと、変換元ＸＭＬスキーマ２０１とをディスプレイ装置３０２に表示する。その際、データマッピング装置２００は、出現回数が0..0になっているスキーマ項目は表示しない。ユーザは、変換元ＸＭＬスキーマ２０１および変換先ＸＭＬスキーマがディスプレイ装置３０２に表示されると、スキーマ項目の対応付け操作を行い、データマッピング装置２００は、ユーザが行う対応付け操作に従ってデータマッピング情報２０２を生成する。そして、ユーザによってチェック指示が入力されると、データマッピング装置２００は、変換先ＸＭＬスキーマに、マッピングが行われていない出現回数が1..1のスキーマ項目が存在するか否かを調べ、もし、そのようなスキーマ項目がある場合には、ディスプレイ装置３０２に「マッピングされていない出現回数1..1のスキーマ項目があります」等の警告メッセージを表示する。
【００７５】
〔第１の実施の形態の効果〕
本実施の形態によれば、次のような効果を得ることができる。
【００７６】
第１の効果は、汎用的に設計されたオリジナルターゲットスキーマ１５１を、操作性良く、システムにおいて実際に使用されているＸＭＬデータの構造に合ったものに変形することが可能になるという点である。
【００７７】
その理由は、オリジナルターゲットスキーマ１５１中のユーザによって指定されたスキーマ項目が、より厳しい制約に変形可能な場合、可能な変形の種類及びその変形内容の候補をユーザに提示するスキーマ変形制御部１２１を備えているからである。即ち、ユーザは、スキーマ変形制御部１２１によって提示された変形の種類および変形内容の中から実際に実行する変形の種類および変形内容を選択するという操作を行うだけで良いので、操作性良くオリジナルターゲットスキーマ１５１を、実際のシステムで使用されているＸＭＬデータの構造に合ったものに変形することが可能になる。
【００７８】
第２の効果は、データマッピング用の画面が煩雑となってしまわないようにすることができるという点である。
【００７９】
その理由は、出現回数絞込み手段１２３によって出現回数が0..0に絞り込まれたスキーマ項目を、データマッピング装置２００が表示しないように構成されているためである。また、選択項目絞込み手段１２５によって出力する可能性のあるＸＭＬ項目を絞り込むことで、不要なデータ項目が表示されないようにすることができるからである。また、派生クラス絞込み手段１２４によってＸＭＬ項目を派生の型に絞り込むことで、項目を派生型が持つ項目に限定することができるからである。ここで、例えばW3CのXML Schema言語では、複雑な構造のＸＭＬを型として定義し、その構造に制約や拡張を加えるような形で、派生型を定義することができるようになっている。例えば、
<A>
<X>...</X>
<Y>...</Y>
</A>
というような<X>が来て次に<Y>が来るといった構造をATypeのような型として定義することができ(この場合要素<A>の型はAType型であるということになる）、その派生型として<Y>は出現せず<X>のみが出現するものと制約をかけたBtype型というものを定義することができる。派生クラス絞込み手段１２４では、このような制約を課す派生の関係を利用して、AType型であるタグをその派生型であるBtype型に絞り込ませることができる。すると、
<A>
<X>...</X>
</A>
という不要な構造と見做された<Y>を取り除いた、より単純化されたＸＭＬスキーマを表示することが可能になる。
【００８０】
第３の効果は、実際のシステムでは出力が必須であるとされるスキーマ項目が、オリジナルターゲットスキーマ１５１ではオプショナルなスキーマ項目（出現回数が0..1のスキーマ項目）として定義されている場合に、変換元ＸＭＬデータを変換先ＸＭＬデータに変換する変換処理プログラムに、不要な条件判定処理を書き加えることや、必須項目をデータマッピングし忘れるといったことが無いようにすることができるという点である。
【００８１】
その理由は、出現回数絞込み手段１２３によってスキーマ項目の出現回数を絞り込むことで、出現回数を1..1にし、データマッピング装置２００が不要な条件判定処理の記述を要求することがないように構成されているためである。また、データマッピング装置２００が、変換先ＸＭＬスキーマ中に、対応付けが行われていない、出現回数の制約が１回(1..1）になっているスキーマ項目が存在する場合、警告を発する構成を有しているからである。
【００８２】
第４の効果は、実際には固定回数のタグ出力を行えばよいのに、ＸＭＬスキーマでは任意回数のタグの繰り返しと定義されているために、固定回数の出力のための特別なプログラミングが要求され開発の手間やプログラムの複雑さが増大してしまうことがないようにすることができるという点である。
【００８３】
その理由は、繰り返し項目分解手段１２６と他の変形手段１２３〜１２５との組み合わせによってスキーマ項目の繰り返しを分解することで、固定回数の項目の並びにスキーマ項目を変形することができるためである。
【００８４】
第５の効果は、非決定的なＸＭＬスキーマが文法制約上許されないようなＸＭＬスキーマ言語で、その制約によりデータマッピングの出力のスキーマ表現が制限を受けることがないようにすることができるという点である。
【００８５】
その理由は、ＸＭＬスキーマ言語に沿って定義されたオリジナルターゲットスキーマ１５１に加えてターゲットスキーマ変形情報１５２を持つことにより、そのような制約を越えたスキーマ表現をデータマッピングのために提供することができるように構成されているためである。具体的には、繰り返し項目分解手段１２６は、(A*)を(A*, A*)に分解することができる。(A*, A*)という構造のスキーマは、入力データを検証するためのスキーマ記述としてはどちらのA＊に入力データ項目が適合するかを決定することができないため、ＸＭＬスキーマ言語によっては非決定的なスキーマとして文法上禁止されている。しかしながらＸＭＬを出力する場合はこの制約は不要なものであり、(A*, A*)のように分解することでデータマッピングを記述しやすくできる場合がある。例えば、（X*, Y*)というＸＭＬの構造を(A*)というＸＭＬの構造にマッピングする場合を考える。具体的には、
<X>100</X>
<X>200</X>
<Y>1000</Y>
<Y>1100</Y>
<Y>1200</Y>
のようなＸＭＬデータを
<A>1000</A>
<A>1100</A>
<A>1200</A>
<A>100</A>
<A>200</A>
のようにしたいと考えたとき、ターゲットを(A*)から(A*, A*)に変形することにより、X*を分解した２つ目のA*にマッピング、Y*を分解した１つ目のA*にマッピングというように、自然にどちらをどういう順番で出力すればよいのかということを含めたマッピングを自然に表現することができるようになる。
【００８６】
〔第２の実施の形態〕
次に、本発明の第２の実施の形態について説明する。本実施の形態は、データマッピング装置でデータマッピング処理を行っている最中に、変換先ＸＭＬスキーマを変形できるようにしたことを特徴とする。
【００８７】
〔第２の実施の形態の構成の説明〕
図１４は本発明の第２の実施の形態の構成例を示すブロック図であり、図１に示した第１の実施の形態との相違点は、ＸＭＬスキーマ編集支援装置１００およびデータマッピング装置２００の代わりに、ＸＭＬスキーマ編集支援装置１００ａおよびデータマッピング装置２００ａを備えている点である。
【００８８】
ＸＭＬスキーマ編集支援装置１００ａは、制御部１３０を備えていない点がＸＭＬスキーマ編集支援装置１００と相違し、データマッピング装置２００ａは、制御部２０３を備えている点がデータマッピング装置２００と相違している。制御部２０３は、入力装置３０１を介して入力されるユーザからの指示に従って、ＸＭＬスキーマ編集支援装置１００ａ内のスキーマ読込み部１１０、ターゲットスキーマ変形部１２０および表示制御部１４０を呼び出す機能を備えている。
【００８９】
なお、本実施の形態においても、ＸＭＬスキーマ編集支援装置１００ａは、コンピュータによって実現可能であり、コンピュータによって実現する場合には、例えば次のようにする。コンピュータをＸＭＬスキーマ編集支援装置１００ａとして機能させるためのプログラムを記録したディスク、半導体メモリ、その他の記録媒体を用意し、コンピュータに上記プログラムを読み取らせる。コンピュータは、読み取ったプログラムに従って自身の動作を制御することにより、自コンピュータ上に、スキーマ読込み部１１０、ターゲットスキーマ変形部１２０及び表示制御部１４０を実現する。
【００９０】
〔第２の実施の形態の動作の説明〕
データマッピング装置２００ａは、起動されると、図１５のフローチャートに示すように変換元ＸＭＬスキーマ２０１および変換先ＸＭＬスキーマを、それぞれディスプレイ装置３０２の表示画面の右半分、左半分に表示する（ステップＳ１５１）。より具体的には、データマッピング装置２００ａ内の制御部２０３は、先ず、スキーマ読込み部１００を呼び出し、変換先ＸＭＬスキーマ１７０をオリジナルターゲットスキーマ１５１として記憶装置１５０に格納させると共に、ターゲットスキーマ変形情報１５２を空の状態に初期化させる。その後、制御部２０３は、表示制御部１４０に変換元ＸＭＬスキーマ２０１を渡してそれを画面の右半分に表示することを指示すると共に、オリジナルターゲットスキーマ１５１およびターゲットスキーマ変形情報１５２に基づいた変換先ＸＭＬスキーマを画面の左半分に表示することを指示する。
【００９１】
その後、データマッピング装置２００ａは、入力装置３０１を介してデータマッピングの指示が入力されると（ステップＳ１５３がＹＥＳ）、周知のデータマッピング処理を行う（ステップＳ１５４）。また、入力装置３０１を介してＸＭＬスキーマの変換開始が指示された場合（ステップＳ１５２がＹＥＳ）は、図２のステップＳ２３〜Ｓ３２と同様の処理を行う（ステップＳ１５５）。
【００９２】
〔第２の実施の形態の効果〕
本実施の形態によれば、第１の実施の形態の効果に加え、データマッピング装置２００ａでデータマッピング処理を行っている最中に、汎用的に設計されているオリジナルターゲットスキーマ１５１を、実際のシステムで使用しているＸＭＬデータの構造に合ったものに変形することができるという効果を得ることができる。その理由は、データマッピング装置２００ａが、スキーマ読込み部１１０、ターゲットスキーマ変形部１２０および表示制御部１４０を呼び出す制御部２０３を備えているからである。
【産業上の利用可能性】
【００９３】
本発明によれば、企業間電子商取引において社内で利用されるデータ項目名と、業界で標準的に利用される業界標準語彙との間でのデータマッピングを作成するといった用途に適用できる。
【図面の簡単な説明】
【００９４】
【図１】本発明の第１の実施の形態の構成例を示すブロック図である。
【図２】第１の実施の形態の処理例を示すフローチャートである。
【図３】スキーマ変形制御部１２１の動作を説明するための図である。
【図４】出現回数絞込みテーブルＴ１２３の一例を示す図である。
【図５】派生クラス絞りテーブルＴ１２４の一例を示す図である。
【図６】繰り返し項目の分解を説明するための図である。
【図７】出現回数絞込み時の動作を説明するための図である。
【図８】出現回数絞込み時の動作を説明するための図である。
【図９】派生クラス絞込み時の動作を説明するための図である。
【図１０】選択項目絞込み時の動作を説明するための図である。
【図１１】繰り返し項目分解手段１２６と他の手段との組み合わせを説明するための図である。
【図１２】繰り返し項目分解時の動作を説明するための図である。
【図１３】オリジナルスキーマへの復元時の動作を説明するための図である。
【図１４】本発明の第２の実施の形態の構成例を示すブロック図である。
【図１５】第２の実施の形態の処理例を示すフローチャートである。
【図１６】従来の技術を説明するためのブロック図である。
【符号の説明】
【００９５】
１００、１００ａ…ＸＭＬスキーマ編集支援装置
１１０…スキーマ読込み部
１２０…ターゲットスキーマ変形部
１２１…スキーマ変形制御部
１２２…変形手段群
１２３…出現回数絞込み手段
１２４…派生クラス絞込み手段
１２５…選択項目絞込み手段
１２６…繰り返し項目分解手段
１２７…オリジナルスキーマへの復元手段
１３０…制御部
１４０…表示制御部
１５０…記憶装置
１５１…オリジナルターゲットスキーマ
１５２…ターゲットスキーマ変形情報
１６０…記憶装置
１６１…スキーマ変形操作情報
１７０…変換先ＸＭＬスキーマ
２００、２００ａ…データマッピング装置
２０１…変形元ＸＭＬスキーマ
２０２…データマッピング情報
２０３…制御部
３０１…入力装置
３０２…ディスプレイ装置
６００…変換処理プログラム
６０１…変換元ＸＭＬデータ
６０２…変換先ＸＭＬデータ
７００…データマッピング装置
７０１…入力装置
７０２…ディスプレイ装置
７０３…変換元ＸＭＬスキーマ
７０４…変換先ＸＭＬスキーマ
【図１】
0004501886.tif 000002
【図２】
0004501886.tif 000003
【図３】
0004501886.tif 000004
【図４】
0004501886.tif 000005
【図５】
0004501886.tif 000006
【図６】
0004501886.tif 000007
【図７】
0004501886.tif 000008
【図８】
0004501886.tif 000009
【図９】
0004501886.tif 000010
【図１０】
0004501886.tif 000011
【図１１】
0004501886.tif 000012
【図１２】
0004501886.tif 000013
【図１３】
0004501886.tif 000014
【図１４】
0004501886.tif 000015
【図１５】
0004501886.tif 000016
【図１６】
0004501886.tif 000017