(57)【要約】【課題】  本発明は、構造化文書間の変換を正確かつ自動的に行うためのスタイルシート作成装置を提供することを目的とする。【解決手段】  前記第１及び第２構造化文書それぞれについてその構造を記述した第１及び第２スキーマファイルを解析するスキーマファイル解析手段２０２と、前記第１及び第２構造化文書間における項目の関連付けを記述した対応関係ファイルを読み込み、解析する対応関係ファイル解析手段２０１と、前記対応関係ファイルの解析結果及び前記スキーマファイルの解析結果に基づいて、前記第１構造化文書から前記第２構造化文書への変換パターンを決定する変換パターン決定手段２０３と、前記変換パターンに基づいて、前記第１及び第２構造化文書の異なる構造化文書間におけるデータ構造の変換を行うためのスタイルシートを出力するスタイルシート出力手段とを含むことを特徴とするスタイルシート作成装置を提供する。【選択図】      図２
2005352945.tif 000002
【特許請求の範囲】
【請求項１】
データ構造の異なる第１及び第２構造化文書間においてデータ構造の変換を行うためのスタイルシート作成装置であって、
前記第１及び第２構造化文書それぞれについてその構造を記述した第１及び第２スキーマファイルを解析するスキーマファイル解析手段と、
各構造化文書に含まれる情報単位である項目について、前記第１及び第２構造化文書間におけるその関連付けを記述した対応関係ファイルを読み込み、前記項目の対応関係を解析する対応関係ファイル解析手段と、
前記対応関係ファイルの解析結果及び前記スキーマファイルの解析結果に基づいて、前記第１構造化文書から前記第２構造化文書への変換パターンを決定する変換パターン決定手段と、
前記変換パターンに基づいて、前記第１及び第２構造化文書の異なる構造化文書間におけるデータ構造の変換を行うためのスタイルシートを出力するスタイルシート出力手段と、
を含むことを特徴とするスタイルシート作成装置。
【請求項２】
前記スキーマファイル解析手段は、前記対応関係ファイル解析手段において前記第１及び第２構造化文書間の対応関係が解析された項目を、前記第１及び第２スキーマファイルから抽出し、抽出した項目の情報を解析することを特徴とする請求項１に記載のスタイルシート作成装置。
【請求項３】
前記項目の情報とは、前記項目の種類及び／または項目の階層構造であることを特徴とする請求項２に記載のスタイルシート作成装置。
【請求項４】
前記項目の種類は、要素、属性、要素値及び／または属性値が含まれることを特徴とする請求項３に記載のスタイルシート作成装置。
【請求項５】
前記対応関係ファイルは、ＯＷＬ（Ｗｅｂ  Ｏｎｔｏｌｏｇｙ  Ｌａｎｇｕａｇｅ）により記述されたオントロジーファイルであることを特徴とする請求項１に記載のスタイルシート作成装置。
【請求項６】
前記スキーマファイル解析手段は、前記対応関係ファイル解析手段において前記第１及び第２構造化文書間の対応関係が解析された項目を、前記第１及び第２スキーマファイルから抽出し、その情報を解析し、
前記変換パターン決定手段は、抽出された項目の対応関係を項目の情報の対応関係に置換することにより変換パターンを項目毎に決定することを特徴とする請求項１に記載のスタイルシート作成装置。
【請求項７】
前記変換パターン決定手段は、前記第２構造化文書から前記第１構造化文書への変換パターンをさらに決定することを特徴とする請求項１に記載のスタイルシート作成装置。
【請求項８】
前記スタイルシート出力手段は、
前記第１構造化文書の項目から前記第２構造化文書の項目への変換パターンを所定のスタイルシート言語で定義するテンプレートを、変換パターン毎に記憶している変換パターン蓄積手段と、
前記変換パターン決定手段が決定した各変換パターンに対応するテンプレートを前記変換パターン蓄積手段から抽出し、抽出したテンプレートに基づいて前記スタイルシートに前記スタイルシート言語で前記変換パターンを記述するテンプレート記述手段と、
を有することを特徴とする請求項１に記載のスタイルシート作成装置。
【請求項９】
前記変換パターン蓄積手段は、項目の情報の変換パターンを定義するテンプレートを記憶していることを特徴とする請求項８に記載のスタイルシート作成装置。
【請求項１０】
前記構造化文書はＸＭＬ（eXtensible Markup Language）文書であり、前記スキーマファイルはＸＭＬスキーマファイルであり、前記スタイルシートはＸＳＬＴ（XML Stylesheet Language Transformations）ファイルであることを特徴とする請求項１に記載のスタイルシート作成装置。
【請求項１１】
データ構造の異なる第１及び第２構造化文書間においてデータ構造の変換を行うためのスタイルシート作成方法であって、
前記第１及び第２構造化文書それぞれについてその構造を記述した第１及び第２スキーマファイルを解析するスキーマファイル解析ステップと、
各構造化文書に含まれる情報単位である項目について、前記第１及び第２構造化文書間におけるその関連付けを記述した対応関係ファイルを読み込み、前記項目の対応関係を解析する対応関係ファイル解析ステップと、
前記対応関係ファイルの解析結果及び前記スキーマファイルの解析結果に基づいて、前記第１構造化文書から前記第２構造化文書への変換パターンを決定する変換パターン決定ステップと、
前記変換パターンに基づいて、前記第１及び第２構造化文書の異なる構造化文書間におけるデータ構造の変換を行うためのスタイルシートを出力するスタイルシート出力ステップと、
を含むことを特徴とするスタイルシート作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ構造の異なる構造化文書間においてデータ構造の変換を行うためのスタイルシート作成装置に関するものである。
【背景技術】
【０００２】
近年、インターネットやデジタル放送の普及により、コンテンツの数が爆発的に増加している。これら多くのコンテンツの中から、所望のコンテンツの内容把握や検索を容易に行うために、コンテンツに様々なメタデータを付加するケースが増加してきている。また、メタデータは、コンピュータ同士のデータ送受信やインターネットとの親和性を考慮し、例えばメタ言語であるＸＭＬ（eXtensible Markup Language）により記述されている。このＸＭＬ等の記述のデータ構造は様々な団体により策定されている。また、メタ言語のデータ構造は、メタデータが付加されるコンテンツの種類や、メタデータを利用する目的に応じて異なる。よって、コンテンツに適合させてメタデータに基づいたＸＭＬ文書を作成しても、他の用途にコンテンツを利用する場合には、他の用途に適合するデータ構造のＸＭＬ文書を新たに作成する必要がある。新たに作成するＸＭＬ文書は、すでに作成されているＸＭＬ文書を利用して作成するのが有効であるため、ＸＭＬ文書のデータ構造の変換が行われる。ここで、ＸＭＬ文書間のデータ構造を変換する場合、ＸＭＬ文書に対してＸＳＬＴ（XML Stylesheet Language Transformations）変換を行う。このとき、どのような変換を行うかを指定するスタイルシートとしてＸＳＬＴファイルが作成される。
【０００３】
特許文献１では、構造化文書を変換するための部品が、ＧＵＩ（Graphical User Interface）を用いてメタデータの制作者に提示される。ここで、部品とは、変換ルールを記述したフォーム記述を部品化したものである。また、フォーム記述とは、構造化文書を表示装置に整った体裁で表示する形式に変換するための制御ルールを記述したものである。制作者が提示された部品から所望の部品を選択すると、部品が組み合わされてＸＳＬＴファイルが形成される。よって、ＸＳＬＴに関する知識を持たない人でも、容易にＸＳＬＴファイルを作成することができる。
【０００４】
また、特許文献２では、変換対象のＸＭＬ文書のＸＭＬスキーマを全てオントロジーモデルへ変換する。そして、変換されたオントロジーモデルによりＸＭＬ文書間の項目の対応関係を抽出し、自動的にＸＳＬＴファイルを作成している。
【特許文献１】特開２００３−３０３１８３号公報
【特許文献２】特開２００３−２３３５２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１では、ＸＭＬ文書を変換するために必要な部品を、ＸＭＬ文書の変換を行う制作者が人手で選択しなければならない。ここで、ＸＭＬ文書の変換は、ＸＭＬの構造変換を行う変換であるため、ＸＭＬ文書間の部品、つまり後述の項目の対応関係を考える必要がある。つまり、項目が、例えば「要素」「属性」「要素値」「属性値」のいずれであるかを考えて必要な部品を選択する必要がある。よって、ＸＳＬＴファイルを自動的に作成することができず、ＸＳＬＴファイルの作成にも時間がかかる。
【０００６】
また、特許文献２では、オントロジーモデルによりＸＭＬ文書間のタグの関係を抽出する際に、変換対象のＸＭＬ文書のＸＭＬスキーマを全てオントロジーモデルへ変換する必要がある。よって、意味的構造を記述していないＸＭＬスキーマ言語から意味的構造を記述するオントロジーに変換を行う際に、項目が有する情報の欠落や、情報の意味の変更などの問題が発生する。
【０００７】
そこで、本発明は、構造化文書間の変換を正確かつ自動的に行うためのスタイルシート作成装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本願第１発明は、上記の課題を解決するために、データ構造の異なる第１及び第２構造化文書間においてデータ構造の変換を行うためのスタイルシート作成装置であって、前記第１及び第２構造化文書それぞれについてその構造を記述した第１及び第２スキーマファイルを解析するスキーマファイル解析手段と、各構造化文書に含まれる情報単位である項目について、前記第１及び第２構造化文書間におけるその関連付けを記述した対応関係ファイルを読み込み、前記項目の対応関係を解析する対応関係ファイル解析手段と、前記対応関係ファイルの解析結果及び前記スキーマファイルの解析結果に基づいて、前記第１構造化文書から前記第２構造化文書への変換パターンを決定する変換パターン決定手段と、前記変換パターンに基づいて、前記第１及び第２構造化文書の異なる構造化文書間におけるデータ構造の変換を行うためのスタイルシートを出力するスタイルシート出力手段と、を含むことを特徴とするスタイルシート作成装置を提供する。
【０００９】
ここで、項目とは、例えば構造化文書において要素位置を明示し、属性を収納するためのタグである。上記のように、対応関係ファイルを利用することにより、スキーマファイルから自動的かつ効率的に項目を抽出することができる。また、対応関係ファイル解析手段により項目間の対応関係を解析し、スキーマファイル解析手段により項目間の階層構造及び種類を解析することで、第１構造化文書から第２構造化文書への変換パターンを項目ごとに決定することができる。例えば、構造化文書の項目の種類が「要素」と「属性」の２種類である場合、第１構造化文書の変換対象である項目ごとに、「要素」→「要素」、「要素」→「属性」、「属性」→「要素」などの変換パターンを決定することができる。よって、決定された変換パターンに基づいてスタイルシートを自動的、効率的かつ容易に作成することができる。
【００１０】
また、スタイルシートの作成は、スキーマファイルから対応関係ファイルのモデルへの変換を伴わずに、対応関係ファイル及びスキーマファイルの解析結果に基づいて行われる。そのため、変換に伴う項目の情報の欠落や情報の意味の変更などを防止することができる。
【００１１】
本願第２発明は、第１発明において、前記スキーマファイル解析手段は、前記対応関係ファイル解析手段において前記第１及び第２構造化文書間の対応関係が解析された項目を、前記第１及び第２スキーマファイルから抽出し、抽出した項目の情報を解析することを特徴とするスタイルシート作成装置を提供する。
【００１２】
対応関係ファイル解析手段が対応関係ファイルに基づいて解析した項目とは、すなわち変換対象となる項目である。第１及び第２スキーマファイルの項目のうち、変換対象の項目のみについて、項目の階層構造や種類を解析することにより、効率的にスタイルシートを作成することができる。
【００１３】
本願第３発明は、第２発明において、前記項目の情報とは、前記項目の種類及び／または項目の階層構造であることを特徴とするスタイルシート作成装置を提供する。
【００１４】
項目の階層構造を解析することにより、異なる階層構造を有する構造化文書間でも正確なデータ構造の変換が可能となる。また項目の種類を解析することにより、構造化文書間で項目の扱いが異なる場合でも正確なデータ構造の変換が可能となる。
【００１５】
本願第４発明は、第３発明において、前記項目の種類は、要素、属性、要素値及び／または属性値が含まれることを特徴とするスタイルシート作成装置を提供する。
【００１６】
本願第５発明は、第１発明において、前記対応関係ファイルは、ＯＷＬ（Ｗｅｂ  Ｏｎｔｏｌｏｇｙ  Ｌａｎｇｕａｇｅ）により記述されたオントロジーファイルであることを特徴とするスタイルシート作成装置を提供する。
【００１７】
項目の対応関係を記述した対応関係ファイルとしてオントロジーファイルを利用することにより、構造化文書間の項目の対応関係を効率的に検索することができる。また、インターネット上で利用されているオントロジーファイルを利用することにより、ＨＴＭＬ文書などの情報を映像データのメタデータに容易に変換することができる。
【００１８】
本願第６発明は、第１発明において、前記スキーマファイル解析手段は、前記対応関係ファイル解析手段において前記第１及び第２構造化文書間の対応関係が解析された項目を、前記第１及び第２スキーマファイルから抽出し、その情報を解析し、前記変換パターン決定手段は、抽出された項目の対応関係を項目の情報の対応関係に置換することにより変換パターンを項目毎に決定することを特徴とするスタイルシート作成装置を提供する。
【００１９】
対応関係ファイル解析手段は、例えば、第１構造化文書の項目１と第２構造化文書の項目２とが等しい（項目１→項目２）ことを解析する。また、スキーマファイル解析手段は、スキーマファイルの解析結果として例えば項目の種類を特定する。ここで、項目の種類とは、例えば「要素」、「属性」、「要素値」または「属性値」などのタグの内容である。例えば、項目１の種類が「要素」、項目２の種類が「属性」の場合は、対応関係ファイルから解析した対応関係（項目１→項目２）と各項目の種類とに基づいて、変換パターン決定手段は、「要素」→「属性」の変換パターンと決定する。このように、変換パターンの決定は、対応関係ファイル及びスキーマファイルの解析結果に基づいて、自動的かつ効率的に行われる。よって、第１構造化文書と第２構造化文書との間でデータ構造の変換を行うためのスタイルシートを、この変換パターンに基づいて自動的、効率的かつ容易に作成できる。また、スタイルシートの作成は、スキーマファイルから対応関係ファイルのモデルへの変換を伴わずに、対応関係ファイル及びスキーマファイルの解析結果に基づいて行われる。そのため、変換に伴う項目の情報の欠落や情報の意味の変更などを防止することができる。
【００２０】
本願第７発明は、第１発明において、前記変換パターン決定手段は、前記第２構造化文書から前記第１構造化文書への変換パターンをさらに決定することを特徴とするスタイルシート作成装置を提供する。
【００２１】
第１構造化文書から第２構造化文書への変換を行うスタイルシートだけでなく、第２構造化文書から第１構造化文書への変換を行うスタイルシートを作成することができる。
【００２２】
本願第８発明は、第１発明において、前記スタイルシート出力手段は、前記第１構造化文書の項目から前記第２構造化文書の項目への変換パターンを所定のスタイルシート言語で定義するテンプレートを、変換パターン毎に記憶している変換パターン蓄積手段と、前記変換パターン決定手段が決定した各変換パターンに対応するテンプレートを前記変換パターン蓄積手段から抽出し、抽出したテンプレートに基づいて前記スタイルシートに前記スタイルシート言語で前記変換パターンを記述するテンプレート記述手段とを有することを特徴とするスタイルシート作成装置を提供する。
【００２３】
第１構造化文書の項目から第２構造化文書の項目への変換パターンに応じたテンプレートを用いて、スタイルシート言語によるスタイルシートの作成を容易に行うことができる。
【００２４】
本願第９発明は、第８発明において、前記変換パターン蓄積手段は、項目の情報の変換パターンを定義するテンプレートを記憶していることを特徴とするスタイルシート作成装置を提供する。
【００２５】
構造化文書間で、項目の情報が異なる場合であっても正確にデータ構造を変換することができるスタイルシートを作成することができる。例えば、構造化文書間で階層構造が異なる場合や構造の種類が異なる場合であっても正確なデータ構造の変換が可能となる。
【００２６】
本願第１０発明は、第１発明において、前記構造化文書はＸＭＬ（eXtensible Markup Language）文書であり、前記スキーマファイルはＸＭＬスキーマファイルであり、前記スタイルシートはＸＳＬＴ（XML Stylesheet Language Transformations）ファイルであることを特徴とするスタイルシート作成装置を提供する。
【００２７】
本願第１１発明は、データ構造の異なる第１及び第２構造化文書間においてデータ構造の変換を行うためのスタイルシート作成方法であって、前記第１及び第２構造化文書それぞれについてその構造を記述した第１及び第２スキーマファイルを解析するスキーマファイル解析ステップと、各構造化文書に含まれる情報単位である項目について、前記第１及び第２構造化文書間におけるその関連付けを記述した対応関係ファイルを読み込み、前記項目の対応関係を解析する対応関係ファイル解析ステップと、前記対応関係ファイルの解析結果及び前記スキーマファイルの解析結果に基づいて、前記第１構造化文書から前記第２構造化文書への変換パターンを決定する変換パターン決定ステップと、前記変換パターンに基づいて、前記第１及び第２構造化文書の異なる構造化文書間におけるデータ構造の変換を行うためのスタイルシートを出力するスタイルシート出力ステップとを含むことを特徴とするスタイルシート作成方法を提供する。
【発明の効果】
【００２８】
構造化文書間の項目の対応関係を記述した対応関係ファイルを利用することにより、スタイルシートを自動的、効率的かつ容易に作成することができる。また、スタイルシートの作成は、スキーマファイルから対応関係ファイルのモデルへの変換を伴わずに、対応関係ファイル及びスキーマファイルの解析結果に基づいて行われる。そのため、変換に伴う項目の情報の欠落や情報の意味の変更などを防止することができる。
【発明を実施するための最良の形態】
【００２９】
＜発明の概要＞
以下、メタ言語とは、データの論理的な構造を記述するための言語である。メタ言語としては、例えば前述のＸＭＬの他にＳＧＭＬ（Standard Generalized Markup Language）やＨＴＭＬ（HyperText Markup Language）等が挙げられる。また、構造化文書とは、メタ言語を用いて作成された文書であり、ＸＭＬ文書、ＳＧＭＬ文書及びＨＴＭＬ等が挙げられる。スキーマファイルとは、構造化文書の取り得る構造をスキーマ言語で記述したファイルであり、例えばＸＭＬスキーマファイルが挙げられる。なお、後述の項目の情報や階層構造を読み取り可能なファイルであればＸＭＬスキーマファイルに限定されず、例えばＲＤＦ（Resource Description Framework）ファイルやＣＳＶ（Comma Separated Value）ファイルなどを用いることができる。また、スタイルシートとは、異なるデータ構造を有する構造化文書間のデータ構造を変換するための変換ルールを記述したものであり、例えばＸＭＬスタイルシートが挙げられる。スタイルシートのスタイルシート言語としては、ＸＳＬＴ（XML Stylesheet Language Transformations）ファイルなどが挙げられる。
【００３０】
また、対応関係ファイルは、構造化文書間の項目の対応関係を記述したファイルであり、例えばシソーラスやオントロジーなどの同義語辞書ファイルが挙げられる。項目とは、例えば構造化文書において要素位置を明示し、属性を収納するためのタグである。また、項目は、項目の種類や項目の階層構造などの情報を有している。項目の種類とは、例えば「要素」、「属性」、「要素値」または「属性値」などのタグの内容である。
【００３１】
互いにデータ構造が異なる構造化文書Ａと構造化文書Ｂとの間でデータ構造の変換を行うためのスタイルシートの作成方法の概要を説明する。まず、構造化文書Ａ及び構造化文書Ｂ間の項目の関連づけを記述した対応関係ファイルを読み込み、項目の対応関係を解析する。例えば、対応関係ファイルから構造化文書Ａの項目ＩＡと構造化文書Ｂの項目ＩＢとが等しい（項目ＩＡ→項目ＩＢ）ことが解析される。
【００３２】
次に、構造化文書ＡのスキーマファイルＳＡ及び構造化文書ＢのスキーマファイルＳＢそれぞれから項目を抽出し、項目間の階層構造及び種類の解析を行う。項目の抽出は、対応関係ファイルにおいて対応関係が解析された項目ＩＡ及び項目ＩＢについて行えば良い。例えば、スキーマファイルＳＡからは項目ＩＡを抽出し、スキーマファイルＳＢからは項目ＩＢを抽出する。そして、抽出された項目ＩＡ及び項目ＩＢの情報を解析する。項目の情報として、例えば項目ＩＡの種類が「要素」、項目ＩＢの種類が「属性」であると解析される。
【００３３】
上記の対応関係ファイルから解析した項目の対応関係（項目ＩＡ→項目ＩＢ）と、項目ＩＡ、ＩＢの種類に基づいて、構造化文書Ａから構造化文書Ｂへの変換パターンを決定する。ここでは、「要素」→[属性」の変換パターンが決定され、この変換パターンに基づいて構造化文書Ａと構造化文書Ｂとの間でデータ構造の変換を行うためのスタイルシートを作成する。
【００３４】
上記のように、構造化文書間の項目の対応関係を記述した対応関係ファイルを利用することにより、スキーマファイルから自動的かつ効率的に項目を抽出することができる。また、対応関係ファイル解析手段により項目間の対応関係を解析し、スキーマファイル解析手段により項目間の階層構造及び種類を解析することで、構造化文書Ａから構造化文書Ｂへの変換パターンを項目ごとに決定することができる。よって、決定された変換パターンに基づいてスタイルシートを自動的、効率的かつ容易に作成することができる。
【００３５】
また、スタイルシートの作成は、スキーマファイルから対応関係ファイルのモデルへの変換を伴わずに、対応関係ファイル及びスキーマファイルの解析結果に基づいて行われる。そのため、変換に伴う項目の情報の欠落や情報の意味の変更などを防止することができる。
＜第１実施形態例＞
［構成］
以下、メタ言語としてＸＭＬを、構造化文書としてはＸＭＬにより記述されたＸＭＬ文書を、スキーマファイルとしてはＸＭＬスキーマで記述されたＸＭＬスキーマファイルを、対応関係ファイルとしてオントロジーファイルを用いる。また、ＸＳＬＴファイルによりスタイルシートを作成する場合を例に挙げる。
（１）全体構成
本発明のＸＳＬＴファイル作成装置１０１を有するＸＭＬ文書変換装置１００について第１実施形態例を挙げて詳細に説明する。図１は、第１実施形態例に係るＸＭＬ文書間におけるデータ構造の変換を示す説明図である。ここで、ＭＰＥＧ（Moving Picture Coding Experts Group）７で記述されたメタデータＡとＴＶ  Ａｎｙｔｉｍｅで記述されたメタデータＢとの異なるデータ構造間で変換を行う場合を例に挙げる。以下、メタデータＡをＸＭＬで記述した文書をＸＭＬ文書Ａ、メタデータＢをＸＭＬで記述した文書をＸＭＬ文書Ｂとする。
【００３６】
ＸＭＬ文書変換装置１００は、ＸＭＬ文書ＡとＸＭＬ文書Ａと異なるデータ構造で記述されたＸＭＬ文書Ｂとの間でのデータ構造の変換を行う。ＸＭＬ文書変換装置１００は、スタイルシートであるＸＳＬＴファイルを作成するＸＳＬＴファイル作成装置１０１と、作成されたＸＳＬＴファイルに基づいてＸＭＬ文書間のＸＭＬのデータ構造の変換を行うＸＳＬＴパーサ１０２とを含む。ＸＳＬＴファイル作成装置１０１は、オントロジーファイル１０７の解析結果と、ＸＭＬ文書Ａの構造を記述したＸＭＬスキーマファイルＳＡ及びＸＭＬ文書Ｂの構造を記述したＸＭＬスキーマファイルＳＢの解析結果に基づいてＸＳＬＴファイルを作成する。ＸＳＬＴパーサ１０２は、ＸＳＬＴファイル作成装置１０１から出力されたＸＳＬＴファイルに基づいて、ＸＭＬ文書ＡとＸＭＬ文書Ｂとの間でＸＭＬのデータ構造の変換を行う。
【００３７】
（２）ＸＳＬＴファイル作成装置の構成
次に、ＸＳＬＴファイル作成装置１０１によるスタイルシートの作成について説明する。図２は、ＸＳＬＴファイル作成装置１０１の構成を示すブロック図である。ＸＳＬＴファイル作成装置１０１は、オントロジー解析手段２０１、スキーマファイル解析手段２０２、変換パターン決定手段２０３、テンプレート記述手段２０４及びテンプレートＤＢ２０５を含む。ここで、テンプレート記述手段２０４及びテンプレートＤＢ２０５は、特許請求の範囲のスタイルシート出力手段に含まれる。ＸＳＬＴファイル作成装置１０１は、図３に示す４つの機能を実行する。
◎オントロジーファイル１０７の解析（ステップＳ１）
◎ＸＭＬスキーマファイルＳＡ及びＳＢの解析（ステップＳ２）
◎変換パターンの決定（ステップＳ３）
◎変換パターンに基づくＸＳＬＴファイルの出力（ステップＳ４）
以下に上記４つの機能について詳細に説明を行う。
【００３８】
（２−１）オントロジーファイルの解析
オントロジー解析手段２０１は、オントロジーファイル１０７を読み込み、オントロジーファイル１０７から変換対象となる項目を抽出し、その項目の対応関係を抽出する。
【００３９】
（２−１−１）オントロジーファイル
オントロジーファイル１０７には、変換対象であるＸＭＬ文書Ａ及びＸＭＬ文書Ｂ間における項目の対応関係が記述されている。例えばＷ３Ｃ（World Wide Web Consortium）により策定されているＯＷＬ（Web Ontology language）を用いてオントロジーファイル１０７を記述する。なお、項目の関係を記述できればＯＷＬに限定されない。また、項目とは、例えばＸＭＬ文書において要素位置を明示し、属性を収納するためのタグである。オントロジーファイル１０７には、項目の対応関係の他に、項目の種類や項目の階層構造などの情報を新たに定義し記述することが可能である。ここで、項目の種類とは、例えば「要素」、「属性」、「要素値」及び／または「属性値」である。また、項目の階層構造とは、項目間の親子関係である。
【００４０】
なお、後述のＸＭＬスキーマファイルを解析する際に、同一のＸＭＬ文書内に同一の項目が複数存在する場合がある。そこで、変換対象である項目を識別できるようにオントロジーファイル１０７の記述を行うと好ましい。例えば、同一のＸＭＬ文書内に、階層構造がＸＸＸ／ＹＹＹである項目と、ＺＺＺ／ＮＮＮ／ＹＹＹである項目が存在した場合、オントロジーファイル１０７にＹＹＹと記述しただけでは、変換対象である項目を一意に識別できない。そこで、ＹＹＹの階層構造をオントロジーファイル１０７に記述してＹＹＹを識別する。また、ＺＺＺ／ＮＮＮ／ＹＹＹ中のＮＮＮが一意に識別可能な項目である場合は、例えば項目「ＮＮＮ」からの相対位置をＮＮＮ／ＹＹＹのように記述することでＹＹＹを識別する。
【００４１】
（２−１−２）オントロジーファイルにより定義される変換パターン
次に、オントロジーファイルにより定義される変換パターンの一例について説明する。ＸＭＬ文書間のデータ構造の変換では、主に、「要素」、「属性」、「要素値」または「属性値」間において変換が行われる。そのため、変換されるパターンとしては、例えば、図４に示す変換パターンのバリエーションが一例として挙げられる。図４の「Ｎｏ」欄には変換パターンを一意に識別するＩＤ番号、「変換パターン」欄には「要素」、「属性」、「要素値」または「属性値」間における変換の方向を示す変換パターンを示す。図４中のＮｏ１の変換パターン「要素」→「要素」は、一方のＸＭＬ文書の「要素」が、他方のＸＭＬ文書の「要素」に変換されることを示す。つまり、変換パターン「要素」→「要素」は、一方のＸＭＬ文書の「要素」が持つ値と他方のＸＭＬ文書の「要素」が持つ値とが同一となる変換パターンである。
【００４２】
上記の変換パターンのうち変換パターンＮｏ．１からＮｏ．３までについて、ＸＭＬ文書の変換例を図５に示す。図５では、「ＸＭＬ文書Ａ」から「ＸＭＬ文書Ｂ」へデータ構造が変換されている。例えば、変換パターンＮｏ．１の「要素」→「要素」に着目すると、変換前の「要素」＜ＡＡＡ＞から「要素」＜ＢＢＢ＞に変換される。このとき、「要素」＜ＡＡＡ＞の持つ値αと「要素」＜ＢＢＢ＞の持つ値αとが同一であることが分かる。
【００４３】
さらに、オントロジーファイル１０７には、例えば｛項目ＩＡの値と項目ＩＢの値を加算した値と項目ＩＣの値が同値｝や｛項目ＩＡの値の文字列と項目ＩＢの値の文字列をつなげた文字列と項目ＩＣの値の文字列が同値｝という関係を記述してもよい。その他、｛「要素Ａ」が存在した場合、「要素Ｂ」を「要素Ｃ」に変換する｝という変換パターン、｛「複数の要素」→「要素」｝という変換パターン、｛「複数の要素」→「複数の要素」｝という変換パターンなどの種種の変換パターンが挙げられる。さらに、「要素」や「属性」など変換対象の項目の種類に基づいた変換パターンに限られず、項目の個数や内容などによる変換パターンであっても良い。例えば、変換パターンとして、｛ＸＭＬ文書Ａに含まれる「要素Ａ」の個数を、ＸＭＬ文書Ｂの「要素Ｂ」の値に入力する｝という変換パターンなどが挙げられる。
【００４４】
（２−１−３）オントロジー記述の例
前述の図４に示す変換パターンを元に、それらの項目の対応関係をオントロジーで記述した例を図６に示す。図６には、図４に示す「Ｎｏ」欄及び「変換パターン」欄に対応するオントロジー記述の例を「ＯＷＬ記述」欄に示す。「ＯＷＬ記述」欄と「変換パターン」欄とにおける「Ａ」「Ｂ」「Ｃ」「Ｄ」「Ｅ」等の文字は対応している。この図６のＯＷＬ記述に基づいて、ＸＭＬ文書間の項目の対応関係を記述したオントロジーファイルが作成される。オントロジーファイル１０７の一例を図７に示す。図７のオントロジーファイル１０７には、図６のＯＷＬ記述に従って、ＸＭＬ文書Ａ及びＸＭＬ文書Ｂ間における「要素」、「属性」、「要素値」、「属性値」の項目の対応関係が記述されている。
【００４５】
（２−１−４）変換対象項目の抽出及び対応関係の解析
次に、オントロジー解析手段２０１は、ＸＭＬ文書ＡからＸＭＬ文書Ｂへの変換の際に変換対象となる項目を、読み込んだオントロジーファイル１０７の記述から抽出する。つまり、ＸＭＬ文書間においてどの項目とどの項目の間で変換が行われるかを抽出する。抽出は、例えばオントロジーファイル１０７中で宣言されているクラスやプロパティを読み取り、どの項目が変換の対象となるのかに基づいて行う。具体的には、例えば、ＯＷＬ記述の＜ｏｗｌ：Ｃｌａｓｓ  ｒｄｆ：ＩＤ＝”…．”＞で宣言されている項目、ｒｄｆ：ｒｅｓｏｕｒｃｅ＝”…”で呼び出されている項目及びＸＭＬスキーマファイルのＮａｍｅＳｐａｃｅ（名前空間）から呼び出されている項目等の抽出をおこなうことで、変換対象となる項目を抽出する。さらに、オントロジー解析手段２０１は、抽出した項目の対応関係を解析する。
【００４６】
前述のオントロジーファイル１０７を例に挙げ、オントロジー解析手段２０１による変換対象となる項目の抽出及び解析を説明する。まず、図７のＬ２００では、呼び出されるスキーマファイル等が宣言されている。ａａａ：は、ＸＭＬ文書ＡのＸＭＬスキーマファイルＳＡを示し、ｂｂｂ：はＸＭＬ文書ＢのＸＭＬスキーマファイルＳＢを示している。Ｌ２０１からＬ２０２では、「ＴｙｐｅＣｏｎｔｅｎｔ」と「ａａａ：ＡｎａｌｏｇＩＣ」が等しいことが記述されている。また、Ｌ２０３からＬ２０４では、「ｂｂｂ：Ｔｙｐｅ」は、「ＴｙｐｅＣｏｎｔｅｎｔ」を値として保持していることが記述されている。よって、オントロジー解析手段２０１は、Ｌ２０１からＬ２０４の記述により、ＸＭＬ文書Ａの項目「ＡｎａｌｏｇＩＣ」及びＸＭＬ文書Ｂの項目「Ｔｙｐｅ」が所持している値が同値であるという対応関係を解析する。ここで、「ＡｎａｌｏｇＩＣ」→「ＴｙｐｅＣｏｎｔｅｎｔ」の変換を変換対応１と称する。同様に、Ｌ２０５からＬ２０６では、ＸＭＬ文書Ａの項目「ＰａｒｔｓＮａｍｅ」及びＸＭＬ文書Ｂの項目「Ｎａｍｅ」が同値であるという対応関係を解析する。「ＰａｒｔｓＮａｍｅ」→「Ｎａｍｅ」の変換を変換対応２と称する。また、Ｌ２０７からＬ２０８にて、ＸＭＬ文書Ａの項目「ＩｎｐｕｔＯｆｆｓｅｔＶｏｌｔａｇｅ」とＸＭＬ文書Ｂの項目「ｕｎｉｔ」が「Ｖ」を取るという状況と、ＸＭＬ文書Ｂの項目「Ｖ＿ＩＯ」の値が同値であるという対応関係を解析する。この「ＩｎｐｕｔＯｆｆｓｅｔＶｏｌｔａｇｅ」＋「ｕｎｉｔ」＋「Ｖ」→「Ｖ＿ＩＯ」の変換を変換対応３と称する。そして、オントロジー解析手段２０１は、これらの抽出した変換対象である項目及び項目の対応関係をスキーマファイル解析手段２０２に出力する。
【００４７】
（２−２）ＸＭＬスキーマファイルの解析
スキーマファイル解析手段２０２は、変換対象であるＸＭＬスキーマファイルＳＡ及びＸＭＬスキーマファイルＳＢを読み込み、オントロジーファイル１０７の解析で抽出された、変換対象である項目の階層構造や項目の種類等の項目の情報を解析する。ここでは、階層構造としてＸｐａｔｈを解析するものとする。なお、Ｘｐａｔｈに限定されず、Ｘｐｏｉｎｔｅｒなど他の位置指定方法を解析しても良い。
【００４８】
スキーマファイル解析手段２０２は、変換対象の各項目について「要素」、「属性」、「要素値」、「属性値」のいずれの種類であるかを解析する。例えば、ＸＭＬスキーマファイルに、Ｅｌｅｍｅｎｔと指定されている項目は「要素」であると判定し、「Ａｔｔｒｉｂｕｔｅ」と指定されている項目は「属性」であると判定する。ここで、項目の種類が「要素値」及び「属性値」などである場合は、ＸＭＬスキーマファイルからだけでは項目の種類を特定できない。そこで、スキーマファイル解析手段２０２は、オントロジーファイル１０７の記述から項目の種類を特定する。例えば、オントロジーファイル１０７において「ｈａｓＶａｌｕｅ」が指定されている項目の種類が「要素値」及び「属性値」であるとして項目の種類を特定する。スキーマファイル解析手段２０２は、この解析結果を変換パターン決定手段２０３に出力する。
【００４９】
（２−２−１）ＸＭＬスキーマファイルの解析の一例
上述のスキーマファイル解析手段２０２による解析を、ＸＭＬスキーマ言語で記述したスキーマファイルを用いてさらに詳細に説明する。図８及び図９は、それぞれＸＭＬスキーマファイルＳＡ及びＸＭＬスキーマファイルＳＢの一例である。
【００５０】
まず、図８のＸＭＬスキーマファイルＳＡの解析について説明する。スキーマファイル解析手段２０２は、図５のオントロジーファイル１０７の解析で抽出した変換対象の項目をＸＭＬスキーマファイルＳＡから読み取る。ここでは、ＸＭＬスキーマファイルＳＡの変換対象の項目として、「ＡｎａｌｏｇＩＣ」、「ＰａｒｔｓＮａｍｅ」、「ＩｎｐｕｔＯｆｆｓｅｔＶｏｌｔａｇｅ」及び「ｕｎｉｔ」が抽出されている。よって、これらの項目のＸｐａｔｈ及び項目の種類をＸＭＬスキーマファイルＳＡから読み取る。
【００５１】
スキーマファイル解析手段２０２は、図８のＬ１０１から、項目「ＡｎａｌｏｇＩＣ」について、Ｘｐａｔｈが「／ＡｎａｌｏｇＩＣ」であり、項目の種類が「要素」であることを解析する。同様に、Ｌ１０２から、項目「ＰａｒｔｓＮａｍｅ」について、Ｘｐａｔｈが「／ＡｎａｌｏｇＩＣ／ＰａｒｔｓＮａｍｅ」であり、項目の種類が「要素」であることを解析する。また、Ｌ１０３から、項目「ＩｎｐｕｔＯｆｆｓｅｔＶｏｌｔａｇｅ」について、Ｘｐａｔｈが「／ＡｎａｌｏｇＩＣ／ＩｎｐｕｔＯｆｆｓｅｔＶｏｌｔａｇｅ」であり、項目の種類が「要素」であることを解析する。さらに、スキーマファイル解析手段２０２は、Ｌ１０４からＬ１０５の記述から、項目「ｕｎｉｔ」は、項目「ＩｎｐｕｔＯｆｆｓｅｔＶｏｌｔａｇｅ」に含まれる「属性」であり、そのＸｐａｔｈが「／ＡｎａｌｏｇＩＣ／ＩｎｐｕｔＯｆｆｓｅｔＶｏｌｔａｇｅ／＠ｕｎｉｔ」であると解析する。同様に、図９のＸＭＬスキーマファイルＳＢについても変換対象である項目の解析を行う。
【００５２】
以上のＸＭＬスキーマファイルＳＡ及びＸＭＬスキーマファイルＳＢの解析結果を図１０に示す。図１０の「対応」欄にはオントロジー解析手段２０１で抽出した変換対応１〜３の分類を示し、変換対応毎に変換対象である項目、その項目が抽出されたＸＭＬスキーマファイル名、項目の種類、Ｘｐａｔｈを示す。この解析結果を変換パターン決定手段２０３に出力する。
【００５３】
（２−３）変換パターンの決定
変換パターン決定手段２０３は、オントロジーファイルの解析結果及びスキーマファイルの解析結果に基づいて、ＸＭＬ文書Ａ及びＸＭＬ文書Ｂ間の変換パターンを決定する。つまり、オントロジー解析手段２０１により抽出した変換対象の項目、スキーマファイル解析手段２０２より解析した各項目の種類やＸｐａｔｈに基づいて、どの種類の項目からどの種類の項目への変換であるかを示す変換パターンを決定する。
【００５４】
変換パターン決定手段２０３による変換パターンの決定方法について、図１０及び図１１を用いて説明する。図１０は、ＸＭＬスキーマファイルＳＡ及びＸＭＬスキーマファイルＳＢの解析結果である。図１１は、図１０の変換パターンの決定方法を示す説明図である。図１０の変換対応１は、図７のオントロジーファイル１０７の解析結果より、｛「ＡｎａｌｏｇＩＣ」と、「Ｔｙｐｅ」が所持している値とが同値である｝を意味する。ここで、ＸＭＬスキーマファイルＳＡ及びＸＭＬスキーマファイルＳＢより、項目「ＡｎａｌｏｇＩＣ」が「要素」、項目「Ｔｙｐｅ」が「要素」、「ＴｙｐｅＣｏｎｔｅｎｔ」が「要素値」であることが解析されている。よって、変換パターン決定手段２０３は、図１１に示すように変換対応１が「要素」→「要素値」の変換パターンと決定する。
【００５５】
同様に、図１０の変換対応２は、｛「ＰａｒｔｓＮａｍｅ」と「Ｎａｍｅ」が同値である｝を意味する。ここで、項目「ＰａｒｔｓＮａｍｅ」が「要素」であり、項目「Ｎａｍｅ」が「要素」である。よって、変換パターン決定手段２０３は、変換対応２が「要素」→「要素」の変換パターンと決定する。
【００５６】
また、変換対応３は、｛「ＩｎｐｕｔＯｆｆｓｅｔＶｏｌｔａｇｅ」かつ「ｕｎｉｔ」が「Ｖ」を取るという状況と、「Ｖ＿ＩＯ」は同値である｝ことを意味する。ここで、項目「ＩｎｐｕｔＯｆｆｓｅｔＶｏｌｔａｇｅ」が「要素」、項目「ｕｎｉｔ」が「属性」、「Ｖ」が項目「ｕｎｉｔ」の「属性値」、項目「Ｖ＿ＩＯ」が「要素」である。よって、変換パターン決定手段２０３は、変換対応３が「要素」＋「属性」＋「属性値」→「要素」の変換パターンと決定する。変換パターン決定手段２０３は、決定した変換パターンをテンプレート記述手段２０４に出力する。
【００５７】
（２−４）ＸＳＬＴファイルの出力
テンプレート記述手段２０４は、変換パターン決定手段２０３が決定した変換パターンに基づいてテンプレートＤＢ２０５を検索し、テンプレート記述手段２０４は、検索されたテンプレートに基づいてＸＳＬＴファイル１０８を追記し、出力する。
【００５８】
（２−４−１）テンプレートＤＢ
テンプレートＤＢ２０５は、ＸＭＬ文書間の変換パターンを所定のスタイルシート言語で定義するテンプレートを、変換パターン毎に記憶している。ここでは、スタイルシート言語としてＸＳＬＴを用いている。図１２に、テンプレートＤＢ２０５に記憶されているテンプレートの一例を示す。図１２は、図６に示したオントロジーファイルにおける変換パターン毎のテンプレートの一覧表を示す。図１２の「Ｎｏ」欄、「変換パターン」欄は、図６の変換パターンに対応している。また、「テンプレート」欄に対応するテンプレートの記述例をＸＳＬＴにより示している。なお、「テンプレート」欄及び「変換パターン」欄の「Ａ」「Ｂ」「Ｃ」「Ｄ」「Ｅ」などの文字は対応している。また、Ｎｏ１の＜ｘｓｌ：ｔｅｍｐｌａｔｅ  ｍａｔｃｈ＝“／Ｘｐａｔｈ／Ａ“＞の「／Ｘｐａｔｈ／Ａ」には、ＡのＸｐａｔｈの値が代入されることを示している。
【００５９】
（２−４−２）項目の値のデータ形式が異なる場合のテンプレート
テンプレートとしては、さらに次のようなテンプレートが挙げられる。ＸＭＬ書間の変換パターンが例えば「要素Ａ」→「要素Ｂ」への変換パターンの場合、「要素Ａ」の値及び「要素Ｂ」の値が同一である場合あっても取りうる値のデータ形式が異なる場合がある。そこで、テンプレートＤＢ２０５に値のデータ形式を変換するためのテンプレートを蓄積しておく。
【００６０】
具体的に、例えば、ＸＭＬ文書Ａの項目「Ｄａｙ」が、ＸＭＬ文書Ｂの項目「Ｄａｔｅ」に対応している場合を例に挙げ説明を行う。ここで、「Ｄａｙ」及び「Ｄａｔｅ」は、「要素」である。ＸＭＬ文書ＡからＸＭＬ文書Ｂへの変換の際、要素「Ｄａｙ」の値のは、年月日が、ＹＹＹＹＭＭＤＤというデータ形式を有する。一方、要素「Ｄａｔｅ」の値は、ＹＹＭＭＤＤというデータ形式を有する。同じ日付をあらわす項目であっても、その日付の値のデータ形式が異なる。そのため、要素「Ｄａｙ」→要素「Ｄａｔｅ」の変換の際に、その値のデータ形式を変更する必要がある。値のデータ形式を変換するためのテンプレートの一例を図１３に示す。図１３では、「ＸＭＬ文書Ａ」欄にＸＭＬ文書Ａの値のデータ形式を示し、「ＸＭＬ文書Ｂ」欄にＸＭＬ文書Ｂの値のデータ形式を示す。ここで、オントロジーファイル１０７には、予め、｛ＹＹＹＹＭＭＤＤというデータ形式をとる要素「Ｄａｙ」とＹＹＭＭＤＤというデータ形式をとる要素「Ｄａｔｅ」が同値｝という記述が行われているものとする。まず、テンプレート記述手段２０４は、「要素Ｄａｙ」→「要素Ｄａｔｅ」の変換パターンを受け取ると、その変換パターンに応じてテンプレートを選択する。さらに、「要素Ｄａｙ」及び「要素Ｄａｔｅ」の値のデータ形式を変換するためにテンプレートを選択する。ここで、テンプレート記述手段２０４は、値のデータ形式を変換するテンプレートとして、図２１に示す「先頭の２文字を削除」を選択する。そして、テンプレート記述手段２０４は、選択した「要素Ａ」→「要素Ｂ」のテンプレート及び「先頭の２文字を削除」のテンプレートに基づいてＸＳＬＴファイルの記述を行う。
【００６１】
（２−４−３）優先順位の情報を有するテンプレート
さらに、テンプレートＤＢ２０５に、変換の優先順位の情報を設定したテンプレートを蓄積しておき、テンプレート記述手段２０４が優先順位に基づいてテンプレートの選択を行ったり、ＸＳＬＴファイルの記述を行っても良い。
【００６２】
（２−４−４）ＸＳＬＴファイルの作成
テンプレート記述手段２０４は、変換パターン決定手段２０３から変換パターンを受け付け、ＸＳＬＴファイル１０８の作成を開始する。ここでは、ＸＭＬ文書ＡからＸＭＬ文書Ｂへの変換を行うＸＳＬＴファイル１０８、及びＸＭＬ文書ＢからＸＭＬ文書Ａへの変換を行うＸＳＬＴファイル１０８の作成を開始する。まず、テンプレート記述手段２０４は、変換パターンを受け付けると、ＸＭＬ文書ＡからＸＭＬ文書Ｂへの変換方向であるか、あるいはＸＭＬ文書ＢからＸＭＬ文書Ａへの変換方向であるかに応じて、テンプレートＤＢ２０５内のテンプレートを検索する。テンプレート記述手段２０４は、変換パターンをキーにして検索されたテンプレートを、ＸＳＬＴファイル１０８に記述する。テンプレート記述手段２０４は、全ての変換対象の項目について、ＸＳＬＴファイル１０８への記述が終了すると、作成したＸＳＬＴファイル１０８を出力する。
【００６３】
前記の処理により、ＸＭＬ文書ＡからＸＭＬ文書Ｂへの変換を行うＸＳＬＴファイル１０８、及びＸＭＬ文書ＢからＸＭＬ文書Ａへの変換を行うＸＳＬＴファイル１０８が出力される。
【００６４】
（２−４−５）ＸＭＬ文書ＡからＸＭＬ文書Ｂへの変換のためのＸＳＬＴファイルの作成
次に、ＸＭＬ文書ＡからＸＭＬ文書Ｂへの変換を行うＸＳＬＴファイル１０８の作成方法について、図１０及び図１１の変換パターンを例にとり、より具体的に説明する。図１４は、作成されるＸＳＬＴファイルの一例である。テンプレート記述手段２０４は、図１４に示すＸＳＬＴのヘッダ情報（Ｌ５０１からＬ５０２）を含むＸＳＬＴファイル１０８の作成を開始する。なお、図１４のＸＳＬＴファイル１０８は、ＸＭＬ文書ＡからＸＭＬ文書Ｂへの変換の際のＸＳＬＴファイル１０８である。テンプレート記述手段２０４は、受け付けた変換パターンに対応するテンプレートの検索を行うために、ＸＳＬＴ記述（Ｌ５０３からＬ５０４の部分）をＸＳＬＴファイルに記述する。
【００６５】
さらに、テンプレート記述手段２０４は、変換対応１の場合は、「要素」→「要素値」の変換パターンに対応するテンプレートをテンプレートＤＢ２０５から検索する。ここでは、図１２から「要素」→「要素値」の変換パターンとしてＮｏ．７のテンプレートが検索される。そして、テンプレート記述手段２０４は、Ｎｏ．７のテンプレートをＸＳＬＴファイルに追記（Ｌ５０５からＬ５０６）する。同様に、変換対応２の「要素」→「要素」の変換パターンのテンプレートとして、図１２のＮｏ．１のテンプレートを検索する。そして、図１３のＸＳＬＴファイルに追記（Ｌ５０７からＬ５０８）する。また、変換対応３に関しては、「要素」＋「属性」＋「属性値」→「要素」の変換パターンであるため、図１２のＮｏ．９のテンプレートを検索し、ＸＳＬＴファイルに追記（Ｌ５０９からＬ５１０）する。オントロジー解析手段２０１が抽出した全ての変換対応に関してテンプレートの記述が終了すると、テンプレート記述手段２０４は、ＸＳＬＴファイル１０８を出力する。
【００６６】
（２−４−６）ＸＭＬ文書ＢからＸＭＬ文書Ａへの変換のためのＸＳＬＴファイルの作成
次に、ＸＭＬ文書ＢからＸＭＬ文書Ａへの変換におけるＸＳＬＴファイル１０８も同様に作成を行う。変換パターン決定手段２０３は、図１１の変換対象の項目、項目の種類、各項目のＸｐａｔｈのデータを用いて、変換パターンを決定している。ここで、変換対応１の変換は「要素値」→「要素」の変換パターン、変換対応２の変換は「要素」→「要素」の変換パターン、変換対応３の変換は「要素」→「要素」＋「属性」＋「属性値」の変換パターンである。変換パターン決定手段２０３は、テンプレート記述手段２０４に対してＸＳＬＴファイル作成の指示を出す。テンプレート記述手段２０４は、テンプレートＤＢ２０５より、該当する変換パターンのテンプレートを検索する。「要素値」→「要素」の変換パターンは図１２のＮｏ．３のテンプレートが、「要素」→「要素」への変換パターンはＮｏ．１のテンプレートが、「要素」→「要素」＋「属性」＋「属性値」への変換パターンはＮｏ．１０のテンプレートが検索される。そして、これらのテンプレートがＸＳＬＴファイルに記述される。記述後のＸＳＬＴファイルを図１５に示す。図１５には、まずＸＳＬＴの宣言部分（Ｌ８０１からＬ８０２）と、テンプレートを呼び出すための記述（Ｌ８０３からＬ８０４）が行われている。そして、図１５のＬ８０３からＬ８０６にＮｏ．３に対応するテンプレートが、Ｌ８０８からＬ８０９にＮｏ．１に対応するテンプレートが、Ｌ８１０からＬ８１１にＮｏ．１０に対応するＸＳＬＴテンプレートが記述されている。
【００６７】
なお、変換パターン決定手段２０３は、ＸＭＬ文書ＡからＸＭＬ文書Ｂへの変換、あるいはＸＭＬ文書ＢからＸＭＬ文書Ａへの変換におけるＸＳＬＴファイル１０８のどちらを作成するのかを指示しても良い。また、両方のＸＳＬＴファイル１０８に交代で記述を行い、同時にＸＳＬＴファイル１０８作成しても良い。
【００６８】
（２−４−７）ＸＳＬＴファイルの記述方法
ここで、テンプレート記述手段２０４は、項目の階層構造を整理して複数のＸＳＬＴテンプレートを１つにまとめた形に修正したテンプレートをＸＳＬＴファイル１０８に記述すると好ましい。例えば、テンプレート記述手段２０４は、次のように修正したテンプレートをＸＳＬＴファイル１０８に記述する。図１６はテンプレートを修正せずに作成したＸＳＬＴファイルの一例であり、図１７は修正したテンプレートにより作成したＸＳＬＴファイルの一例である。図１６のＸＳＬＴファイル１０８には、変換対象の項目毎にＸｐａｔｈがＡＡＡ／ＢＢＢ、ＣＣＣ、ＡＡＡ／ＤＤＤである変換パターンのテンプレートが記述されている。この場合、Ｌ３０１とＬ３０２の部分で、＜ＡＡＡ＞の項目が２回出力され、ＸＳＬＴファイルへの記述が多くなる。そこで、上位の項目で下位の複数の項目を入れ子、つまり階層化する。例えば、出力される項目の順に、ＡＡＡ／ＢＢＢ、ＡＡＡ／ＤＤＤ、ＣＣＣのようにテンプレートのソートを行う。そして、図１７に示すように同一の項目以下に含まれる項目は、１つの上位の項目にまとめてＸＳＬＴファイル（１０２）に記載する。これにより、＜ＡＡＡ＞の項目は、Ｌ４０１部分に１回出力されるだけで、２回出力される現象を回避することができる。
【００６９】
より具体的に、図１８及び図１９を用いて説明する。図１８には、ＸＭＬ文書ＡからＸＭＬ文書Ｂにデータ構造を変換する場合において、変換対象の項目毎のＸｐａｔｈを記載している。左欄にはＸＭＬ文書ＡのＸｐａｔｈを、右欄にはＸＳＬＴファイルのＸｐａｔｈを示す。図１９は、作成されるＸＳＬＴファイルを示す。
【００７０】
ここで、図１８に示すように、ＸＭＬ文書Ａの全ての変換対象である項目が、ＸＭＬ文書Ｂの「Ｓｅｍｉｃｏｎｄｕｃｔｏｒ」以下の項目に変換される。よって、まず、ＸＭＬ文書Ａの項目を項目「Ｓｅｍｉｃｏｎｄｕｃｔｏｒ」に変換するテンプレートを、ＸＳＬＴファイルに記述する（Ｌ６０１からＬ６０２）。すなわち、図１９に示すように、項目「ＡｎａｌｏｇＩＣ」は、項目「Ｓｅｍｉｃｏｎｄｕｃｔｏｒ」を省略してＸＳＬＴファイル１０８に記述される（Ｌ６０３からＬ６０４）。同様に、項目「ＰａｒｔｓＮａｍｅ」及び「ＩｎｐｕｔＯｆｆｓｅｔＶｏｌｔａｇｅ」についても、それぞれ、Ｌ６０５からＬ６０６及びＬ６０７からＬ６０８に示すように項目「Ｓｅｍｉｃｏｎｄｕｃｔｏｒ」を省略してＸＳＬＴファイル１０８に記述される。
【００７１】
前記では、ＸＳＬＴファイルの変換対象の項目毎のＸｐａｔｈに基づいて階層化しているが、ＸＭＬ文書ＡのＸｐａｔｈに基づいて階層化を行っても良い。より具体的に、図１８及び図２０を用いて説明する。図２０は、作成されるＸＳＬＴファイルを示す。
【００７２】
図１８に示すように、ＸＭＬ文書Ａの変換対象の項目は、すべて項目「ＡｎａｌｏｇＩＣ」以下の項目となっている。そこで、項目「ＡｎａｌｏｇＩＣ」のテンプレート中に、項目「ＡｎａｌｏｇＩＣ」以下の項目を呼び出すための記述を行う。すなわち、図２０に示すように、項目「ＡｎａｌｏｇＩＣ」のテンプレート（Ｌ７０１からＬ７０２）をＸＳＬＴファイルに記述する際に次の記述を行う。項目「ＡｎａｌｏｇＩＣ」のテンプレートが終了する＜／ｘｓｌ：ｔｅｍｐｌａｔｅ＞（Ｌ７０２）の直前に、他のテンプレートを呼びだすための記述（Ｌ７０３）を行う。
［処理］
図２１は、ＸＭＬ文書変換装置１００が行う処理の流れを示すフローチャートである。
【００７３】
ステップＳ１１：オントロジー解析手段２０１は、オントロジーファイル１０７を読み込む。
【００７４】
ステップＳ１２：オントロジー解析手段２０１は、オントロジーファイル１０７から変換対象となる項目を抽出する。
【００７５】
ステップＳ１３：オントロジー解析手段２０１は、抽出した変換対象となる項目の対応関係を解析する。
【００７６】
ステップＳ１４：スキーマファイル解析手段２０２は、ＸＭＬ文書のスキーマファイルを読み込む。
【００７７】
ステップＳ１５、Ｓ１６：スキーマファイル解析手段２０２は、読み込んだスキーマファイルから変換対象である項目のＸｐａｔｈや項目の種類等の項目の情報を解析する。
【００７８】
ステップＳ１７：変換パターン決定手段２０３は、オントロジーファイルの解析結果及びスキーマファイルの解析結果に基づいて、ＸＭＬ文書Ａ及びＸＭＬ文書Ｂ間の変換パターンを決定する。
【００７９】
ステップＳ１８：テンプレート記述手段２０４は、変換パターン決定手段２０３が決定した変換パターンに基づいて、ＸＳＬＴファイル１０８に追記するテンプレートＤＢ２０５を検索する。
【００８０】
ステップＳ１９、Ｓ２０：テンプレート記述手段２０４は、検索されたテンプレートに基づいてＸＳＬＴファイル１０８を追記し、出力する。
【００８１】
以上の処理により、ＸＭＬ文書ＡからＸＭＬ文書Ｂへの変換に用いられるＸＳＬＴファイル１０８及びＸＭＬ文書ＢからＸＭＬ文書Ａへの変換に用いられるＸＳＬＴファイル１０８がＸＳＬＴファイル作成装置１０１から出力される。
【００８２】
なお、オントロジー解析手段２０１によるステップＳ１からステップＳ３のオントロジーファイル１０７の解析処理の前に、スキーマファイル解析手段２０２によるステップＳ４からステップＳ６のスキーマファイルの解析処理を行っても良い。この場合、まず、スキーマファイル解析手段２０２は、スキーマファイル中の全ての項目を抽出し、解析する。次に、オントロジー解析手段２０１が変換対象となる項目を抽出する。そして、スキーマファイルから抽出された全ての項目の中から変換対象となる項目を抽出し、その変換パターンを決定する。変換パターンからＸＳＬＴファイル１０８の出力については、上記と同様の処理が行われる。
［効果］
構造化文書間の項目の対応関係を記述した対応関係ファイルを利用することにより、スキーマファイルから自動的かつ効率的に項目を抽出することができる。また、対応関係ファイル解析手段により項目間の対応関係を解析し、スキーマファイル解析手段により項目間の階層構造及び種類を解析することで、ＸＭＬ文書間の変換パターンを項目ごとに決定することができる。よって、決定された変換パターンに基づいてスタイルシートを自動的、効率的かつ容易に作成することができる。
【００８３】
また、スタイルシートの作成は、スキーマファイルから対応関係ファイルのモデルへの変換を伴わずに、）対応関係ファイル及びスキーマファイルの解析結果に基づいて行われる。そのため、変換に伴う項目の情報の欠落や情報の意味の変更などを防止することができる。
【００８４】
＜その他の実施形態例＞
コンピュータに前述の処理を実行させるプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明に含まれる。ここで記録媒体としては、コンピュータが読み書き可能なフレキシブルディスク、ハードディスク、半導体メモリ、ＣＤ−ＲＯＭ、ＤＶＤ、光磁気ディスク（ＭＯ）、その他のものが挙げられる。
【産業上の利用可能性】
【００８５】
メタデータのデータ構造が撮影、編集、放送などの段階によって変化するような、放送局のメタデータ制作システム等に利用可能であり、特に、そのシステム内のメタデータデータ構造の変換装置に好適である。
【図面の簡単な説明】
【００８６】
【図１】第１実施形態例に係るＸＭＬ文書間におけるデータ構造の変換を示す説明図。
【図２】ＸＳＬＴファイル作成装置１０１の構成を示すブロック図。
【図３】ＸＳＬＴファイル作成装置１０１が実行する４つの機能。
【図４】変換パターンのバリエーションの一例。
【図５】変換パターンＮｏ．１からＮｏ．３のＸＭＬ文書の変換例。
【図６】図５の変換パターンを元に、それらの項目の対応関係をオントロジーで記述した一例。
【図７】オントロジーファイル１０７の一例。
【図８】ＸＭＬスキーマファイルＳＡの一例。
【図９】ＸＭＬスキーマファイルＳＢの一例。
【図１０】ＸＭＬスキーマファイルＳＡ及びＳＢの解析結果の一例。
【図１１】図１０の変換パターンの決定方法を示す説明図。
【図１２】テンプレートＤＢ２０５に記憶されているテンプレートの一例。
【図１３】値のデータ形式を変換するためのテンプレートの一例。
【図１４】作成されるＸＳＬＴファイルの一例。
【図１５】記述後のＸＳＬＴファイルの一例。
【図１６】テンプレートを修正せずに作成したＸＳＬＴファイルの一例。
【図１７】修正したテンプレートにより作成したＸＳＬＴファイルの一例
【図１８】ＸＭＬ文書ＡからＸＭＬ文書Ｂにデータ構造を変換する場合における、変換対象の項目毎のＸｐａｔｈの一例。
【図１９】作成されるＸＳＬＴファイル。
【図２０】作成されるＸＳＬＴファイル。
【図２１】ＸＭＬ文書変換装置１００が行う処理の流れを示すフローチャート。
【符号の説明】
【００８７】
１００：ＸＭＬ文書変換装置
１０１：ＸＳＬＴファイル作成装置
１０２：ＸＳＬＴパーサ
１０７：オントロジーファイル
１０８：ＸＳＬＴファイル
２０１：オントロジー解析手段
２０２：スキーマファイル解析手段
２０３：変換パターン決定手段
２０４：テンプレート記述手段
２０５：テンプレートＤＢ
【図１】
2005352945.tif 000003
【図２】
2005352945.tif 000004
【図３】
2005352945.tif 000005
【図４】
2005352945.tif 000006
【図５】
2005352945.tif 000007
【図６】
2005352945.tif 000008
【図７】
2005352945.tif 000009
【図８】
2005352945.tif 000010
【図９】
2005352945.tif 000011
【図１０】
2005352945.tif 000012
【図１１】
2005352945.tif 000013
【図１２】
2005352945.tif 000014
【図１３】
2005352945.tif 000015
【図１４】
2005352945.tif 000016
【図１５】
2005352945.tif 000017
【図１６】
2005352945.tif 000018
【図１７】
2005352945.tif 000019
【図１８】
2005352945.tif 000020
【図１９】
2005352945.tif 000021
【図２０】
2005352945.tif 000022
【図２１】
2005352945.tif 000023