[XML データ バインディング ウィザード]を使用する

提供: RAD Studio
移動先: 案内検索

XML ドキュメントでの作業:インデックス への移動

[XML データ バインディング ウィザード]を使用するには:

  1. [ファイル|新規作成|その他...]を選択し、[Delphi プロジェクト|XML]フォルダの右ペインから[XML データ バインディング]アイコンを選択します。
  2. [XML データ バインディング ウィザード]が表示されます。
  3. ウィザードの最初のページでは、インターフェイスの生成対象となる XML ドキュメントまたは XML スキーマを指定します。これは、サンプル XML ドキュメント、文書型定義(.dtd)ファイル、XML Data Reduced(.xdr)ファイル、XML スキーマ(.xsd)ファイルのいずれかです。
  4. [オプション]ボタンをクリックすると、インターフェイスや実装クラスの生成時にウィザードで使用される命名戦略と、スキーマに定義されている型から Delphi のネイティブ データ型へのデフォルト マッピングを指定できます。
  5. ウィザードの第 2 ページに進みます。このページでは、ドキュメントまたはスキーマに含まれているすべてのノード型に関する詳細な情報を指定できます。左側にあるのは、ドキュメントに含まれているすべてのノード型を表示するツリー ビューです。複合ノード(子を持つノード)の場合は、ツリー ビューを展開して子要素を表示することができます。このツリー ビュー内のノードを選択すると、ダイアログの右側にそのノードに関する情報が表示され、ウィザードでそのノードがどう扱われるかを指定できます。
    • [ソース名]コントロールには、XML スキーマ内のノード型の名前が表示されます。
    • [ソース データ型]コントロールには、ノードの値の型が XML スキーマでの指定どおりに表示されます。
    • [ドキュメントを作成]コントロールでは、ノードの使用法や目的を説明するコメントをスキーマに追加できます。
    • 選択したノードのコードがウィザードで生成される場合(つまり、複合型であり、それに対応してウィザードでインターフェイスや実装クラスが生成される場合や、複合型の子要素の 1 つであり、それに対応してウィザードでその複合型のインターフェイスにプロパティが生成される場合)は、[バインディングを生成]チェック ボックスを使用して、ノードのコードをウィザードで生成するかどうかを指定できます。[バインディングを生成]チェック ボックスをオフにした場合、ウィザードでは、複合型に対応するインターフェイスや実装クラスが生成されないか、子要素や属性に対応するプロパティが親インターフェイスに作成されません。
    • [バインディング オプション]セクションでは、選択した要素に対応してウィザードで生成されるコードを操作できます。どのようなノードについても、[識別子名](生成されるインターフェイスやプロパティの名前)を指定できます。さらに、インターフェイスについては、どれがドキュメントのルート ノードを表すかを指定する必要があります。プロパティを表すノードについては、プロパティの型を指定でき、プロパティがインターフェイスでない場合は、読み取り専用プロパティかどうかを指定できます。
  6. ノードごとにウィザードで生成するコードを指定したら、第 3 ページに進みます。このページでは、ウィザードによるコード生成についてのグローバル オプションをいくつか選択できるほか、生成されるコードをプレビューでき、選択した内容を後で使用できるように保存する方法をウィザードに指示できます。
    • ウィザードにより生成されるコードをプレビューするには、[バインドの一覧]リストでインターフェイスを選択し、結果として得られるインターフェイス定義を[生成コードのプレビュー]コントロールで確認します。
    • [データ バインディングの設定]セクションを使用すると、選択した内容がウィザードでどう保存されるかを指定できます。設定は、ドキュメントに関連付けられるスキーマ ファイル(ダイアログの第 1 ページで指定したスキーマ ファイル)に注釈として保存することができますし、ウィザードでのみ使用される別個のスキーマ ファイルを指定して保存することもできます。
  7. [完了]をクリックすると、XML ドキュメントに含まれているすべてのノード型のインターフェイスや実装クラスを定義した新しいユニットが[XML データ バインディング ウィザード]により生成されます。さらに、TXMLDocument オブジェクトを引数に取りデータ階層のルート ノードのインターフェイスを返すグローバル関数も作成されます。

関連項目