(57)【要約】  本発明は、データベースソースから抽出したデータを含むＸＭＬ文書を自動的に生成する方法を説明する。この方法は、幾つかのテンプレートをデータベースの形式で定義する段階を含み、そのようなテンプレートは、実行可能な記述を含む。また、テンプレートのそれぞれと関連付けられた照会が定義される。照会は、ソースデータベースのデータからデータをレコードセットの形で抽出するために使用される。テンプレートの記述の実行は、レコードセットからのデータを含む少なくとも１つのＸＭＬ文書を生成する。呼出し命令を使用することによって、テンプレートは、ＸＭＬ文書を作成するために他のテンプレートの内の任意のテンプレートも呼び出すことができる。本発明の方法は、データベースから直接動作する入れ子式テンプレートの支援によりデータベースからデータにアクセスするための動的定義を実現する。【選択図】図１
2008541254.tif 000002
【特許請求の範囲】
【請求項１】
ソースデータベース（１４０）から抽出したデータを含む少なくとも１つのＸＭＬ文書（１１０）を自動的に生成する（１２０）方法であって、前記データベースが、前記少なくとも１つのＸＭＬ文書を生成する手段を有し、前記手段は、前記データベースの形式と言語で定義されたテーブル（１３０，１３５）を利用するＸＭＬジェネレータ（１２０）を含む方法において、少なくとも１つの定義テーブル（１３０）内に複数のテンプレート（２２０，２２５）を定義する段階であって、前記複数のテンプレート（２２０，２２５）は、前記ＸＭＬジェネレータ（１２０）によって実行できる命令（２３０）を含み、前記実行可能命令（２３０）は、前記複数のテンプレート（２２０，２５５）の内の任意のテンプレートを呼び出すために少なくとも１つの呼出し命令（６３０）を含む段階と、前記テンプレート（２２０，２５５）のそれぞれと関連付けられた照会（１３５）を定義する段階であって、前記照会は、前記ソースデータベース（１４０）からデータをレコードセット（７３０）の形で抽出するために使用される段階と、実行段階（７００）の際に前記少なくとも１つの定義テーブル（１３０）に含まれるファイル定義（２００）から前記命令（２３０）を実行する段階であって、前記実行段階（７００）は、前記レコードセット（７３０）から取得する前記データを含む前記少なくとも１つのＸＭＬ文書を生成できるようにするために、前記テンプレートの少なくとも１つのテンプレートによる前記複数のテンプレート（２２０，２２５）の少なくとも１つの他のテンプレートに対する呼び出しを含む段階とを含む方法。
【請求項２】
前記少なくとも１つのＸＭＬ文書は、属性（７２６）を含むことができる要素（７０２）を含み、前記実行段階は、前記要素とその前記属性を作成するための段階を含む、請求項１に記載の方法。
【請求項３】
前記ファイル定義は、前記ＸＭＬ文書の名前を作り（４００）、前記ＸＭＬ文書のターゲットファイルを作成し（４１０）、現行要素の機能を割り当てるルート要素を作成し（４３０）、前記複数のテンプレートの内の任意のテンプレートを呼び出すことができるルートテンプレート（７１０）を処理することを可能にする、請求項１又は２に記載の方法。
【請求項４】
前記現行要素の新しい子要素（６００）を作成し、前記現行要素の機能を前記新しい要素（６００）に割り当てる（６０５）ための命令と、前記現行要素の新しい属性を作成する（６１０）命令と、前記現行要素の親要素に現行要素の機能を割り当てなおす、前記現行要素を閉じる（６２０）ための命令とを少なくとも含む、請求項３に記載の方法。
【請求項５】
パラメータ（２１０，２４０）を含み、前記パラメータは、前記テンプレート呼出し命令が実行されるとき或いは前記ファイル定義が開かれ前記ルートテンプレートが使用されるときに前記テンプレートをリンクする働きをする、請求項３又は４に記載の方法。
【請求項６】
前記テンプレートの前記命令（５４０）がそれぞれ、前記レコードセットの各レコードに適用される（５３０）、請求項１から５のいずれか１項に記載の方法。
【請求項７】
前記命令は、ＸＭＬジェネレータ（１２０）によって解釈される、請求項６に記載の方法。
【請求項８】
前記ソースデータベース（１４０）は、関係データベースであり、前記照会（１３５）は、ＳＱＬとして知られる構造化照会言語の規則に従う照会である、請求項１から７のいずれか１項に記載の方法。
【請求項９】
システム、特にＸＭＬ文書（１２０）のジェネレータであって、請求項１から８のいずれか１項に記載の方法を実施するように適合された手段を含むシステム。
【請求項１０】
コンピュータによって実行可能なプログラムの命令を含む前記コンピュータによる読み取り可能媒体であって、前記プログラムは、請求項１から８のいずれか１項による方法を実施する媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にコンピュータによって生成されたデータベースに関し、より詳細にはデータベースを調べるときにマークアップ言語ＸＭＬ（eXtensible Markup Language（拡張可能マークアップ言語））を使用するタイプの文書の自動生成に関する。
【背景技術】
【０００２】
コンピュータから直接或いはネットワークを介して生成されたデータベースは、多数の会社、行政機関、及びあらゆる種類の商業組織や他の組織によって非常に長い間使用されてきた。データベースは、データを構造化した様式で最小限の冗長性で記憶することができるものである。従って、データベースを使用する主な利点は、多数の異なるユーザがそのデータベースに同時にアクセスできることである。
【０００３】
例えば、世界中の全ての航空会社のフライトの全ての時刻表と予約状況、あるいは国際的ホテルチェーンの全ての提供サービスを含むデータベースがある。この場合、特にインターネットによって全ての専用ネットワーク又は公衆ネットワークを相互接続することができるので、旅行代理店は、世界中のどこからでもこの情報にアクセスすることができる。従って、データベースの概念は、一般に、この情報を組み合わせ共有できるように、ネットワークの概念と結合される。
【０００４】
データとユーザを管理するために、データベース管理システム（ＤＢＭＳ）が必要とされる。ＤＢＭＳは、データベースの管理を可能にするソフトウェアアプリケーションの集まりであり、即ち、データへの単純なアクセスを可能にし、複数ユーザの情報へのアクセスを許可し、データベース内にあるデータの操作（入力、削除、修正）を可能にする。
【０００５】
殆どの場合、データベースは、データをテーブルの形で編成するいわゆる関係モデルに従って構成される。データは、関係に関する形式演算の集まりからなる集合理論（即ち、関係代数）に基づく数学的概念に従って取り扱われる。関係演算は、他のテーブルに関する基本演算（例えば、結合、共通部分演算、更には差分等）から新しい関係（テーブル）を作成することを可能にする。
【０００６】
構造化された照会言語がこれまで幅広く採用されてきた。略語ＳＱＬ（Structured Query Language）として知られる照会言語は、データ定義言語でもありデータ処理制御言語でもある。データの定義は、管理者の仕事である。ＳＱＬ言語を使用する人は殆ど、自分が関心のあるデータを選択できるデータ処理言語だけを使用する。ユーザの視点から見ると、データ処理言語の最も重要なコマンドは、ＳＥＬＥＣＴコマンドである。このコマンドは、関係代数に基づいて、幾つかの関係テーブルでデータ選択操作を実行して、それらをユーザが使用できるようにすることができる。
【０００７】
インターネットが著しく発達し、インターネットによって公衆ネットワークと専用ネットワークの相互接続が可能になったため、ＨＴＴＰ（Hyper Text Transfer Protocol）と呼ばれるプロトコルの採用とウェブ（ワールドワイドウェブ）の名前で知られる通信システムの開発によって、データ交換が標準化された。ワールドワイドウェブで情報を検索することができ、その情報にアクセスしてハイパーテキスト又はＨＴＭＬ（Hyper Text Markup Language）を用いて視覚化することができる。この言語によって、ウェブブラウザで表示できるハイパーテキスト文書を作成することができる。
【０００８】
ＨＴＭＬ言語は、文書とその形式を記述するために１９８０年代に採用された略語ＳＧＭＬ（Standard Generalized Markup Language）として知られるより高度な規格の極めて単純な特別バージョンである。ＳＧＭＬ言語は、文書のトポグラフィカルな様相ではなく文書の論理構造を記述するために現在でも使用されている記号言語である。適用される原理は、章、段落、序文、導入部、及び文書の他の構成要素の汎用マーキング（マーカによる）である。ＨＴＭＬ言語の単純さは、この言語が採用された大きな要因であり、ウェブの開発当初は全く十分であったが、より要求が厳しい用途の要件によってすぐにその限界が明らかになった。ＨＴＭＬの単純さは、更なる開発の余地を犠牲にして達成されたため、ＨＴＭＬが導出された規格、即ちＳＧＭＬと類似しているがＳＧＭＬの複雑さをなくし開発と順応性の可能性を提供する言語がすぐに必要とされるようになった。これに対する対応は、ウェブの標準化作業を委ねられた組織によって１９９６年の終わりに提案された新しい規格であった。この規格は、ＸＭＬ（eXtensible Markup Language）として知られる。ＸＭＬは、ＳＧＭＬとよく似ているがその複雑はなく、ＨＴＭＬ言語の拡張を可能にするメタ言語である。詳細には、このＸＭＬは、例えばテキストをより明確に記述するために新しいマーカを定義することができ、文書を完全に個人化することができる。ＸＭＬの成功は、その拡張性によるデータドメインを記述する能力にある。ＸＭＬにより、含まれるデータの語いと構文を構造化し確立することができる。
【０００９】
従って、ＸＭＬ言語が、データベース、特に前述の関係データベースから得られたデータを含む文書をフォーマットするために作成されてからずっと使用されてきたことは驚くことではない。データはＳＱＬ照会によって取得される。
【００１０】
しかしながら、取得したデータを使用し、そのデータをユーザのウェブブラウザによって開かれるウィンドウに表示するために文書に含めるには、大量のコーディング作業を必要とする。既に前に引用した旅行代理店（ユーザ）が調べるデータベースの例では、必要とされる表示の個人化レベルは極めて高い場合がある。実際に、そのような旅行代理店の顧客は極めて多様な要求を持つ。旅行代理店のスタッフの仕事を容易にし、その生産性を高め、顧客満足度を高めるためには、顧客が行楽客かビジネスマンか女性かによって、データの選択とその提示が大きく異なる場合がある。
【００１１】
従って、ＸＭＬ文書の自動生成は、特にそのようなアプリケーションの開発者から注目されてきた。例えば、米国特許第６，６３６，８４５号として米国特許庁（ＵＳＰＴＯ）から発行された特許を参照することができる。この特許は、単一のＳＱＬ照会からＸＭＬ文書を生成する方法（Generating one or more XML documents from a single SQL query（単一ＳＱＬ照会からの一以上のＸＭＬ文書を生成する））について述べている。しかしながら、記載された方法には融通性がない。詳細には、この方法は、データに対するアクセスを記述するために静的な定義に基づく。従って、対応するＸＭＬ文書内でアクセスすべきデータのタイプと同じ数の定義がある。
【００１２】
【特許文献１】米国特許第６，６３６，８４５号
【００１３】
本発明の一般的な目的は、データベースからＸＭＬ文書を生成するための改良された方法を提案することである。
【００１４】
本発明の特定の目的は、データベース内のデータへのアクセスの動的定義からＸＭＬ文書を生成できることである。
【００１５】
本発明の別の目的は、データベース形式で記述された入れ子式テンプレート（nested template）の組み合わせを使用することによってこの動的定義を取得することである。
【００１６】
本発明の更に他の目的は、アプリケーション用に生成されるＸＭＬ文書を単純化しその数を減らし同時に高度の個人化を維持することである。
【００１７】
本発明の他の目的、特徴及び利点は、以下の説明及び添付図面を考察することにより当業者に明らかになるであろう。他の利点も実現できることを理解されたい。
【発明の開示】
【課題を解決するための手段】
【００１８】
ソースデータベースから抽出されたデータを含む少なくとも１つのＸＭＬ文書を自動的に生成する方法を説明する。この方法は、複数のテンプレートをデータベース形式で定義することにあり、そのようなテンプレートは実行可能命令を含む。各テンプレートと関連付けられた照会も定義される。照会は、ソースデータベースからデータをレコードセットの形で抽出するために使用される。テンプレートの命令は、レコードセットから取得するデータを含む少なくとも１つのＸＭＬ文書を生成するために実行される。命令は、他のテンプレートのいずれか１つのテンプレートを呼び出すための少なくとも１つの呼出し命令を含む。ＸＭＬ文書は、属性を含む要素から成る。この方法は、現行要素の概念を維持することを特徴とする。この方法は、また、現行要素に割り当てる新しい要素を作成する命令を含む。次に新しい要素は現行要素になる。この方法は、また、現行要素に対する新しい属性を作成する命令と、現行要素の親要素に現行要素の役割を割り当てなおす、現行要素を閉じる命令とを含む。この方法は、ＸＭＬ文書の名前を構成し、現行要素になるルート要素を作成し、テンプレートのどれがルートテンプレートかを指定できるファイル定義を含む。テンプレート呼出し命令が実行されるとき或いはファイル定義が開かれルートテンプレートが使用されるときに、パラメータを使用してテンプレートをリンクする。テンプレート命令はそれぞれ、各レコードセットの記録に適用される。命令は、ＸＭＬジェネレータによって解釈される。ソースデータベースは、関係データベースであり、照会は、ＳＱＬとして知られる構造化照会言語の規則に従う照会である。テンプレート、照会、命令、ファイル定義、及びパラメータは、少なくとも１つの関係データベース内にテーブルの形で収容され、ソースデータベースに含まれていてもよい。
【００１９】
本発明の目標、目的、並びに特徴と利点は、以下の添付図面によって示された本発明の実施形態の詳細な説明から明らかになるであろう。
【００２０】
添付した図面は、例として示され、本発明の範囲を限定しない。
【発明を実施するための最良の形態】
【００２１】
図１は、以下でＶＩＳＴＡ（１００）と呼ぶソフトウェアアプリケーションに使用される本発明の全体的な実施方法を示す。この方法の目的は、ソースデータベース（１４０）から取り出された情報を、リモートユーザのブラウザが容易に解釈できる形式で自動的にフォーマットすることによってリモートユーザが利用できるようにすることである。データベースは、例えば、国際的ホテルチェーンの提供サービスと予約状況を含む。従って、この例では、ユーザは旅行代理店であり、旅行代理店は、世界中のどこからでもインターネットを介して公衆ネットワーク又は専用ネットワークからこの情報にアクセスすることができる。
【００２２】
背景技術の節で述べたように、ＸＭＬ言語はこの目的に最適である。ＸＭＬは、主要なウェブ標準化機構、即ちＷ３Ｃ（World Wide Web Consortium）によって提案され、これまで幅広く採用されてきた。従って、ＶＩＳＴＡは、文章を、それらの内容を表示するためにＸＭＬファイル（１１０）の形式で生成し、それにより求められている情報をユーザが使用できるようにする。このために、アプリケーション（１００）は、構文アナライザ（パーサ）によってＸＭＬファイルを読み出さなければならない。パーサは、有名な米国企業「Ｍｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎ」等のソフトウェア供給業者によって開発販売されている標準ツールである。パーサを実行する際、ターゲットファイルの分析により、アプリケーションユーザのブラウザが表示できるページを構成するオブジェクト（１０５）が生成される。
【００２３】
ＸＭＬファイルを生成するために使用されるＸＭＬジェネレータ（１２０）は、モデル又はテンプレート（これらの主題に関する英語技術文献では「テンプレート」という用語が使用されている）に基づく。テンプレートは、使用される関係データベースの形式と言語でＸＭＬジェネレータの定義テーブル（１３０）に記憶される。再使用される可能性を高めるためにテンプレートを入れ子にすることができる。本発明によるテンプレートは、ＸＭＬジェネレータが解釈することができ且つそれらのコンテキストで再使用することができる命令セットである。テンプレートのコンテキストは、英語技術用語よる１組のレコード又はレコードセット、即ちデータベースに送られる特定の照会によって得られるデータベースの部分ビューに適用される。照会は、前に述べたような構造化照会言語（ＳＱＬ）に従う。本発明によれば、照会は、それぞれ特定のレコードセットへのアクセスを提供するオブジェクトの形で定義されデータベース（１３５）内に記憶される。照会オブジェクトは、パラメータを含むことができる。この場合、パラメータは、照会を修正する役割をする。例えば、図書館内の全ての本をリストするデータベースでは、本を特定の著者の名前で検索することができ、従って「著者」パラメータを含む照会が定義される。特定の検索では、著者パラメータを特定の著者の名前によって置き換えることができる。照会に応じてデータベースから返される対応するレコードセットは、図書館に収容されているその著者による本のリストからなる。
【００２４】
ＸＭＬが、ユーザにデータを配布する最も適切な手段である場合、製品に関するデータを記憶するには関係データベース（１４０）が理想的である。詳細には、適切に構造化されたデータベースを使用することにより、そのデータベースに含まれる情報の容易且つ有効な保守が保証され、冗長性が防止される。従って、データベース（１４０）は、アプリケーション（１００）のユーザのために生成されるＸＭＬファイルに含まれることになるデータの必須の供給源である。本発明の方法は、特に、既に延べた構造化照会言語ＳＱＬを利用する。ターゲットＸＭＬ文書を生成することを可能にするデータベースの形式のテンプレートを使用することにより、ユーザが自分のブラウザで接続するときに、ソースデータベースに直接アクセスするために通常必要になるソフトウェア資源をユーザに配布する必要がなくなる。これは、必然的に、求める情報にアクセスするのに必要な時間を長くし、ネットワークを遮断し、求める情報の入手をきわめて複雑にする。実際に、データベースの構造と構成は、データベースの効率を保証し且つ冗長性を回避しようとするものであるが、ユーザへの情報の表示は他の基準に従う。データベース内のデータの構造をユーザが必要とするデータに整合させることは、本発明が推奨するように、ＸＭＬジェネレータ（１２０）によってソース側で適切に実行できる。このＸＭＬジェネレータは、ユーザにとって十分な情報を含む少数のターゲットＸＭＬファイル（１１０）を作成する定義テーブル（１１０）及び関連した照会定義（１３５）のテンプレートに依存する。
【００２５】
本発明による定義テーブル、テンプレート、及び照会は、図１に線図で示したようにソースデータベース（１４０）と別のデータベースに含まれてもよいが、何らの問題なしに、固有データベース（１５０）の一部を適切に構成できる。
【００２６】
従って、本発明の目的は、実際の規格を構成するソフトウェアアプリケーションによって管理された単一ソース（１４０）（関係データベース）からＸＭＬ文書（１１０）を生成することである。そのようなソフトウェアアプリケーションには、多数の周知の商品がある。例えば「Ｏｒａｃｌｅ」、「ＩＢＭ  ＤＢ２」、「Ｍｉｃｒｏｓｏｆｔ  Ａｃｃｅｓｓ」の名前で知られているものであるが、これらの製品は、それぞれの会社によって開発販売されているものである。従って、データの管理とインテグリティー自体は、幅広く試験され使用されている標準製品の使用により実現される。従って、ＸＭＬ文書を生成し試験するための規則をデータベース自体の中にそのデータベースの形式で含めることによって、多数の利点を得ることができる。特に、開発時間が短縮される。従って、データベースに変更を加え、ＶＩＳＴＡ（１００）等の所定のアプリケーションの全てのＸＭＬファイルを自動的に再発生するのは、特定のコードを更新し修正するよりも時間がかからない。更に、これは、アプリケーション自体（この例ではＶＩＳＴＡ）を開発する役割の専門家が直接実行することができるが、特定のソフトウェアの開発は、常に、高度に専門化されたプログラマによるコストのかかるコーディング作業を必要とする。
【００２７】
図２は、ＸＭＬジェネレータの「定義テーブル」の構造を示す。各テーブルは次のものを含む。
【００２８】
【表１】
2008541254.tif 000003
【００２９】
パラメータ（２１０）を利用するファイル定義（２００）は、適切なレコードセットを見つけるためにデータベースに適用される特定の照会の定義を含む。ファイル定義は、命令（２３０）を利用するテンプレート（２２０）を参照する。命令が、別のテンプレート（２２５）を呼び出すタイプのものであるときは、呼び出したテンプレート（２４０）にパラメータを渡さなければならない。
【００３０】
前述のテーブルで述べたＸＭＬ文書の要素と属性は、ＸＭＬ言語の不可欠な部分をなし、当業者に周知の概念である。一般に、ＸＭＬ文書は、<xxxElement>と</Element>の形の開始マーカと終了マーカによって囲まれた１つ以上の要素を含む。そして、各要素は、１つ以上の属性を有することができ、各属性は、テンプレート命令で指定される名前と値を有する。
【００３１】
図３は、前述した、「ＸＭＬジェネレータの定義テーブル」の一部分を構成する「ファイル定義」の内容に基づいてファイルを生成するプロセスを示す。
【００３２】
ファイル定義（３００）を開いた後で、この定義の各レコード（３１４）について、関連した「照会定義」があるかどうかを調べる（３２０）。「照会定義」がある場合（３２２）は、対応する照会を実行する。次に、データベースから取得した「レコードセット」を開く（３３０）。レコードセット内のレコードと同じ数のターゲットファイルを作成する（３６０）。レコードセット内の全てのレコードに対してスクロールを行う（３５０）。最後のレコードを処理したとき（３３４）、プロセスは、ファイル定義の次のレコードに進む（３７０）。
【００３３】
関連した照会定義があるかどうかを調べたとき（３２０）、答えが否定の場合（３２４）は、ファイル定義の次のレコードに進む前に１つのターゲットファイルを作成する（３８０）。レコードがなくなった場合、プロセスは完了する（３１２）。
【００３４】
図４に、「ターゲットファイル」作成段階（３８０）と、「ターゲットＸＭＬファイル」を作成するための類似の段階（３６０）を示す。
【００３５】
ターゲットファイルの作成は、まず最初に、ファイル名を作る段階（４００）を含む。前に示したように、複数のターゲットファイルを作成するために同じ「ファイル定義」が使用される場合、その名前は、次のものを連結して作られる。
−ファイル定義に由来するプレフィックス
−レコードセットの現行レコードに由来する動的部分
−ファイル定義に由来するサフィックス
【００３６】
しかしながら、前述のような関連した照会定義がない場合は、単一ファイルを作成しなければならない。その場合、プレフィックスとサフィックスだけが使用され、動的部分はない。
【００３７】
この後で、ＸＭＬ文書の構造を表わし且つ既に述べたウェブ標準化機構（Ｗ３Ｃ）から出されたＤＯＭ仕様（文書オブジェクトモデル）に準拠するオブジェクトの形でターゲットＸＭＬファイルを有効に作成する（４１０）。
【００３８】
ファイル定義内にルート要素が出現する場合（４２２）、ルート定義を作成する（４３０）。この後、ファイル定義内にパラメータがある場合（４４２）は、テンプレートに渡す（４４４）ためにそのパラメータを探す（４４０）。
【００３９】
テンプレート（４５０）（ルートテンプレート又は入れ子テンプレート（即ち、別のテンプレートによって呼び出さたもの））の処理は、図５に更に詳しく示されている。
【００４０】
呼び出しているテンプレート（又はファイル定義）によって定義されたパラメータは、呼び出されたテンプレートのパラメータと一致しなければならない。このために、パラメータの定義に基づいて一時的な「パラメータグループ」が構成される（５００）。これが行われたとき、「レコードセット」の現行レコードから適切な値が得られる。
【００４１】
段階（５００）は、図５の右側部分に詳しく示されている。各パラメータは、その名前（５０１）並びにパラメータによって定義されたフィールド（５０２）とによって見つけられる。フィールドの値は、「レコードセット」から取得され（５０３）、この値でパラメータの値を固定することができる（５０４）。このプロセスは、処理するパラメータがある限り（５０５）繰り返される（５０６）。
【００４２】
次に、呼び出されるテンプレートを見つける（５１０）。関連した「照会定義」のパラメータは、適切な「レコードセット」を取得するために（５２０）データベース上で実行する前に、呼び出しているテンプレートのパラメータと一致させなければならない。パラメータは、処理する命令がなくなるか（５６０）「レコードセット」内のレコードがなくなる（５５０）まで、「レコードセット」（５３０）内の各レコードと命令の各々に網羅的に適用される（５４０）。
【００４３】
図６は、命令処理段階をより詳細に示す。命令を実行するとき、システムは、現行要素の概念を維持する。この要素が、以下に述べる各命令のターゲットである。現行要素がない場合、テンプレートのルート要素、即ち最初の要素が使用される。
【００４４】
命令には、要素を作成する命令（６００）、属性を作成する命令（６１０）、要素を閉じる命令（６２０）、テンプレートを呼び出す命令（６３０）など、幾つかのタイプがある。最初の２つの場合は、最初に、現行の「レコードセット」に指定されたフィールドの値を取得する（６０２）必要がある。最後の場合は、最初に、呼び出されたテンプレートに渡すパラメータを取得する（６３２）必要がある。
【００４５】
従って、命令が、前述のように作られた名前の付いたＸＭＬ要素（６００）を作成しなければならない場合がある。次に、現行要素に新しい要素が割り当てられ（６０５）、従ってその現行要素は、新しい子要素の親になる。必要に応じて、新しい要素に値を挿入してもよく、その値は、「レコードセット」に指定されたフィールドに対応しなければならない。
【００４６】
命令が、属性（６１０）をＸＭＬ要素に割り当てなければならない場合がある。現行要素についての属性を作成する（６１５）。前述のように、必要に応じてこの属性に値を固定することができ、この値は、レコードセットの特定のフィールドに対応しなければならない。
【００４７】
命令が要素を閉じる場合があり（６２０）、これにより、現行要素の役割が親要素に割り当てなおされる（６２５）。
【００４８】
最後に、命令が、前に指定された名前でテンプレートを呼び出す場合のある（６３０）。呼び出されたテンプレートを処理するために（６３５）、現行テンプレートのレコードセットから呼び出されたテンプレートのレコードセットにパラメータが渡される。
【００４９】
図７は、関係データベースからターゲットＸＭＬファイルを生成するための本発明による方法を特定の例で示す。この例では、多国籍チームによって世界中で販売されているソフトウェア製品の開発環境の殆どでそうであるように、コードの専門用語は全て英語で定義されている。しかしながら、このことは、以下の説明の明確な理解を防げないはずである。必要であれば、用語が説明されるか又は一連の文字と数字であると容易に解釈され、これは特に重要でないが、明らかな記憶上の理由や実際的な理由のために用語に何らかの意味を付与しようと試みられている。
【００５０】
ＸＭＬファイルの作成は、既に説明した「ファイル定義」を開く段階（７００）で始まり、このファイル定義は、データベース内のテーブル（７０５）の形をとる。このテーブルに含まれる情報により、指定された名前（codesList_CAR.xml）を有し第１の空要素（codes_list）を含むＸＭＬファイルを作成することができる。この要素は現行要素になる。ファイル定義は、使用されたルートテンプレート（７１０）の名前を含む。
【００５１】
次に、前述のテンプレートを処理する（７２０）。第１の段階は、データベースに、テンプレート（CarCodesList）用に定義された照会（７２２）を実行して、対応するレコードセット（７３０）を取得することである。テンプレート（７１０）の命令は、この例では５個であり、得られるレコードセット内の各レコードに適用される。
【００５２】
最初に、前に作成した現行要素の子要素（リスト）を作成する（７２４）。この要素は次に現行要素になる。次に、テンプレート（７１０）の次の２つの命令（インデックス２及び３）が処理される。これらは、テンプレート内に指定されているフィールド名にそれぞれ対応する２つの属性（Name、Area）（７２６）を作成する働きをする。従って、ＸＭＬファイルの現行要素（リスト）（７２８）は、これらの属性を含む。
【００５３】
次の命令（テンプレート（７１０）のインデックス４）は、別のテンプレート（CodesListltem）を利用して、そのテンプレートのためにパラメータが定義される（７１５）。呼び出されたテンプレート（７４０）も、照会定義（CodesListltem）を有する。これにより、呼び出しているテンプレート（７１５）のパラメータがその呼び出しを有効に実行するためにフィールド（７４２）を見つけることを可能にした後、データベース内の対応するレコードセット（７５０）を取得できるようになる。
【００５４】
呼び出されたテンプレートは、ＸＭＬファイルの内容を豊かにするために前に既に説明したように処理される（７６０）。
【図面の簡単な説明】
【００５５】
【図１】本発明の全体的な実施方法を示す図である。
【図２】ＸＭＬジェネレータの定義テーブルの構造を示す図である。
【図３】ファイル定義の内容に基づくファイルの生成に関するプロセスを示す図である。
【図４】ターゲットＸＭＬファイルを作成する段階を示す図である。
【図５】テンプレートの処理を示す図である。
【図６】テンプレートの命令を示す図である。
【図７Ａ】本発明の例示的実施形態の図である。
【図７Ｂ】本発明の例示的実施形態の図である。
【符号の説明】
【００５６】
１００  ＶＩＳＴＡ
１０５  オブジェクト
１１０  ターゲットＴＭＬファイル
１２０  ＸＭＬジェネレータ
１３０  定義テーブル
１３５  照会（定義）
１４０  ソースデータベース（ＰＤ−ＤＢ）
【図１】
2008541254.tif 000004
【図２】
2008541254.tif 000005
【図３】
2008541254.tif 000006
【図４】
2008541254.tif 000007
【図５】
2008541254.tif 000008
【図６】
2008541254.tif 000009
【図７Ａ】
2008541254.tif 000010
【図７Ｂ】
2008541254.tif 000011
【国際調査報告】
2008541254.tif 000012
2008541254.tif 000013
2008541254.tif 000014
2008541254.tif 000015
2008541254.tif 000016
2008541254.tif 000017